I'm working with Spring-ws annotated endpoints and I seem to have come across some peculiar behavior. When I wire everything together I can get the web service to deploy and respond exactly as I expect, as long as I don't reference the annotated endpoint's bean anywhere else in the application context.
For example, if my servlet-context looks like this then everything works fine.
However, if I add the following to that file everything falls apart and the endpoint no longer responds to messages.Code:<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <bean class="org.springframework.ws.server.endpoint.mapping.PayloadRootAnnotationMethodEndpointMapping"> <property name="order" value="1" /> </bean> <bean class="org.springframework.ws.server.endpoint.adapter.GenericMarshallingMethodEndpointAdapter"> <constructor-arg ref="marshaller" /> </bean> <!-- An @Endpoint-annotated endpoint. --> <bean id="annotatedUIQueryServiceEndpoint" class="org.cubrc.minds.uimanager.messaging.UIQueryService" /> <bean class="org.springframework.oxm.jaxb.Jaxb2Marshaller" name="marshaller"> <property name="contextPath" value="someContextPath"> </property> </bean> <bean id="UIQueryService" class="org.springframework.ws.wsdl.wsdl11.SimpleWsdl11Definition"> <property name="wsdl" value="/wsdl/UIQueryService.wsdl" /> </bean> </beans>
Instead I get an errorCode:<bean id="someBeanId" class="org.test.someClass"> <property name="someProperty" ><ref bean="annotatedUIQueryServiceEndpoint"/></property> </bean>
Code:18:49:30,283 ERROR [Log4jLoggerAdapter] WARN [http-0.0.0.0-8080-1] (MessageDispatcher.java:224) - No endpoint mapping found for [SaajSoapMessage {urn:us:mil:navy:onr:cid:service:query:UIQueryService}anomalyDetailId]


Reply With Quote