It may be too late for you, but you can use to translate the POJO back into XML
final Result marshallerResult = new StringResult(); marshaller.marshal(input, marshallerResult);
where marshaller is the one you used in wsTemplate .
<bean id="marshaller" class="org.springframework.oxm.jaxb.Jaxb2Marshaller"> <property name="contextPath" value="com.dhl.dctservice" /> </bean> <bean id="webServiceTemplate" class="org.springframework.ws.client.core.WebServiceTemplate"> <property name="marshaller" ref="marshaller" /> <property name="unmarshaller" ref="marshaller" /> </bean>
StringResult is an org.springframework.xml.transform package.
To generate POJOs from WSDL, I use the maven plugin
<plugin> <groupId>org.apache.cxf</groupId> <artifactId>cxf-codegen-plugin</artifactId> <version>${cxf-codegen-plugin.version}</version> <executions> <execution> <id>wsdl2java</id> <phase>manual-generate-sources</phase> <configuration> <wsdlOptions> <wsdlOption> <wsdl>${basedir}/src/main/resources/wsdl/service.wsdl</wsdl> <extraargs> <extraarg>-verbose</extraarg> <extraarg>-b</extraarg> <extraarg>${basedir}/src/main/resources/wsdl/bindings.xml</extraarg> <extraarg>-client</extraarg> <extraarg>-xjc-Xts</extraarg> </extraargs> </wsdlOption> </wsdlOptions> </configuration> <goals> <goal>wsdl2java</goal> </goals> </execution> </executions> <dependencies> <dependency> <groupId>org.codehaus.woodstox</groupId> <artifactId>stax2-api</artifactId> <version>3.1.1</version> </dependency> <dependency> <groupId>org.apache.cxf</groupId> <artifactId>cxf-xjc-ts</artifactId> <version>2.2.12</version> </dependency> <dependency> <groupId>org.jvnet.jaxb2_commons</groupId> <artifactId>jaxb2-basics-jaxb-xjc</artifactId> <version>2.1.13</version> </dependency> </dependencies> </plugin>
where is the binding.xml file
<jaxb:bindings version="2.1" xmlns:jaxb="http://java.sun.com/xml/ns/jaxb" xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc" xmlns:xs="http://www.w3.org/2001/XMLSchema"> <jaxb:globalBindings generateElementProperty="false"> <xjc:simple /> </jaxb:globalBindings> </jaxb:bindings>
source share