Announcement Announcement Module
No announcement yet.
Spring Web Services 1.5 Page Title Module
Move Remove Collapse
Conversation Detail Module
  • Filter
  • Time
  • Show
Clear All
new posts

  • Spring Web Services 1.5

    Now that version 1.0.2 is out, we are preparing for the next major release of Spring Web Services. Until quite recently, this version has been known as 1.1, but we have decided to change this to 1.5. This mostly has to do with the amount of new features that are planned:
    • Support for Spring 2.5. This includes support for @Endpoint component scanning, which means that you don't need to explicitly configure your @Endpoint endpoints in XML. Supporting Spring 2.5 means that we will drop support for the 1.2.x range.
    • Native support for JDK 1.6. Spring-WS works on 1.6, but the support can be improved. For instance, JDK 1.6 includes JAXP 1.4, which adds some nice new XML features, such as a native StAXSource and StAXResult. Supporting 1.6 means that we drop support for JDK 1.3: it is quite a hassle to support these older JDKs. Now if only Apple would release 1.6 already!
    • JMS and email transports on client and server. Just by configuring a couple of beans, you can add a JMS or email transport to your Web Service.
    • Client-side interceptors (and client-side WS-Security support!). Giovanni Cuccu has contributed code for this, and it will be incorporated in 1.5.
    • Spring namespace support. Configuring marshallers and endpoint adapters becomes a breeze:
          <oxm:jaxb2-marshaller id="contextPathMarshaller" contextPath="org.springframework.oxm.jaxb2"/>
              <sws:namespace prefix="sws" uri=""/>
    • WS-Addressing support. Supporting the August 2004 and May 2006 (final) version, this will allow you to put addressing information in your SOAP messages.
    • and more!

    Some of these features are already implemented in recent snapshots, and documented in the reference manual (though this new manual is not available on a web site). However, a lot remains to be done, and therefore we have decided to release 1.5 milestones. The first milestone can be expected just before the Spring Experience, beginning December. This M1 will include the new transports, the namespace support, and possibly more.

    After 1.5 M1 is out, we will release 1.0.3, to fix any outstanding bugs in the 1.0 branch.

    How you can help

    There are a couple of ways you can contribute to this effort:
    • Download a recent snapshot and try out the new functionality.
    • Go through the list of open JIRA issues and vote for issues you would like to see implemented. Voting for an issue is by far the easiest way to influence the future of Spring-WS. If you want something that's not there yet, create a new feature request. Or add a comment. Let yourself be heard!
    • Contribute code: if you see an open issue, and have an idea as to how to fix it, attach a patch to the issue.
    • Help each other out on this forum. Spring-WS is becoming quite popular, and therefore the amount of posts on this forum has exploded. So answer a question, it's good for your karma!

    I am looking forward to making Spring Web Services 1.5 a big success!


  • #2

    Arjen, does WS-Addressing support will cover service consumers?
    Does WS-Addressing support will be available to WebServiceTemplate users?


    • #3
      Yes, WS-Addressing will be client- and server-side.


      • #4
        would you provide a spring-ws package with its dependencies for version 1.5?



        • #5
          I suppose you mean a similar package as Spring itself has?

          That's an interesting suggestion, if you create an issue for it, I can take a look at it.


          • #6
            I'd vote for that issue, if created. It took me some time to gather all the jars, when I was trying to boot up my first "hello world" service. I'm past that issue now, but it could be of a great help for beginners.


            • #7
              I have created SWS-240 ( for this improvement, which has been fixed.

              From 1.5 upwards, I will distribute a -with-dependencies bundle.


              • #8
                Where can i find the documentation of the spring ws 1.5 .I need to implement the soap over jms, i had seen that it has been implemented in the 1.5 but i could found any documentation for it.


                • #9
                  1.5 is not out yet, a first milestone will be released around the 7th of December. In the meantime, you can use the (unsupported) snapshots, which do contain the JMS stuff. See
                  Last edited by Arjen Poutsma; Nov 24th, 2007, 08:47 AM.


                  • #10
                    Publishing the Jms Connection Details in WSDL

                    i had donwloaded the Snapshots and i am workin on sample implementation of soap over jmsWebService.While developing i had faced with following problems.

                    1.How can i publish the jms details like defaulturi(jms:RequestQueue)and the connectionurl (tcp://localhost:61616) in the wsdl using the DynamicWsdl11Definition
                    2.Can i access the jms message before sending it over the detination similarly on the service side can i access the jmsmessage before the endpoint is invoked.
           can i set the jms replyto property
           to provide the jms jndi related properties.
                    Last edited by vinay563; Nov 26th, 2007, 06:58 AM.


                    • #11
                      Originally posted by vinay563 View Post
                      1.How can i publish the jms details like defaulturi(jms:RequestQueue)and the connectionurl (tcp://localhost:61616) in the wsdl using the DynamicWsdl11Definition
                      You can set the locationUri in the XsdBasedSoap11Wsdl4jDefinitionBuilder. Just change it from a HTTP location to a jms location. Note that this could mean that you need to have multiple WSDLs, one for HTTP and one for JMS. You can't specify the connection url in there, because I think that is ActiveMQ-specific.

                      Originally posted by vinay563 View Post
                      2.Can i access the jms message before sending it over the detination similarly on the service side can i access the jmsmessage before the endpoint is invoked.
                      You currently can't. That might be a nice feature to add.

                      Originally posted by vinay563 View Post
             can i set the jms replyto property
                      You can define a replyToName in the jsm uri, i.e. jms:requestQueue?replyToName=responseQueue

                      Originally posted by vinay563 View Post
             to provide the jms jndi related properties.
                      You mean the connection factory name and others? These properties are not supported, since in spring you either don't use JNDI for getting a connectionfactory, or use <jee:jndi-lookup/> to inject a connectionfactory into the messagesender.

                      I hope you like the JMS support .


                      • #12
                        Is the current 1.5 snapshot supposed to be Spring 2.5 compatible?

                        I am not able to use Spring 2.5 with any version of Spring Web Services because the class MessageDispatcherServlet extends org.springframework.web.servlet.FrameworkServlet, which is not in Spring 2.5


                        • #13
                          Yes it is in spring, just not in spring.jar. It's a separate jar: spring-webmvc.jar


                          • #14
                            Is this means that it's actually not possible to use Spring-ws 1.0.2 with Spring 2.5 ?



                            • #15
                              No, it does not mean that. Spring-WS 1.0.2 and Spring 2.5 work together, but you have to put the spring-webmvc.jar on the classpath explicitly. The classes in this jar used to be part of spring.jar (the uberjar), but since 2.5, that's not the case any more.