Definition wsdlDef = wsdlDefMap.get(m.getDeclaringType().getPackage());
String prefix = wsdlNsPrefixMap.get(packageName);
if (wsdlDef != null && prefix != null){
if (wsdlDef.getTypes() == null)
wsdlDef.setTypes(WSDLFactory.eINSTANCE.createTypes());
PortType portType = typePortTypeMap.get(m.getDeclaringType());
javax.jws.WebMethod webMethodAnnotation = m.getAnnotation(javax.jws.WebMethod.class);
if (portType != null && webMethodAnnotation != null){
Operation operation = methodOperationMap.get(m);
if (operation == null) {
operation = WSDLFactory.eINSTANCE.createOperation();
if (!webMethodAnnotation.operationName().equals(""))
operationName = webMethodAnnotation.operationName();
operation.setName(operationName);
operation.setUndefined(false);
Input input = WSDLFactory.eINSTANCE.createInput();
operation.setInput(input);
Output output = WSDLFactory.eINSTANCE.createOutput();
operation.setOutput(output);
portType.addOperation(operation);
Message inputMessage = WSDLFactory.eINSTANCE.createMessage();
inputMessage.setQName(new QName(operation.getEnclosingDefinition().getTargetNamespace(), operationName));
inputMessage.setUndefined(false);
input.setMessage(inputMessage);
wsdlDef.addMessage(inputMessage);