Thanks Scott, I tried already, both in Servlet and JSP or in an ObjectFactory implemetation class, but got null ComponentFactory instance.
My test JSP: ------------------------------------------------------------------------------------ <%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ page import="javax.webbeans.Container" %> <%@ page import="com.caucho.webbeans.manager.WebBeansContainer" %> <%@ page import="javax.webbeans.ComponentFactory" %> <html> <head><title>Simple jsp page</title></head> <body> <% Container container = WebBeansContainer.create(); ComponentFactory factory = container.resolveByType(com.foo.bar.MyClass.class); out.print("my factory is " + factory); %> </body> </html> ------------------------------------------------------------------------------------ and com.foo.bar.MyClass was annotationed with @Component (or unneccesary?). The html output is: ------------------------------------------------------------------------------------ my factory is null ------------------------------------------------------------------------------------ Did I miss something or there should be some extra config work to do in resin-web.xml like ELSolver? ----- Original Message ----- From: "Scott Ferguson" <[EMAIL PROTECTED]> To: "General Discussion for the Resin application server" <resin-interest@caucho.com> Sent: Saturday, December 22, 2007 12:24 AM Subject: Re: [Resin-interest] How Resin/Ioc used for struts2/xwork2,need an ObjectFactory implementation > > On Dec 21, 2007, at 7:15 AM, wesley wrote: > >> To implement a com.opensymphony.xwork2.ObjectFactory, we should >> override >> method >> public Object buildBean(Class clazz, Map extraContext); >> and create/obtain a bean instance of specified bean class (provided >> by param >> "clazz"). >> >> I think I may get a WebBeansContainer instance as follow >> WebBeansContainer container = WebBeansContainer.create(); >> and then use it to create/obtain bean instance. > > You can treat it as: > > javax.webbeans.Container container = WebBeansContainer.create(); > > Then use > > javax.webbeans.ComponentFactory component = container.resolveByType > (clazz); > > And then > > return component.get(); > > (or component.create(); if you want to force a creation) > > The API piece of the webbeans draft spec/implementation is sketchy by > the way. So it's very likely the specifics will change in the next > version of Resin. In other words, it's fine as a temporary bridge > for things like structs2/xwork2. > > For example, the spec seems to define javax.webbeans.Component > instead of ComponentFactory, but that conflicts with the > @javax.webbeans.Component annotation. In other words, the spec > can't possibly be correct. > > The annotations and <bean>/<component> are solid. It's just the API > that's a bit of a mess. > > -- Scott >> >> How could I do this? >> >> ----- Original Message ----- >> From: "wesley" <[EMAIL PROTECTED]> >> To: "General Discussion for the Resin application server" >> <resin-interest@caucho.com> >> Sent: Friday, December 21, 2007 8:06 PM >> Subject: [Resin-interest] How Resin/Ioc used for struts2/ >> xwork2,need an >> ObjectFactory implementation >> >> >>> I'm using Struts2 in nearly every new projects these days, with >>> Guice as >>> the >>> IoC injector. >>> I want to switch to Resin's WebBeans implementation and Resin/IoC. >>> One of the main concerns is that I could not figure out how to >>> write a >>> ObjectFactory implementation using >>> Resin/IoC/WebBeans infrastucture, like Guice/Spring did. >>> >>> Could anyone provide me an example or some instructions/tips for >>> me to >>> follow? >>> Thanks very much. >>> >>> Wesley >> >> >> >> _______________________________________________ >> resin-interest mailing list >> resin-interest@caucho.com >> http://maillist.caucho.com/mailman/listinfo/resin-interest > > > > _______________________________________________ > resin-interest mailing list > resin-interest@caucho.com > http://maillist.caucho.com/mailman/listinfo/resin-interest > _______________________________________________ resin-interest mailing list resin-interest@caucho.com http://maillist.caucho.com/mailman/listinfo/resin-interest