Hi Florent,

I agree we should provide this overideable method for those case who can use object pool and the object class is decided on the fly.

Please fill a jira and waiting for your patch.

Thanks very much

Freeman

Florent BENOIT wrote:
   Hi,

I'm porting the EasyBeans/Celtix integration to EasyBeans/CXF (exposing an EJB3 as a webservice).

In Celtix, we had a getImplementorClass() method in the EndpointImpl class. This is not anymore the case in CXF for rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/EndpointImpl.java

The problem is that the implementor object that is given to the EndpointImpl class (in my case) has to be a class and not an instance (the instance will be obtained from a pool by using an our own Invoker on the service).

In the EndpointImpl class, there is the use of the following code:
JaxWsImplementorInfo implInfo = new JaxWsImplementorInfo(implementor.getClass()); List<Handler> chain = builder.buildHandlerChainFromClass(implementor.getClass(), endpointName);

I wanted to know if "implementor.getClass()" could be changed into getImplementorClass() method (with a protected access). Then, I can override this method by returning the class. For now, it returns MyClass.getClass() which return java.lang.Class and this is not what is wanted.

Then, I have to copy/paste code in my own Endpoint and this is not what is the better thing to do (for me :)

Let me know if you agree on this change, I can open an issue in JIRA by providing a patch.

Best Regards,

Florent




Reply via email to