Hi

Are you using a single CXFServlet declaration with the pattern such as
"/services/*"?
An expect the first service be available at /services/Service1Test and
the 2nd one at /services/Service2Test ?

Cheers, Sergey

On Thu, Feb 24, 2011 at 10:55 AM, Bertrand TROLARD
<[email protected]> wrote:
> Hi,
> I'm new to CXF.
>
> I try to use JAX-WS to and I want to have severals web-services with the
> same java class for the implementation.
> For these web-services, I want to use the same bean.
>
> Each web-service has more and more fontions, but every "client" can't have
> access to all fonctions (url dependant).
> I create inherited class to get a different @WebService annotation for each
> web-service.
> The bean will be the last derived class.
>
> @WebService(targetNamespace = "http://service2/";, endpointInterface =
> "my.class.Service2", portName = "Service2Port", serviceName =
> "Service2Service")
> class ServiceImpl2 extends ServiceImpl1 {
> }
>
> @WebService(targetNamespace = "http://service1/";, endpointInterface =
> "my.class.Service1", portName = "Service1Port", serviceName =
> "Service1Service")
> class Service1Impl implement Service1, Service2{
> }
>
> The cxf configuration file.
> <jaxws:endpoint xmlns:tns="http://service1/"; id="id_service1"
>        implementor="#commonBean"
>        endpointName="tns:Service1Port"
>        serviceName="tns:Service1" address="/Service1Test">
> </jaxws:endpoint>
>
> <jaxws:endpoint xmlns:tns="http://service2/"; id="id_service2"
>        implementor="#commonBean"
>        endpointName="tns:Service2Port"
>        serviceName="tns:Service2" address="/Service2Test">
> </jaxws:endpoint>
>
> <bean id="commonBean" class="my.class.Service2Impl" init-method="start" >
> ...
> </bean>
>
> But for each web-service I got the same WSDL wich is the Service2.wsdl.
>
>
> When I do that with XFire and it works fine. The service.xml file looks
> like:
>
> <service>
> <name>Service1</name>
> <serviceClass>my.interface.Service1</serviceClass>
> <scope>application</scope>
> <serviceBean>#commonBean</serviceBean>
> </service>
>
> <service>
> <name>Service2</name>
> <serviceClass>my.interface.Service2</serviceClass>
> <scope>application</scope>
> <serviceBean>#commonBean</serviceBean>
> </service>
>
> <bean id="commonBean" class="my.class.Service12Impl" init-method="start" >
> </bean>
>
>
> class Service12Impl implement Service1, Service2 {
>  ...
> }
>
>
> Is it possible to do the same with CXF ?
>
> Thank a lot,
>
> Bertrand
>

Reply via email to