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


Reply via email to