I really don't know enough about JNDI to answer this.   However,  there are 
two thoughts:

1) You could use a spring PropertyPlaceholder (google it) to put the URL's and 
such into a properties file that is different for local and production or 
similar.    The address would look like:
address="${my.service.url}"
or similar.   I don't know if the PropertyPlaceholder thing can pull props 
from JNDI.

2) Set it all programmatically:
URL is easy:
(BindingProvider)wsClient).getRequestContext().put(
    BindingProvider.ENDPOINT_ADDRESS, "http://.....";);

The conduit settings are documented at:

http://cxf.apache.org/docs/client-http-transport-including-ssl-support.html

See the section on "Using Java Code"

Dan


On Thu October 8 2009 5:36:12 am Jim Talbut wrote:
> Hi,
> 
> I have the following in my spring beans.xml
> <jaxws:client id="wsClient"
>                serviceClass="bib.bob.bab.InternalPortType"
>                address="http://172.28.5.234:8080/feed"; >
> </jaxws:client>
> 
> <http:conduit name="http://172.28.5.234:8080/services.php?s=vacancyfeed";>
>      <http:client ReceiveTimeout="1000" ConnectionTimeout="1000"
> Connection="Keep-Alive" />
> </http:conduit>
> 
> This means that I need to recompile and redeploy my war file in order
> to change the web service address.
> I would like to do this using JNDI so that I can deploy the same war
> to testing and live environments, but I can't work out how to do it.
> 
> Is there are way to set the URL (and conduit) from JNDI using spring?
> If not, how can I change the URL of the generated client from code?
> 
> Thanks.
> 
> ----------------------------------------------------------------
> This message was sent using IMP, the Internet Messaging Program.
> 

-- 
Daniel Kulp
[email protected]
http://www.dankulp.com/blog

Reply via email to