I did tried the fresh installation now and this is what I see now

***************************************************************************************************
16 Mar, 2010 1:45:05 PM org.apache.catalina.startup.HostConfig deployWAR
INFO: Deploying web application archive ejb-sample.war
context path = /ejb-sample
16 Mar, 2010 1:45:07 PM org.apache.catalina.startup.HostConfig deployWAR
SEVERE: Error deploying web application archive ejb-sample.war
java.lang.NoClassDefFoundError: Could not fully load class: org.apache.webbeans.servlet.WebBeansConfigurationListener
due to:Lorg/apache/webbeans/spi/ContainerLifecycle;
in classLoader:
org.apache.openejb.core.tempclassloa...@15ba1ef
   at org.apache.xbean.finder.ClassFinder.<init>(ClassFinder.java:177)
at org.apache.openejb.config.AnnotationDeployer$ProcessAnnotatedBeans.createInheritedClassFinder(AnnotationDeployer.java:3142) at org.apache.openejb.config.AnnotationDeployer$ProcessAnnotatedBeans.deploy(AnnotationDeployer.java:992) at org.apache.openejb.config.AnnotationDeployer.deploy(AnnotationDeployer.java:202) ***************************************************************************************************

I tried putting the owb specific spi jar inside the web application and was able to get rid of this error but got the other one related to openjpa related ones.
Could you/some one test the stuff and check if things work at you end?

-Vicky


Gurkan Erdogdu wrote:
Could you deploy using "mvn tomcat:deploy" at ejb-sample root?

2010/2/23 Vicky Kak <[email protected] <mailto:[email protected]>>

    Looks like changing the properties did the trick however there
    seems to be some other eissue due to missing dependency, here is
    what I see now

    
*******************************************************************************************************

    23 Feb, 2010 5:20:52 PM org.apache.catalina.startup.HostConfig
    deployWAR

    INFO: Deploying web application archive ejb-sample.war
    context path = /ejb-sample
    23 Feb, 2010 5:20:57 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 5:20:57 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.
    
*******************************************************************************************************


    -Vicky
    Gurkan Erdogdu wrote:

        I mean is that I have refactored our resource injection
        handling but we do not update our ejb samples. Currently in
        ejb-sample/pom.xml it defines resource-plugin but this is not
        required anymore.

        Moreover,
        ejb-samples/META-INF/openwebbeans/openwebbeans.properties must
        be updated to include ResourceInjectionService.(currently it
        use ResourceService!). After changing, re-try to deploy it
        using "mvn clean tomcat:deploy" command as explained in README.

        #use resource service
        
org.apache.webbeans.spi.ResourceInjectionService=org.apache.webbeans.ejb.resource.OpenEjbResourceInjectionService


        2010/2/23 Vicky Kak <[email protected]
        <mailto:[email protected]> <mailto:[email protected]
        <mailto:[email protected]>>>

           I am not sure what you mean here, I assume that you need to
        make
           some configurations in Tomat and deploy the sample application.
           Let me know once you perform the tests, I will meanwhile take a
           look at the tomcat logging details.

           -Vicky
           Gurkan Erdogdu wrote:

               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]
        <mailto:[email protected]>
               <mailto:[email protected]
        <mailto:[email protected]>> <mailto:[email protected]
        <mailto:[email protected]>

               <mailto:[email protected] <mailto:[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]>
               <mailto:[email protected] <mailto:[email protected]>>
                      <mailto:[email protected]
        <mailto:[email protected]>
               <mailto:[email protected]
        <mailto:[email protected]>>> <mailto:[email protected]
        <mailto:[email protected]>

               <mailto:[email protected] <mailto:[email protected]>>

                      <mailto:[email protected]
        <mailto:[email protected]> <mailto:[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





-- Gurkan Erdogdu
        http://gurkanerdogdu.blogspot.com





--
Gurkan Erdogdu
http://gurkanerdogdu.blogspot.com

Reply via email to