int i = transUrl.indexOf('?');
if (i > -1)
{
transUrl = transUrl.substring(0, i);
}
AxisMessageReceiver receiver = (AxisMessageReceiver)connector.lookupReceiver(transUrl);
if (receiver == null)
{
receiver = (AxisMessageReceiver)connector.lookupReceiver(messageContext.getTargetService());
}
if (receiver == null)
{
throw new AxisFault("Could not find Mule registered service: " + s);
}
if (!(receiver.getFlowConstruct() instanceof Service))
{
throw new IllegalArgumentException(
"Only the Service flow constuct is supported by the axis transport");
}
Service service = (Service) receiver.getFlowConstruct();
Class[] classes = AxisServiceProxy.getInterfacesForComponent(service);
return AxisServiceProxy.createProxy(receiver, true, classes);
}