OperationType opType = null;
BindingInfo bInfo = destination.getBindingInfo();
InterfaceInfo info = bInfo.getInterface();
EventDataReader reader = (EventDataReader) ContextUtils.getDataReader(message);
Exchange exchange = message.getExchange();
orb = (ORB)exchange.get(ORB.class);
if (corbaStaxObject != null) {
corbaStaxObject.setOrb(orb);
} else {
corbaStaxObject = new CorbaStaxObject(orb);
}
String opName = message.getExchange().get(String.class);
Iterator i = bInfo.getOperations().iterator();
BindingOperationInfo bopInfo = null;
while (i.hasNext()) {
bopInfo = (BindingOperationInfo)i.next();
if (bopInfo.getName().getLocalPart().equals(opName)) {
opType = bopInfo.getExtensor(OperationType.class);
opQName = bopInfo.getName();
break;
}
}
ServerRequest request = exchange.get(ServerRequest.class);
NVList list = prepareArguments(message, destination, info, opType, opQName);
request.arguments(list);
message.setList(list);
OperationInfo opInfo = processWrappedOperation(bopInfo, false);