Mar 31st, 2009, 07:23 AM
Programmatic xsd & wsdl generation
Hi, I'm working on a system that already have many services developed using Spring core. Now I want to publish some of them via web services. I'm trying to develop some automatic mechanism to do that, but I'm falling at the "automatic" generation of the xsd and wsdl.
I'm trying to generate the xsd with JaxB, but I don't want to use annotations because it would be too hard.
Does anyone know some framework or library that could help me?
Mar 31st, 2009, 08:12 AM
Can you describe more precisely the problems you're facing?
Mar 31st, 2009, 08:47 AM
Thanks for replying tareq, the problems I have are:
*.- Generation of xml schema from my java classes without annotating them. I've tried to do this with JaxB (the reference implementation) but I couldn't find the way to configure the generation without using annotations.
*.- Generation of wsdl from a service interface including the xml schema and configuring ws-addressing and ws-security. Is it possible using DefaultWsdl11Definition class?
*.- I want to develop some marshaller/unmarshaller that, respecting the generated xsd, translates xml to java and vice versa. I would like not using annotations or mapping files to relate xml to java classes.
I know that there is an eclipse plugin that using axis creates the wsdl and some other files but I don't know how this integrates with Spring.
Apr 1st, 2009, 05:06 AM
Spring-WS is a contract first framework. It does not expose automatically existing objects as web services.
For the xsd generation issue, you can infer the xsd from sample xml messages. Check out Trang, an open source tool that can do that.
As for the OXM framework, check out XStream, which does not need external configuration to marshall/unmarshall objects. It is also supported by Spring OXM.
Apr 1st, 2009, 07:10 AM
What do you think about the integration between Spring and Axis? and Spring-WS and Axis? Do you think it could be useful?