exchange.setInMessage(msg);
context.setCurrentMessage(msg);
}
// Create the handlerpipeline and invoke it
HandlerPipeline pipeline = new HandlerPipeline(context.getXFire().getInPhases());
pipeline.addHandlers(context.getXFire().getInHandlers());
pipeline.addHandlers(msg.getChannel().getTransport().getInHandlers());
pipeline.addHandlers(getInHandlers());
if (context.getService() != null)
{
pipeline.addHandlers(context.getService().getInHandlers());
context.setProperty(SERVICE_HANDLERS_REGISTERED, Boolean.TRUE);
}
context.setInPipeline(pipeline);
if (context.getFaultHandler() == null)
context.setFaultHandler(createFaultHandler());
try
{
pipeline.invoke(context);
// finishReadingMessage(msg, context);
}
catch (Exception e)
{
XFireFault fault = XFireFault.createFault(e);
context.setProperty(DefaultFaultHandler.EXCEPTION, fault);
pipeline.handleFault(fault, context);
try
{
context.getFaultHandler().invoke(context);
}