Hi, On Wed, Jul 6, 2011 at 4:42 AM, Ryan Zoerner <[email protected]> wrote: > Hi Sergey, > > I have tested @Stateless in CustomerService.java, from the http basic > example in jaxrs-samples. > > The annotation appears in the list in > ServerFactory.Service.ClassResourceInfos[].ResourceClass.annotations. > > Therefore, sf.setResourceClasses does not interfere with the annotation > being processed, but I had seen it > throw an exception before, for some unknown reason. > > The point that I was making before is that CXFEasyBeansInvoker is precisely > the difference between cxf-easybeans > and CXF-JAXWS-easybeans. Also, the jonas version, which was the second group > mentioned in the last "between" > statement, does the Invoker and InvokerFactory. The Invoker does not do > invoker it just extends jaxwsAbstractInvoker > and gets and releases resource. Perhaps, similar to RP. I think that there > is no RP in the Jonas model. The jonas model > keeps a factory field that is instantiated at construction time, in the > InvokerFactory. The invoker factory actually manages > the specific releasing of the pool gotten object. >
Custom InvokerFactory is RP for JAX-WS endpoints. How does the actual invocation is done in JAX-WS case ? You are saying Invoker does no do any invocations but it must. It does use InvokerFactory (RP). > So. Basically, I think that the InvokerFactory and Invoker from that model > can be refactored out into RP-- refactored partially. > Second, if the Invoker extends JAXRS Invoker, it would precisely be the > EasyBeans version of the Invoker, but with factory-pool > model, and with JAXRS instead of JAXWS. So, for starters, that is what I > would recommend to myself as doing next. Then, if it > needs to be adjusted (JAXRSInvoker) then that would be the other step. > Perhaps it will now be doing things that are not needed. > > Then, in order to create the EJBInstance, it would be nice to have some > create EJB Instance method, as described before, which > would take things like the web.xml file as params, and then create the > IDeployable, create the EJBInstance, and from that JContainer3, > create the appropriate factory, since the container already automatically > selects which factory to instantiate. That factory can either > sit in RP, which is where these methods might go, or possibly as some > EJBPackageCreationUtility class that is called by RP, or > perhaps, factory could be passed to InvokerFactory, but I think that because > JAX-RS, you might want to keep the RP model. > JAX-WS also uses RP model and it's called InvokerFactory I'm sorry I don't quite understand what are you saying above about IDeployable. IMHO, trying to create a solution will be futile without understanding how pieces fit together for CXF JAX-WS Easybeans solutions...I also think that our solution would involve providing a custom RP which will do exactly what InvokerFactory does, possibly overriding JAXRSInvoker somehow - only if providing RP alone won't be enough...But again, that is not enough in itself - you have to confirm it's working and thus you'll need to deploy JAX-RS endpoint with Easybeans and thus you need to understand how CXF JAX-WS Easybeans works thanks, Sergey > So, there is my synopsis on where the answer is, and if permission, I will > create the Invoker in the steps that I described here. > > Thanks again, > > Ryan > -- Sergey Beryozkin http://sberyozkin.blogspot.com Talend - http://www.talend.com
