[savara-commits] savara SVN: r72 - in tools/eclipse/trunk/plugins/org.jboss.savara.tools.wsdl/src/java/org/jboss/savara/tools/wsdl: soap and 1 other directory.

do-not-reply at jboss.org do-not-reply at jboss.org
Thu Nov 5 18:13:40 EST 2009


Author: objectiser
Date: 2009-11-05 18:13:40 -0500 (Thu, 05 Nov 2009)
New Revision: 72

Modified:
   tools/eclipse/trunk/plugins/org.jboss.savara.tools.wsdl/src/java/org/jboss/savara/tools/wsdl/WSDLBinding.java
   tools/eclipse/trunk/plugins/org.jboss.savara.tools.wsdl/src/java/org/jboss/savara/tools/wsdl/WSDLGenerator.java
   tools/eclipse/trunk/plugins/org.jboss.savara.tools.wsdl/src/java/org/jboss/savara/tools/wsdl/soap/SOAPRPCWSDLBinding.java
Log:
Create a default soap address entry in the wsdl service if using soap binding.

Modified: tools/eclipse/trunk/plugins/org.jboss.savara.tools.wsdl/src/java/org/jboss/savara/tools/wsdl/WSDLBinding.java
===================================================================
--- tools/eclipse/trunk/plugins/org.jboss.savara.tools.wsdl/src/java/org/jboss/savara/tools/wsdl/WSDLBinding.java	2009-10-31 19:03:06 UTC (rev 71)
+++ tools/eclipse/trunk/plugins/org.jboss.savara.tools.wsdl/src/java/org/jboss/savara/tools/wsdl/WSDLBinding.java	2009-11-05 23:13:40 UTC (rev 72)
@@ -78,4 +78,12 @@
 	 */
 	public void updateFault(javax.wsdl.Definition defn, javax.wsdl.BindingFault fault);
 	
+	/**
+	 * This method adds WSDL binding information to the fault.
+	 * 
+	 * @param defn The definition
+	 * @param port The port
+	 */
+	public void updatePort(javax.wsdl.Definition defn, javax.wsdl.Port port);
+	
 }

Modified: tools/eclipse/trunk/plugins/org.jboss.savara.tools.wsdl/src/java/org/jboss/savara/tools/wsdl/WSDLGenerator.java
===================================================================
--- tools/eclipse/trunk/plugins/org.jboss.savara.tools.wsdl/src/java/org/jboss/savara/tools/wsdl/WSDLGenerator.java	2009-10-31 19:03:06 UTC (rev 71)
+++ tools/eclipse/trunk/plugins/org.jboss.savara.tools.wsdl/src/java/org/jboss/savara/tools/wsdl/WSDLGenerator.java	2009-11-05 23:13:40 UTC (rev 72)
@@ -52,6 +52,11 @@
 			// Create definition for contract's target namespace
 			javax.wsdl.Definition main=getDefinition(ret, contract, contract.getNamespace(), wsdlBinding);
 			
+			// If no definition, then return
+			if (main == null) {
+				return(ret);
+			}
+			
 			// Create service
 			javax.wsdl.Service service=main.createService();
 			service.setQName(new javax.xml.namespace.QName(contract.getNamespace(),
@@ -76,6 +81,10 @@
 				port.setBinding(binding);
 				
 				service.addPort(port);
+				
+				if (wsdlBinding != null) {
+					wsdlBinding.updatePort(main, port);
+				}
 			}
 			
 		} catch(Exception e) {

Modified: tools/eclipse/trunk/plugins/org.jboss.savara.tools.wsdl/src/java/org/jboss/savara/tools/wsdl/soap/SOAPRPCWSDLBinding.java
===================================================================
--- tools/eclipse/trunk/plugins/org.jboss.savara.tools.wsdl/src/java/org/jboss/savara/tools/wsdl/soap/SOAPRPCWSDLBinding.java	2009-10-31 19:03:06 UTC (rev 71)
+++ tools/eclipse/trunk/plugins/org.jboss.savara.tools.wsdl/src/java/org/jboss/savara/tools/wsdl/soap/SOAPRPCWSDLBinding.java	2009-11-05 23:13:40 UTC (rev 72)
@@ -144,4 +144,23 @@
 		}
 	}
 	
+	/**
+	 * This method adds WSDL binding information to the fault.
+	 * 
+	 * @param defn The definition
+	 * @param port The port
+	 */
+	public void updatePort(javax.wsdl.Definition defn, javax.wsdl.Port port) {
+		try {
+			javax.wsdl.extensions.soap.SOAPAddress soap=(javax.wsdl.extensions.soap.SOAPAddress)
+				defn.getExtensionRegistry().createExtension(javax.wsdl.Port.class,
+							new javax.xml.namespace.QName("http://schemas.xmlsoap.org/wsdl/soap/", "address"));
+			soap.setLocationURI("http://localhost:8080/"+defn.getQName().getLocalPart()+"Service");
+			
+			port.addExtensibilityElement(soap);
+		} catch(Exception e) {
+			logger.error("Failed to add SOAP address to port", e);
+		}
+	}
+	
 }



More information about the savara-commits mailing list