Uploaded image for project: 'Spring Web Services'
  1. Spring Web Services
  2. SWS-840

I can't set transformSchemaLocation attribute in MessageDispatcherServlet class through web.xml file


    • Type: Bug
    • Status: Resolved
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: 2.1.3
    • Fix Version/s: 2.1.4
    • Component/s: Core, XML
    • Labels:


      In my Spring XML file I have a static-wsdl defined and in the WSDL I imported a XML Schema Definition with namespace and schemaLocation attributes.

      When I deploy my Web Application I want to the

       <soap:address location /> 


       <xs:import schemaLocation /> 

      in WSDL to be transformed to reflect the URI of the incoming HttpServletRequest.

      So to achieve this behavior in the web.xml file I have this configuration:


      The problem:

      When the application is deployed, the method 'initWsdlDefinitionHandlerAdapter' in class 'MessageDispatcherServlet' runs, but only the attribute


      in class 'WsdlDefinitionHandlerAdapter' is properly setted with the value passed through the

      <init-param />

      tag in the web.xml file, and the attribute


      is not. As can be seen in red in the code below:


      private void initWsdlDefinitionHandlerAdapter(ApplicationContext context) {
         try {
            try {
               wsdlDefinitionHandlerAdapter = context.getBean(getWsdlDefinitionHandlerAdapterBeanName(), WsdlDefinitionHandlerAdapter.class);
            } catch (NoSuchBeanDefinitionException ignored) {
                 wsdlDefinitionHandlerAdapter = new WsdlDefinitionHandlerAdapter();
         } catch (Exception ex) {
              throw new BeanInitializationException("Could not initialize WsdlDefinitionHandlerAdapter", ex);

      My solution was:

      Create in the Spring XML file a wsdlDefinitionHandlerAdapter bean and set the properties 'transformLocations' and 'transformSchemaLocations' with value true.

      <bean id="wsdlDefinitionHandlerAdapter" class="org.springframework.ws.transport.http.WsdlDefinitionHandlerAdapter">
      	<property name="transformSchemaLocations" value="true" />
          	<property name="transformLocations" value="true" />


        thiago gutenberg Thiago Gutenberg Carvalho da Costa created issue -
        arjen.poutsma Arjen Poutsma made changes -
        Field Original Value New Value
        Assignee Arjen Poutsma [ arjen.poutsma ]
        arjen.poutsma Arjen Poutsma made changes -
        Fix Version/s 2.1.4 [ 14119 ]
        arjen.poutsma Arjen Poutsma made changes -
        Status Open [ 1 ] In Progress [ 3 ]
        arjen.poutsma Arjen Poutsma made changes -
        Status In Progress [ 3 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Transition Time In Source Status Execution Times Last Executer Last Execution Date
        Open Open In Progress In Progress
        32d 9h 52m 1 Arjen Poutsma 19/Aug/13 4:00 AM
        In Progress In Progress Resolved Resolved
        17m 54s 1 Arjen Poutsma 19/Aug/13 4:18 AM


          • Assignee:
            arjen.poutsma Arjen Poutsma
            thiago gutenberg Thiago Gutenberg Carvalho da Costa
          • Votes:
            0 Vote for this issue
            1 Start watching this issue


            • Created: