Well, I'm not able to reproduce the jaxws:endpoint behavior you describe. I
updated a test to have:
<bean id="ServiceImpl" class="org.apache.cxf.cxf1332.Cxf1332Impl"/>
<jaxws:endpoint id="cxf1332" implementor="#ServiceImpl"
address="http://localhost:9000/Cxf1332" />
<bean id="ServiceFactory"
class="org.apache.cxf.jaxws.JaxWsServerFactoryBean">
<property name="serviceBean" ref="ServiceImpl" />
<property name="start" value="true" />
<property name="address" value="http://localhost:9001/Cxf1332"/>
</bean>
and then started the factory. I see:
INFO: Started selectchannelconnec...@localhost:9000
.....
INFO: Started selectchannelconnec...@localhost:9001
Now, I CAN reproduce your issue of the above then only being available on
localhost. However, I don't think this is any different than with 2.2.x?
I just ran the java_first_jaxws with 2.2.12 server and I get:
INFO: Started selectchannelconnec...@localhost:9000
and a netstat -an showed it only on localhost and trying to do a get on non-
localhost doesn't work.
Dan
On Wednesday 15 December 2010 8:24:46 am Jason Pell wrote:
> Hi,
>
> Prior to 2.3.0 this all worked fine...
>
> I have a mixture of java first web services I am deploying using both
> jaxws:endpoint and more directly using
> org.apache.cxf.jaxws.JaxWsServerFactoryBean
>
> When I use a jaxws:endpoint and specify an address of for example:
>
> http://localhost:9449/SomeService
>
> The service is available on ALL network interfaces because CXF seems
> to deploy it to 0.0.0.0. However when I manually construct a service
> using springs beans and JaxWsServerFactoryBean (a subset is included
> here):
>
> <bean id="ServiceFactory"
> class="org.apache.cxf.jaxws.JaxWsServerFactoryBean"> <property
> name="serviceBean" ref="ServiceImpl" />
> <property name="start" value="false" />
> <property name="http://localhost:9448/SomeOtherService">
> </bean>
>
> It only gets deployed to localhost.
>
> The logs from jetty are different too:
>
> org.eclipse.jetty.util.log - Started selectchannelconnec...@localhost:9448
> org.eclipse.jetty.util.log - Started [email protected]:9449
>
> Any ideas why this is so. At the moment I have modified my spring
> beans to specify
> <property name="http://0.0.0.0:9448/SomeOtherService">
>
> but its nasty, especially as the WSDL now contains this 0.0.0.0
> address which looks particularly nasty and causes real problems for
> those trying to load the WSDL into soapui on a remote server.
> Ideally the wsdl should contain the address of the network interface
> it was requested from.
>
> But if I can just get it so that it deploys to all network interfaces
> without me having to specify 0.0.0.0 in the address that would be
> ideal.
>
> I have reasons why I cannot use jaxws:endpoint so please don't suggest
> that :-) I just need to know what jaxws:endpoint is doing differently
> and replicate that in my spring contexts
>
> Thanks
> Jason
--
Daniel Kulp
[email protected]
http://dankulp.com/blog