while(keys.hasNext()){
String key = keys.next();
WsdlDefinitions wsdl = wsdls.get(key);
WsdlPortType portType = wsdl.getPortType(portTypeName);
if( null != portType){
WsdlPortTypeOperation wsdlOperation = portType.getOperation(operation);
WsdlMessagePart part = wsdl.getMessage(wsdlOperation.getInput().getMessage().getLocalPart()).parts().iterator().next();
XmlElement childElement = container.addElement(part.getElement().getLocalPart());
Iterator<GpelAssignCopy> copyItr = assign.copyOperations().iterator();
while(copyItr.hasNext()){
GpelAssignCopy copyItm = copyItr.next();
childElement.addElement(getElementName(copyItm.getTo().getQuery()));
if(messagePartName == null){
messagePartName = copyItm.getTo().xml().attributeValue(PART_STR);
}
}
break;
}
}
}else {
//reply
WsdlPortType portType = workflowWSDL.getPortType(portTypeName);
if( null != portType){
WsdlPortTypeOperation wsdlOperation = portType.getOperation(operation);
WsdlMessagePart part = workflowWSDL.getMessage(wsdlOperation.getOutput().getMessage().getLocalPart()).parts().iterator().next();
XmlElement childElement = container.addElement(part.getElement().getLocalPart());
Iterator<GpelAssignCopy> copyItr = assign.copyOperations().iterator();
while(copyItr.hasNext()){
GpelAssignCopy copyItm = copyItr.next();
childElement.addElement(getElementName(copyItm.getTo().getQuery()));