You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by M Ludlow <ml...@gil.com.au> on 2003/10/23 05:48:22 UTC

Dynamically setting the SOAP server.

I have an application which compiles using ant and uses the wsdl2java 
target to generate the classes required for communication to a service 
running remotely.  This works fine as there is token replacement done on 
the WSDL file to set the port and host name giving it a dynamic quality 
depending on where the service is deployed at the time.  The problem 
arises though because there is an installation target as well which 
installs the application on a machine and this installed version is 
distributed.  For the installation, the WSDL to java has been done and 
compiled into a jar meaning that no further changes can be made.  This 
means there is a hard coded path to a server which may not exist in the 
final destination for the application.  Is there currently, (or possibly 
in progress) a way to get the locator service to read from a 
configuration file or system properties at run time to get the server 
URL instead of using the WSDL hard coded path?  I am talking about the 
segment:

<service name="SomeService">
    <port name="PortName" binding="xxx:SomeBinding">
      <soap:address 
location="http://host:port/axis/services/SomeService"/> <!-- This is 
where the hard coding derives from -->
    </port>
  </service>

Thanks in advance.

-- 
Mark




Re: Dynamically setting the SOAP server.

Posted by M Ludlow <ml...@gil.com.au>.
Thanks for that.  I was actually doing that in the first place just 
didn't pick up on it till you told me.  The problem was that my token 
replaces weren't being done because the config file wasn't being 
replaced and so there were no tokens to replace.  Thanks.

>Hi,
>If I understand your problem correctly then this is a way.
>You can specify the locator with the method
>locator.getPoint(URLPortaddress).(if the service interface is Point).This
>would be better solution for you.
>
>Regards,
>Jeyakumaran
>
>
>  
>
>>I have an application which compiles using ant and uses the wsdl2java
>>target to generate the classes required for communication to a service
>>running remotely.  This works fine as there is token replacement done on
>> the WSDL file to set the port and host name giving it a dynamic quality
>> depending on where the service is deployed at the time.  The problem
>>arises though because there is an installation target as well which
>>installs the application on a machine and this installed version is
>>distributed.  For the installation, the WSDL to java has been done and
>>compiled into a jar meaning that no further changes can be made.  This
>>means there is a hard coded path to a server which may not exist in the
>>final destination for the application.  Is there currently, (or possibly
>> in progress) a way to get the locator service to read from a
>>configuration file or system properties at run time to get the server
>>URL instead of using the WSDL hard coded path?  I am talking about the
>>segment:
>>
>><service name="SomeService">
>>    <port name="PortName" binding="xxx:SomeBinding">
>>      <soap:address
>>location="http://host:port/axis/services/SomeService"/> <!-- This is
>>where the hard coding derives from -->
>>    </port>
>>  </service>
>>
>>Thanks in advance.
>>
>>--
>>Mark
>>
>>    
>>


-- 
Mark



Re: Dynamically setting the SOAP server.

Posted by Chandrasegaram Jeyakumaran <jk...@opensource.lk>.
Hi,
If I understand your problem correctly then this is a way.
You can specify the locator with the method
locator.getPoint(URLPortaddress).(if the service interface is Point).This
would be better solution for you.

Regards,
Jeyakumaran


> I have an application which compiles using ant and uses the wsdl2java
> target to generate the classes required for communication to a service
> running remotely.  This works fine as there is token replacement done on
>  the WSDL file to set the port and host name giving it a dynamic quality
>  depending on where the service is deployed at the time.  The problem
> arises though because there is an installation target as well which
> installs the application on a machine and this installed version is
> distributed.  For the installation, the WSDL to java has been done and
> compiled into a jar meaning that no further changes can be made.  This
> means there is a hard coded path to a server which may not exist in the
> final destination for the application.  Is there currently, (or possibly
>  in progress) a way to get the locator service to read from a
> configuration file or system properties at run time to get the server
> URL instead of using the WSDL hard coded path?  I am talking about the
> segment:
>
> <service name="SomeService">
>     <port name="PortName" binding="xxx:SomeBinding">
>       <soap:address
> location="http://host:port/axis/services/SomeService"/> <!-- This is
> where the hard coding derives from -->
>     </port>
>   </service>
>
> Thanks in advance.
>
> --
> Mark


Lanka Software Foundation
Promoting opensource in Srilanka