You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by di...@apache.org on 2004/10/15 18:34:13 UTC
cvs commit: ws-axis/java/src/org/apache/axis/wsdl/toJava JavaServiceImplWriter.java
dims 2004/10/15 09:34:13
Modified: java/src/org/apache/axis/wsdl/toJava
JavaServiceImplWriter.java
Log:
Fix for AXIS-1578 - Cannot customize configuration as wsdl2java generates serviceLocator classes without constructor
slightly modified version of patch from Ashutosh Shahi (ashutosh.shahi@gmail.com )
Revision Changes Path
1.40 +24 -0 ws-axis/java/src/org/apache/axis/wsdl/toJava/JavaServiceImplWriter.java
Index: JavaServiceImplWriter.java
===================================================================
RCS file: /home/cvs/ws-axis/java/src/org/apache/axis/wsdl/toJava/JavaServiceImplWriter.java,v
retrieving revision 1.39
retrieving revision 1.40
diff -u -r1.39 -r1.40
--- JavaServiceImplWriter.java 8 Jul 2004 15:12:08 -0000 1.39
+++ JavaServiceImplWriter.java 15 Oct 2004 16:34:13 -0000 1.40
@@ -105,6 +105,9 @@
Map portMap = service.getPorts();
Iterator portIterator = portMap.values().iterator();
+ //Write the constructor for <servicename>Locator
+ writeConstructors(pw);
+
// write a get method for each of the ports with a SOAP binding
while (portIterator.hasNext()) {
Port p = (Port) portIterator.next();
@@ -255,6 +258,27 @@
writeGetPorts(pw, sEntry.getQName().getNamespaceURI(), getPortPortXmlNames);
writeSetEndpointAddress(pw, getPortPortNames);
} // writeFileBody
+
+ /**
+ * write Constructors
+ *
+ * @param pw
+ */
+ protected void writeConstructors(PrintWriter pw) {
+ //Write the default constructor
+ pw.println();
+ pw.println(" public " + Utils.getJavaLocalName(sEntry.getName())
+ + "Locator() {");
+ pw.println(" }");
+ pw.println();
+
+ //Write a constructor that accepts an Engine Configuration
+ pw.println();
+ pw.println(" public " + Utils.getJavaLocalName(sEntry.getName())
+ + "Locator(org.apache.axis.EngineConfiguration config) {");
+ pw.println(" super(config);");
+ pw.println(" }");
+ }
/**
* Write the private address field for this port and the public getter for it.