private Object invokeInternal(Object obj, Map<String, Object> resContext) throws Exception
{
Object retObj = null;
BindingExt binding = (BindingExt)bindingProvider.getBinding();
String bindingID = binding.getBindingID();
if (bindingID.indexOf("soap") > 0)
{
// Init the handler chain
if (handlerResolver == null)
{
handlerResolver = new HandlerResolverImpl();
EndpointConfigMetaData ecmd = epMetaData.getEndpointConfigMetaData();
handlerResolver.initHandlerChain(ecmd, HandlerType.PRE, true);
handlerResolver.initHandlerChain(ecmd, HandlerType.ENDPOINT, true);
handlerResolver.initHandlerChain(ecmd, HandlerType.POST, true);
PortInfo portInfo = epMetaData.getPortInfo();
List<Handler> preChain = handlerResolver.getHandlerChain(portInfo, HandlerType.PRE);
List<Handler> epChain = handlerResolver.getHandlerChain(portInfo, HandlerType.ENDPOINT);
List<Handler> postChain = handlerResolver.getHandlerChain(portInfo, HandlerType.POST);
binding.setHandlerChain(preChain, HandlerType.PRE);
binding.setHandlerChain(epChain, HandlerType.ENDPOINT);
binding.setHandlerChain(postChain, HandlerType.POST);
}
retObj = invokeInternalSOAP(obj);
}
else