Hi

I experienced a problem in my configuration of a dynamic call to a service
where neither the service nor the transport had been pre-registered.

My problem was that I could not configure the service with my modified
engine config AND give the service a QName as the constructors do not allow
both and there are not the right setters to do it after instantiation.
Despite being able to set the engine configuration you cannot change the
internally used engine after construction.

My solution is to add extra constuctor (patch attached):

    Service(EngineConfiguration config, QName serviceName)

does this seem reasonable or have i missed something?

Tim
Index: Service.java
===================================================================
RCS file: /home/cvspublic/xml-axis/java/src/org/apache/axis/client/Service.java,v
retrieving revision 1.91
diff -u -r1.91 Service.java
--- Service.java        22 Apr 2003 19:34:04 -0000      1.91
+++ Service.java        5 Jun 2003 09:32:47 -0000
@@ -173,6 +173,19 @@
     }
 
     /**
+     * Constructs a new Service object as above, but also passing in
+     * the EngineConfiguration which should be used to set up the
+     * AxisClient.
+     * @param config           Engine configuration to use. 
+     * @param serviceName      Qualified name of the desired service
+     */
+    public Service(EngineConfiguration config, QName serviceName) {
+        this.serviceName = serviceName;
+        this.config = config;
+        engine = getAxisClient();
+    }
+
+    /**
      * Constructs a new Service object for the service in the WSDL document
      * pointed to by the wsdlDoc URL and serviceName parameters.
      *

Reply via email to