I want to give brief introduction about current implementation in
the view of integration points
Brief Summary About Current Situation
---------------------------------------------------------
Currently we bootstrap OpenWebBeans via ServletContextListener. It
supports following containers
- Java Web Containers like Jetty, Tomcat etc.
- Tomcat Embeddable OpenEJB Container
If developer wants to use OWB functionality in his application, it
has to configure its "web.xml" to include some OWB specific
classes. For EJB functionality, we use embeddable Tomcat OpenEJB
container. To use EJB functionality, developer must annotate their
EJB classes with OWB specific "Interceptor" class.
How OWB Boots Currently(From integration point of view)
-------------------------------------------------------
1* Web Container calls OWB specific context listener's "application
started" method
2* OWB container scans related classes from the artifacts (if META-
INF/beans.xml, or WEB-INF/beans.xml exists. beans.xml is a marker
for deployment)
3* If developer configures OWB to use EJB functionality, for each
scanned class, it asks OpenEJB to learn whether it is an EJB class
or not (Using EJB Plugin that is written accroding to the OpenEJB)
4* If it is an EJB class, it creates EJB bean and register it with
the OWB container otherwise if it is a Java EE defined Managed Bean
Class, it creates a "Managed Bean" and register it with the OWB
container.
Developer Responsibility to Use OWB
--------------------------------------------------------
1* Add servlet context listener to his web module's "web.xml"
2* Annotate EJB classes with OWB interceptor
3* Configure OWB container to use EJB functionality
4* Configure some OWB specific parameters (For example : if use JMS
injections, specify ConnectionFactory JNDI name)
Current Problems
-----------------------------------------------------
1* Currently we just support "WAR" module with embeddable EJB.
2* Developer requires to update WAR/EJB module metadata files to
use OWB.
3* Standalone EJB JAR,RAR, EAR not supported
4* Injections into "Managed Beans" class not well supported. (For
example : @Resource, @WebServiceRef, @EJB,
@PersistenceUnit,@PersistenceContext.)
How Could We Integrate with Geronimo
---------------------------------------------------------
1* Geronimo looks for deployment. If it contains "beans.xml", it
automatically registers OWB servlet context listener with WAR's
web.xml at deployment time
2* Automatically registers OWB EJB interceptor with EJBs at
deployment time (If module is EJB module or EAR module containing
EJB modules)
3* Support EJB JAR, EAR, RAR modules
4* Write EJB Plugin for Geronimo
5* Supports injections for Managed Beans
I hope this helps a bit more
Thanks;
--Gurkan
2009/8/20 Rick McGuire <[email protected]>
Gurkan Erdogdu wrote:
>>>We'd be interested in any details about what integration work
might be needed to add this to Geronimo.
It is a really fascinating thing that you support us to finish
implementation and pass TCK :) We really need a help.
I think there is a great willingness to help you with this, but I
was looking form something more specific, such as the actual areas/
functions where integration assistance is needed.
Rick
Thanks;
--Gurkan
2009/8/20 Rick McGuire <[email protected] <mailto:[email protected]>>
Gurkan Erdogdu wrote:
Hi;
Thanks for kicking discussion David.
As you may already know Java EE 6 will be planned to release
on November. Do you have any plan or roadmap to integrate
JSR-299 with Geronimo?
We have a tentative roadmap for implementing the Web Profile at:
http://cwiki.apache.org/confluence/display/GMOxDEV/Road+map+for+JEE6+Web+Profile
For the JEE6 plans, the web profile did not include JSR 299, which
I guess has changed recently. We'd be interested in any details
about what integration work might be needed to add this to
Geronimo.
Rick
We are working hard to implement full specification but it has
some parts that requires to integrate with Java EE server
tightly.
Thanks;
--Gurkan
2009/8/20 David Blevins <[email protected]
<mailto:[email protected]> <mailto:[email protected]
<mailto:[email protected]>>>
I've been talking with Gurkan of OpenWebBeans over on the
OpenEJB
list and it seemed like a good idea to kick the thread over
here
as well.
The long and short of it is that we'll need to scan 299
managed
beans at deploy time exactly as we do for JSF.
Wanted to point him at the JSF scanning code, but can't
remember
the details. Anyone remember? An svn link is fine.
-David
-- Gurkan Erdogdu
http://gurkanerdogdu.blogspot.com
--
Gurkan Erdogdu
http://gurkanerdogdu.blogspot.com
--
Gurkan Erdogdu
http://gurkanerdogdu.blogspot.com