cxf-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ivan <xhh...@gmail.com>
Subject Re: service location in WSDL generated by CXF
Date Sun, 02 Dec 2012 15:07:39 GMT
Well, I agree that, the accessing address for other ports may not correct
in some scenarios. While thinking the common usage in the Java EE
environment, we usually publish those endpoints in one web app, and the
target web app will be accessed in one host, which associated with web
connectors. So, I am thinking that this is a good idea, and maybe a flag
could be used to determine the behavior.

I added the similar function in Apache Geronimo, and think that it will be
better that CXF could provide kind of native support for this.
[1]
https://svn.apache.org/repos/asf/geronimo/server/branches/3.0/plugins/axis2/geronimo-axis2/src/main/java/org/apache/geronimo/axis2/WSDLQueryHandler.java

Thoughts ?

2012/11/29 Andrei Shakirin <ashakirin@talend.com>

> Proposed update of all services endpoints can be in some cases incorrect.
> The absolute endpoint URL can be determined only from incoming request. As
> far as you request InventoryService, not InventoryProvider; only
> InventoryService endpoint is updated.
> Imagine, you request InventoryProvider using other URL (for example
> http://127.0.0.1:9080/jaxws-wsdlfaults2/InventoryProvider, or even using
> other port) and InventoryProvider will have absolute URL different as
> InventoryService.
>
> Cheers,
> Andrei.
>
> > -----Original Message-----
> > From: Bin Zhu [mailto:luckyzhubin@gmail.com]
> > Sent: Dienstag, 27. November 2012 07:30
> > To: users@cxf.apache.org
> > Subject: service location in WSDL generated by CXF
> >
> > Hi All,
> > I find that when define 2 service using a SEI class and a Service
> provider class,
> > if query the service defined by SEI, then in the WSDL generated by CXF,
> it will
> > only update the service location for this SEI service, but the location
> defined
> > by service provider will not be updated.
> > Is this behavior as design? Could it update all the service location
> rather than
> > only the requested one? Thanks in advance.
> >
> > Service defined by SEI:
> > @WebService(targetNamespace="http://inventory.wsdlfaults.jaxws",
> >             wsdlLocation="WEB-INF/wsdl/Inventory.wsdl",
> >             serviceName="InventoryService",
> >             portName="InventoryPort",
> >
> > endpointInterface="jaxws.wsdlfaults.wsfvt.server.inventory.InventoryPortT
> > ype")
> > Service defined by Service Provider:
> > @WebServiceProvider(targetNamespace="http://inventory.wsdlfaults.jaxw
> > s",
> >                     wsdlLocation="WEB-INF/wsdl/Inventory.wsdl",
> >                     serviceName="InventoryProvider",
> >                     portName="InventoryProviderPort")
> >
> > WSDL generated by CXF using this URL:
> > http://localhost:9080/jaxws-wsdlfaults2/InventoryService?wsdl
> >
> > <service name="InventoryService">
> > <port binding="tns:InventoryBinding" name="InventoryPort">
> > <soap:address location="
> > http://localhost:9080/jaxws-wsdlfaults2/InventoryService
> "></soap:address>
> > </port>
> > </service>
> > <service name="InventoryProvider">
> > <port binding="tns:InventoryBinding" name="InventoryProviderPort">
> > <soap:address location="/InventoryProvider"></soap:address>
> > </port>
> > </service>
>



-- 
Ivan

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message