Yes that is it. But we do not try to run samples after changing some configurations therefore you could get some exceptions.
I will look at in the evening to run ejb samples. --Gurkan 2010/2/23 Vicky Kak <[email protected]> > Hi Gurkan, > > Thanks for the details. > I have been building the OWB from the trunk and followed the readme which > is based on M3, the M4 specific readme is not yet available. > > I did understand that we need the place the common jars specific to > jsr330/jsr299 in the $TOMCAT/lib and configure the openejb in tomcat. > After this we should be able to deploy the ejb-sample.war in the > $TOMCAT/webapps, pretty simple! > > Is there anything else I should look from configuration perspective? > > Here is what I see from the Tomcat console currently > > *********************************************************************************************** > > INFO: Deploying web application archive ejb-sample.war > context path = /ejb-sample > 23 Feb, 2010 3:41:09 PM org.apache.catalina.core.StandardContext start > SEVERE: Error listenerStart > 23 Feb, 2010 3:41:09 PM org.apache.catalina.core.StandardContext start > SEVERE: Context [/ejb-sample] startup failed due to previous errors > 23 Feb, 2010 3:41:09 PM org.apache.catalina.loader.WebappClassLoader > findResourceInternal > INFO: Illegal access: this web application instance has been stopped > already. Could not load org/apache/openjpa/util/ImplHelper.class. The > eventual following stack trace is caused by an error thrown for debugging > purposes as well as to attempt to terminate the thread which caused the > illegal access, and has no functional impact. > 23 Feb, 2010 3:41:09 PM org.apache.catalina.loader.WebappClassLoader > findResourceInternal > INFO: Illegal access: this web application instance has been stopped > already. Could not load org/apache/openjpa/util/ImplHelper$1.class. The > eventual following stack trace is caused by an error thrown for debugging > purposes as well as to attempt to terminate the thread which caused the > illegal access, and has no functional impact. > 23 Feb, 2010 3:41:09 PM org.apache.catalina.startup.HostConfig > deployDirectory > *********************************************************************************************** > > > Regards, > Vicky > Gurkan Erdogdu wrote: > >> Hello Vicky; >> >> Some configuration file names are changed. README_M3 is a little bit old >> with respect to openwebbeans.properties content. We have a plan to release >> M4 this week that it contains lots of bug fixes. Therefore instead of using >> M3 artifacts, until M4 releases, checkout source from SVN and build it >> yourself. >> >> >>> "atinject-api-1.0.0-incubating-M3.jar.... >> at-inject.(JSR-330 API).jar and cdi.jar (JSR-299 API) projects have moved >> to geronimo specs. You can download it from >> http://repo1.maven.org/maven2/org/apache/geronimo/specs/ manually or if >> you use "maven", you can define dependencies to them looking at pom content >> fro there. >> >> Locations : >> ---------------------------- >> >> http://repo1.maven.org/maven2/org/apache/geronimo/specs/geronimo-atinject_1.0_spec/ >> >> http://repo1.maven.org/maven2/org/apache/geronimo/specs/geronimo-jcdi_1.0_spec/ >> >> You have to add those jars into TOMCAT lib folder. >> >> >>>WEB-INF/lib, I don't understand what does this mean, it is not clear. >> It means that some of the libraries (jars) that OWB needs are not >> contained in Tomcat. You have to manually add those jars into your >> application WEB-INF/lib. For example, if you create a JSF application, add >> JSF jars into WEB-INF/lib with OWB JSF plugin. Another example is that OWB >> needes validator.jar. >> >> Generally you have to add implementation jar(webbeans-impl) and its >> dependencies to application WEB-INF/lib except atinject.jar and cdi.jar. >> webbeans-impl jar must be reside in WEB-INF/lib folder of the application, >> not in TOMCAT/lib folder. >> >> For Configuration: >> ------------------------ >> openwebbeans-default.properties does not use EJB meta-data discovery as >> default. To use EJB discovery you have to tweak some properties. Look at >> http://svn.apache.org/repos/asf/openwebbeans/trunk/samples/ejb-sample/src/main/resources/META-INF/openwebbeans/openwebbeans.properties >> . >> >> Moreover, README_M3 talked about resource plugin that was responsibe for >> injecting Java EE resources into bean (For example, EntityManager, >> DataSource etc.). There is no ResourcePlugin in current codebase. It has >> removed. Now, there is a ResourceInjectionService. You have to configure >> this service in openwebbeans.properties to use OpenEJB resource injection >> service instead of default. (Look at ejb-sample openwebbeans.properties). >> >> Currently OWB looks for META-INF/openwebbeans/openwebbeans.properties >> files to run over default configuration properties. If you have a JAR that >> is located in Tomcat LIB folder that contains >> META-INF/openwebbeans/openwebbeans.properties file, it is read by OWB. >> >> One more thing, OWB uses EJB interceptor (OpenWebBeansEJBInterceptor) to >> inject dependencies to EJB beans. Therefore your every session bean must >> have this interceptor. Again look at samples. >> >> Please look at ejb-sample application for current configuration. >> >> You can also join us on freenode channel on #IRC with #openwebbeans >> channel. >> >> Thanks; >> >> --Gurkan >> >> >> 2010/2/23 Vicky Kak <[email protected] <mailto:[email protected]>> >> >> >> Vicky Kak wrote: >> >> Hi Folks, >> >> I am in process of testing openwebbean with Tomcat/openejb, I >> did read the related section from the following docs >> >> https://svn.apache.org/repos/asf/openwebbeans/trunk/readme/README_M3.txt >> >> Here is the section which explains it >> >> >> ******************************************************************************************** >> >> EJB Support via Embeddable OpenEJB Container in Tomcat 6.X >> --------------------------------------------- >> >> Configuration Steps: >> -------------------------------------------- >> 1* Download Tomcat 6.X version >> 2* Configure OpenEJB. Look at URL >> http://openejb.apache.org/tomcat.html for installation. >> 3* Copy "atinject-api-1.0.0-incubating-M3.jar" to Tomcat /lib >> folder. >> 4* Copy "openwebbeans-api-1.0.0-incubating-M3.jar" >> 5* Look at ejb-sample.war for "WEB-INF/lib" libraries to >> develop custom application. >> You can also look at a source of the project. >> >> >> ******************************************************************************************** >> >> "atinject-api-1.0.0-incubating-M3.jar" does not get generated >> at atinject-tck location, I was expecting it to be there. It >> is not there, I did pull the CDI api jar and dropped it in the >> $TOMCAT_HOME/lib. >> >> "openwebbeans-api-1.0.0-incubating-M3.jar" should also be >> copied to the $TOMCAT/lib, this should be pointed in the >> instructions too. >> >> >>Look at ejb-sample.war for "WEB-INF/lib" libraries to >> develop custom application. >> I don't understand what does this mean, it is not clear. >> >> >> >> >> ******************************************************************************************** >> >> How to Develop EJB Applications >> --------------------------------------------- >> 1* Add "META-INF/openwebbeans.properties" into your >> application classpath. >> 2* Add >> >> "org.apache.webbeans.spi.deployer.UseEjbMetaDataDiscoveryService=true" >> to use EJB functionality. >> So OWB container looks for EJBs. >> 3* Add >> >> >> "org.apache.webbeans.resource.spi.ResourceService=org.apache.webbeans.spi.ee.openejb.resource.OpenEjbResourceServiceImpl" >> to >> use OpenEJB Resource injections. >> 4* Add "openwebbeans-ejb", "openwebbeans-resource" and >> "openwebbeans-geronimo" plugins into your web application >> classpath. >> It adds EJB, Resource and Open EJB Resource plugins into your >> application. >> 5* If you want to use other plugins, add respective plugins >> into your application classpath. For example, if you wish to use >> JSF framework, you add "openwebbeans-jsf" plugin. >> 6* Add OWB related interceptor into your EJB Beans. This is >> called >> "org.apache.webbeans.ejb.interceptor.OpenWebBeansEjbInterceptor" >> This is needed for OWB injections. >> 7* Update your application's "web.xml" to add OWB specific >> configuration. >> >> --------------------------------------------- >> >> >> ******************************************************************************************** >> >> >> Why can't we have this openwebbeans.properties as a part of >> the jars which we have dropped in $TOMCAT/lib, it is not good >> idea to configure the classpath for the Tomcat and then start. >> I see the default properties file being here >> >> https://svn.apache.org/repos/asf/openwebbeans/trunk/webbeans-impl/src/main/resources/META-INF/openwebbeans/openwebbeans-default.properties >> >> >> This does not contain the property values as mentioned in "How >> to Develop EJB Applications", I was thinking of taking the >> same file setting it to the Tomcat CP. >> >> I have been able to configure the openEJB for Tomcat and have >> not yet followed the instructions to set the >> META-INF/openwebbeans.properties and hence getting this error >> >> >> ******************************************************************************* >> >> context path = /ejb-sample >> 23 Feb, 2010 1:33:28 PM >> org.apache.catalina.core.StandardContext start >> SEVERE: Error listenerStart >> >> >> ******************************************************************************* >> >> >> Before digging more into the code and finding the details I >> would like to know more from the community. >> >> Regards, >> Vicky >> >> >> >> >> >> >> -- >> Gurkan Erdogdu >> http://gurkanerdogdu.blogspot.com >> > > -- Gurkan Erdogdu http://gurkanerdogdu.blogspot.com
