WSO2 SOAP Services in Spring & Grails
Groovy Grails, SpringSource March 31st, 2008
WSO2 announced:
WSO2 WSF/Spring 1.0 Brings New Functionality for Building Secure, Reliable Web Services within Spring and Grails
Colombo, Sri Lanka and Mountain View, CA – March 31, 2008 – WSO2, the open source SOA company, announced today the release of the WSO2 Web Services Framework for Spring 1.0. The WSO2 WSF/Spring open source framework integrates the popular Apache Axis2/Java Web services engine into the Spring Framework, giving Spring users full control of Axis2 from within the Spring configuration model. As a result, developers now have a full-featured Web services engine—with the security and reliable messaging required for a service-oriented architecture (SOA)—that fits into their Spring Framework and allows them to use any of their favorite Spring user interfaces. Additionally WSF/Spring 1.0 provides Axis2 users improved integration into Spring.
WSF/Spring 1.0 offers developers for the first time the flexibility to adopt either a “code-first” or “contract-first” approach to Web services creation using the open source Spring Framework. The existing Spring Web Services project within Spring supports Web services through the contract-first model where users start with XML schema and WSDL definitions of their service. WSF/Spring 1.0 complements this approach by adding code-first Web services support, in which users can start with existing Spring beans and offer them as Web services with just a simple Spring configuration.
In conjunction with its launch, WSF/Spring 1.0 is now being used as the basis for rapidly creating Web services within the Grails Web application framework based on the Groovy language. Because Grails uses Spring, WSF/Spring 1.0 fits perfectly within this framework as well.
“Expanding the reach of service-oriented architectures will require enterprises to embrace the range of popular Web application frameworks, such as Spring and Grails, that are widely in use today,” said Sanjiva Weerawarana, CEO of WSO2. “WSF/Spring contributes significantly to this heterogeneity by bringing the robust reliability and security that an enterprise SOA demands, along with the flexibility to adopt the Web services creation model that best suits a development team’s needs.”
WSF/Spring Features
The WSO2 Web Services Framework for Spring 1.0 is released under Apache License 2.0 and is based on the open source Apache Axis2/Java Web services engine, providing developers with a tested, proven platform for enterprise-class Web services that is ready to use. Key features of WSF/Spring 1.0 are:
- Support for the WS-* stack includes WS-Addressing, WS-Policy WS-Security, WS-SecurityPolicy, WS-ReliableMessaging, WS-Eventing, and SOAP Message Transmission Optimization Mechanism (MTOM).
- Inversion of Control (IOC) container support – WSF/Spring enables Spring services to be exposed through an IOC container. Additionally, it offers support for editing the Axis2 booting configuration through the IOC container.
- Automated WSDL generation via the Axis2/Java code generation tool lets developers generate code for both WSDL 1.1 and WSDL 2.0. Data binding is also available with Axis Data Binding (ADB).
- Querying service support – WSF/Spring supports a querying service’s WSDL via “?wsdl”, schema with “?xsd”, and policies with “?policy”.
- Method exclusion in Spring beans – Going beyond just exposing Spring beans, WSF/Spring allows developers to have fine-grained control over which methods get exposed as Web service operations.
Spring and Grails Communities Support WSF/Spring
“The Spring integration provided by the WSF/Spring 1.0 release is a big improvement for anyone building Axis2 Web services with Spring,” said Adrian Colyer, CTO of SpringSource Global, Inc. “We see it as complementary to the contract-first approach supported by Spring Web Services.”
“Apache Axis2 for Spring provides a key integration enabler for users of the Spring stack looking to provide SOAP services to their clients. Since Grails is built from the ground up on the Spring Framework, the Grails community has been able to leverage Axis2 for Spring to provide seamless integration between Grails and Axis2 via the Axis2 for Grails plug-in,” said Graeme Rocher, CTO of G2One Inc. “The Axis2 for Grails plug-in would have been a lot trickier had it not been for WSO2’s efforts in providing Axis2 for Spring integration through WSF/Spring. Exposing a SOAP service in Grails can now be done with just one line of code with Axis2 for Spring.” (To access the plug-in, visit: http://grails.org/Apache+Axis2+Plugin.)
Availability and Support
The WSO2 Web Services Framework for Spring is available for download today. As a fully open source solution released under the Apache License 2.0, the WSF/Spring 1.0 does not carry any software licensing or subscription fees. WSO2 offers a range of service and support options to support these solutions. These include training, consulting, custom development, and sponsorship of open source feature development, development support and production support. For information on service and support packages, visit http://wso2.com. Additionally, the WSO2 Oxygen Tank (http://wso2.org) is an open developer portal that provides in-depth product information, tutorials, tools, forums, wikis and more.
Tags: Groovy Grails, SpringSource

Paul Krill at InfoWorld
About
–
Graeme Rocher
CTO
G2One Inc
First off, Guillaume or anybody else didn’t really have an “great vision” about creating Grails with the aim of creating a company around it. There was a post on a mailing list which got me working on the project because I had a genuine technical need for such a framework at the company I was working at at the time. There was no premeditated plan to create a company at this point.
Guillaume’s vision came in keeping the Groovy project alive which he has done superbly. Also, the Groovy team didn’t “put a MOP into Groovy” in order to create Grails.
Groovy already had a MOP long before Grails started otherwise Grails wouldn’t have been technically possible. What Grails did is contribute a nicer interface to the MOP with ExpandoMetaClass.
When Grails became very popular and helped further drive Groovy’s popularity it was a pleasant surprise to all of us and justification that what we were doing was right. The fact that an investor offered to get involved came as a huge surprise to us all and has enabled G2One Inc to be born.
G2One Inc now provids multiple full time resources to both the Groovy and the Grails projects, which has resulted in Groovy getting stronger, but there has never been a case where the Grails project dictates where Groovy goes. Guillaume is too strong minded for that!
Finally, I’m not sure where you’re getting your information from, but there have never been any plans to rename Groovy. We even named the company G(Groovy+Grails)One Inc after the names of the projects it would make little sense to rename them now.
Groovy is a great dynamic language that got me interested in programming after a few years out of it, although I was initially attracted to it because of its groovy name. I’m certainly benefiting from the great work Guillaume, you, Jochen, and all the developers are putting into it, and hope to get more involved myself in the future as I increase in skills. Thought it looks like I’ve inferred some incorrect cause-and-effect on the developers’ intentions from my years reading the Groovy mailing lists.
I’ll continue with my vision to make Groovy appealing to newbies to the Java platform: a groovy technology with a groovy name.