I could see binding to 0.0.0.0 automatically as a security issue I guess? Sent from my iPhone
On Dec 17, 2010, at 7:20, Daniel Kulp <[email protected]> wrote: > On Thursday 16 December 2010 3:04:52 pm Jason Pell wrote: >> So your tests if I understand it - none of the services are available on >> any network interface except the local loop back? > > That's what I'm seeing with both 2.2.12 and 2.3.1 (and trunk) if the address > is set to http://localhost:8080. > >> So should I be using two endpoints for each service - one for localhost and >> one for the external network interface > > Look like it, yea. > >> My current behavior of jaxws:endpoint being deployed to 0.0.0.0 is >> unexpected? > > Well, to be honest, I had THOUGHT that that deploying to 0.0.0.0 was the > default behavior unless a spring config configured the port to ONLY go on a > certain host. I'm not sure why it's NOT doing that, but it doesn't seem to > be for me with 2.2.12 so it doesn't seem to be a "regression", but I'm also > not sure if its working as designed. I could actually go either way with > it. :-) > > Dan > > >> >> Sent from my iPhone >> >> On Dec 17, 2010, at 5:57, Daniel Kulp <[email protected]> wrote: >>> 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
