You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by di...@apache.org on 2006/10/24 17:51:53 UTC
svn commit: r467365 -
/webservices/axis2/branches/java/1_1/modules/kernel/src/org/apache/axis2/description/WSDL11ToAxisServiceBuilder.java
Author: dims
Date: Tue Oct 24 08:51:53 2006
New Revision: 467365
URL: http://svn.apache.org/viewvc?view=rev&rev=467365
Log:
Fix for AXIS2-1470 - wsdl2java fails to generate code complex wsdl files
Modified:
webservices/axis2/branches/java/1_1/modules/kernel/src/org/apache/axis2/description/WSDL11ToAxisServiceBuilder.java
Modified: webservices/axis2/branches/java/1_1/modules/kernel/src/org/apache/axis2/description/WSDL11ToAxisServiceBuilder.java
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/1_1/modules/kernel/src/org/apache/axis2/description/WSDL11ToAxisServiceBuilder.java?view=diff&rev=467365&r1=467364&r2=467365
==============================================================================
--- webservices/axis2/branches/java/1_1/modules/kernel/src/org/apache/axis2/description/WSDL11ToAxisServiceBuilder.java (original)
+++ webservices/axis2/branches/java/1_1/modules/kernel/src/org/apache/axis2/description/WSDL11ToAxisServiceBuilder.java Tue Oct 24 08:51:53 2006
@@ -363,7 +363,10 @@
if (port != null) {
copyExtensibleElements(port.getExtensibilityElements(), dif,
axisService, PORT);
- binding = port.getBinding();
+ binding = dif.getBinding(port.getBinding().getQName());
+ if(binding == null) {
+ binding = port.getBinding();
+ }
}
} else {
log.info("A service element was not found - "
@@ -421,8 +424,8 @@
copyExtensibleElements(binding.getExtensibilityElements(), dif,
axisService, BINDING);
- PortType portType = binding.getPortType();
- processPortType(dif.getPortType(portType.getQName()), dif);
+ PortType portType = dif.getPortType(binding.getPortType().getQName());
+ processPortType(portType, dif);
// String portTypeNs = portType.getQName().getNamespaceURI();
List list = binding.getBindingOperations();
@@ -455,8 +458,9 @@
.getBindingOutput();
Map bindingFaultsMap = wsdl4jBindingOperation
.getBindingFaults();
- Operation wsdl4jOperation = wsdl4jBindingOperation
- .getOperation();
+
+ Operation wsdl4jOperation = findOperation(portType, wsdl4jBindingOperation);
+
String MEP = operation.getMessageExchangePattern();
/* Process the binding inputs */
@@ -525,6 +529,21 @@
}
}
+ }
+
+ private Operation findOperation(PortType portType, BindingOperation wsdl4jBindingOperation) {
+ Operation op = wsdl4jBindingOperation
+ .getOperation();
+ String input = op.getInput().getName();
+ String output = op.getOutput().getName();
+ if(":none".equals(input)) {
+ input = null;
+ }
+ if(":none".equals(output)) {
+ output = null;
+ }
+ Operation op2 = portType.getOperation(op.getName(), input, output);
+ return ((op2 == null) ? op : op2);
}
/**
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org