Description of problem: When multiple SOAPProcessors are used in a action processing pipeline, the second call will send an invalid 'Content-type' header, which will cause the second wrapper webservice to fail with the following message: 2012-06-01 16:37:26,453 ERROR [org.jboss.ws.core.jaxws.SOAPFaultHelperJAXWS] (pool-88-thread-1) SOAP request exception javax.xml.soap.SOAPException: Could not parse content type:javax.mail.internet.ParseException: Expected '/', got @ at org.jboss.ws.core.soap.MessageFactoryImpl.getContentType(MessageFactoryImpl.java:318) at org.jboss.ws.core.soap.MessageFactoryImpl.createMessage(MessageFactoryImpl.java:212) at org.jboss.ws.core.soap.MessageFactoryImpl.createMessage(MessageFactoryImpl.java:193) at org.jboss.wsf.stack.jbws.RequestHandlerImpl.processRequest(RequestHandlerImpl.java:451) at org.jboss.wsf.stack.jbws.RequestHandlerImpl.handleRequest(RequestHandlerImpl.java:294) at org.jboss.wsf.stack.jbws.RequestHandlerImpl.doPost(RequestHandlerImpl.java:203) at org.jboss.wsf.stack.jbws.RequestHandlerImpl.handleHttpRequest(RequestHandlerImpl.java:129) at org.jboss.soa.esb.actions.soap.SOAPProcessor.process(SOAPProcessor.java:212) at org.jboss.soa.esb.listeners.message.ActionProcessingPipeline.processPipeline(ActionProcessingPipeline.java:649) at org.jboss.soa.esb.listeners.message.ActionProcessingPipeline.processPipeline(ActionProcessingPipeline.java:603) at org.jboss.soa.esb.listeners.message.ActionProcessingPipeline.process(ActionProcessingPipeline.java:433) at org.jboss.soa.esb.listeners.message.MessageAwareListener$TransactionalRunner.run(MessageAwareListener.java:550) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662) Version-Release number of selected component (if applicable): 4.10 How reproducible: Run attached Example Steps to Reproduce: 1. Copy the attached project into the $SOA_HOME/samples/quickstarts directory 2. Deploy it by running 'ant deploy' 3. Test it by running 'ant runtest' 4. Obverse the error in the logs. Actual results: Exception above Expected results: Second call doesn't thrown an exception. Additional info: Workaround Exists: Put in a custom action before the second SOAPProcessor, that removed the 'Content-type' header. <action class="com.test.util.StripContentTypeProperty" name="StripContentTypeProperty" process="stripProperties"/> ---------------------- package com.test.util; import org.jboss.soa.esb.message.Message; import org.jboss.soa.esb.actions.annotation.Process; /** Strips the "ContentType" property from the JBoss ESB message properties list. */ public class StripContentTypeProperty { /** Strips the "ContentType" property from the JBoss ESB message properties list. @param message (required) The ESB message @return The ESB message */ @Process public Message stripProperties(Message message) { message.getProperties().remove("Content-Type"); return message; } }