Announcement Announcement Module
Collapse
No announcement yet.
Annotated Endpoints Page Title Module
Move Remove Collapse
X
Conversation Detail Module
Collapse
  • Filter
  • Time
  • Show
Clear All
new posts

  • Annotated Endpoints

    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.
    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>
    However, if I add the following to that file everything falls apart and the endpoint no longer responds to messages.
    Code:
      <bean id="someBeanId" class="org.test.someClass">
        <property name="someProperty" ><ref bean="annotatedUIQueryServiceEndpoint"/></property>
      </bean>
    Instead I get an error
    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]

  • #2
    Can you attach a sample to demonstrate the issue please?

    Comment


    • #3
      I tried to reproduce the problem in an isolated environment, but cannot seem to do so. I'm forced to recant my initial assertion, stating that it had to do with being referenced by another bean, and instead assert that it has something to do with being referenced by a message interceptor.

      I appreciate your help so far, and will try to put together a sandbox for you some time tomorrow. In the mean time, take care and thank you.

      -Duane

      Comment


      • #4
        Ok thanks. Let me know if you find something.

        Comment

        Working...
        X