Show Table of Contents
11.8. Serializing Messages
- To split and route fragments of a message, use the basic frag:serialize and *:router components (jms:router, file:router and so on) from the Routing Cartridge. The frag:serialize component has its own configuration in the http://www.milyn.org/xsd/smooks/fragment-routing-1.2.xsd namespace.
- Use the example below for serializing the contents of a SOAP message body and storing it in the bean context under the beanId of soapBody:
<?xml version="1.0"?> <smooks-resource-list xmlns="http://www.milyn.org/xsd/smooks-1.1.xsd" xmlns:frag="http://www.milyn.org/xsd/smooks/fragment-routing-1.2.xsd"> <frag:serialize fragment="Envelope/Body" bindTo="soapBody" childContentOnly="true"/> </smooks-resource-list> - Use this code to execute it:
Smooks smooks = new Smooks(configStream); JavaResult javaResult = new JavaResult(); smooks.filterSource(new StreamSource(soapMessageStream), javaResult); String bodyContent = javaResult.getBean("soapBody").toString().trim(); - To do this programatically, use this code:
Smooks smooks = new Smooks(); smooks.addVisitor(new FragmentSerializer().setBindTo("soapBody"), "Envelope/Body"); JavaResult javaResult = new JavaResult(); smooks.filterSource(new StreamSource(soapMessageStream), javaResult); String bodyContent = javaResult.getBean("soapBody").toString().trim();

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.