You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cxf.apache.org by tog <gu...@gmail.com> on 2008/02/04 08:53:51 UTC

Re: CXFServlet

Thanks
>
> With the spring version, you would just use the normal Spring config to
> acomplish the same thing.
> http://cwiki.apache.org/confluence/display/CXF20DOC/Aegis+Databinding
>
For some reason I cannot use the spring config, therefore I understand
that I have to
override loadbus.

Having define a service factory (the reflectionServiceFactoryBean in
my case), I am still wondering how to
get from that stage to the  publication of an Endpoint ?

Thanks
Guillaume

Re: CXFServlet

Posted by tog <gu...@gmail.com>.
Thanks Willem,
This is a super tuesday, it works ;-)

Cheers
Guillaume

Re: CXFServlet

Posted by Willem Jiang <wi...@gmail.com>.
Hi Guillaume,

You could take a look at the CXFNonSpringServlet[1] for loading the bus 
without spring library.
Now you just need to read the endpoint information for XML or some where.
Here is an example [you could also set the WSDL url, service and port 
name as you like]:

    public void buildEndpoint( Node node) throws ServletException {
        Element el = (Element)node;
        String implName = el.getAttribute("implementation");     
        String urlPat = el.getAttribute("url-pattern");
        buildEndpoint(implName,  urlPat);
    }

    public void buildEndpoint(String implName, String urlPat) throws 
ServletException {

        try {

            Class cls = ClassLoaderUtils.loadClass(implName, 
getClass());          

      ServerFactoryBean sf = new ServerFactoryBean();
      sf.setBus(this.getBus());
      sf.setServiceClass(serviceClass);
      sf.setAddress("urlpat");
      sf.getServiceFactory().setDataBinding(new AegisDatabinding());
      sf.create();

        } catch (Exception ex) {
            throw new ServletException(ex);
        }
    }


[1]https://svn.apache.org/repos/asf/incubator/cxf/trunk/rt/transports/http/src/main/java/org/apache/cxf/transport/servlet/CXFNonSpringServlet.java

Willem.

tog wrote:
> Thanks
>   
>> With the spring version, you would just use the normal Spring config to
>> acomplish the same thing.
>> http://cwiki.apache.org/confluence/display/CXF20DOC/Aegis+Databinding
>>
>>     
> For some reason I cannot use the spring config, therefore I understand
> that I have to
> override loadbus.
>
> Having define a service factory (the reflectionServiceFactoryBean in
> my case), I am still wondering how to
> get from that stage to the  publication of an Endpoint ?
>
> Thanks
> Guillaume
>
>