Hey Jacek... I tried the steps and after I installed the mentioned bundles I got this BundleException
org.osgi.framework.BundleException: Unresolved constraint in bundle org.apache.openejb.core [6]: package; (package=javax.jws) my ps execution is -> ps START LEVEL 1 ID State Level Name [ 0] [Active ] [ 0] System Bundle (2.0.1) [ 1] [Active ] [ 1] Apache Felix Bundle Repository (1.4.2) [ 2] [Active ] [ 1] Apache Felix Shell Service (1.4.1) [ 3] [Active ] [ 1] Apache Felix Shell TUI (1.4.1) [ 6] [Installed ] [ 1] Apache OpenEJB :: Container :: Core (3.1.2.SNAPSHOT) [ 7] [Installed ] [ 1] geronimo-annotation_1.0_spec (1.1.1) [ 8] [Installed ] [ 1] geronimo-ejb_3.0_spec (1.0.1) [ 9] [Installed ] [ 1] geronimo-jta_1.1_spec (1.1.1) [ 10] [Installed ] [ 1] geronimo-interceptor_3.0_spec (1.0.1) [ 11] [Installed ] [ 1] geronimo-javamail_1.4_spec (1.6) [ 12] [Installed ] [ 1] geronimo-j2ee-management_1.1_spec (1.0.1) [ 13] [Installed ] [ 1] geronimo-jpa_3.0_spec (1.1.1) [ 14] [Installed ] [ 1] geronimo-j2ee-connector_1.5_spec (2.0.0) [ 15] [Installed ] [ 1] J2EE JACC 1.1 (1.0.2) [ 16] [Installed ] [ 1] Apache ServiceMix Bundles: wsdl4j-1.6.1 (1.6.1.1) [ 17] [Installed ] [ 1] pluginName (1.0.0.v20080604-1500) [ 18] [Installed ] [ 1] Apache Jakarta Commons Lang (2.4.0.v20081016-1030) [ 19] [Installed ] [ 1] Apache Commons Logging Plug-in (1.1.1.v200904062255) [ 20] [Installed ] [ 1] Geronimo TxManager :: Connector (2.1.3) [ 21] [Installed ] [ 1] Geronimo TxManager :: Transaction (2.1.3) [ 22] [Installed ] [ 1] Apache OpenEJB :: Container :: API (3.1.2.SNAPSHOT) [ 23] [Installed ] [ 1] Apache OpenEJB :: Container :: Java Agent (3.1.2.SNAPSHOT) [ 25] [Installed ] [ 1] Apache OpenEJB :: Container :: Java EE (3.1.2.SNAPSHOT) [ 26] [Installed ] [ 1] Apache OpenEJB :: Container :: Loader (3.1.2.SNAPSHOT) [ 27] [Installed ] [ 1] Apache XBean :: ASM shaded (repackaged) (3.6) [ 28] [Installed ] [ 1] Apache XBean :: Finder shaded (repackaged) (3.6) [ 29] [Installed ] [ 1] Apache XBean :: Reflect (3.6) [ 30] [Installed ] [ 1] Apache XBean :: Naming (3.6) -> start 6 org.osgi.framework.BundleException: Unresolved constraint in bundle org.apache.openejb.core [6]: package; (package=javax.jws) Any clues ? On Sat, Oct 24, 2009 at 10:21 AM, Mohammad Nour El-Din <[email protected]> wrote: > Hi Jacek... > > Sounds and looks really cool, I will give it a try today and send a > feedback. > > On Fri, Oct 23, 2009 at 11:36 PM, Jacek Laskowski > <[email protected]> wrote: >> Hi, >> >> With the recent changes in the openejb repo as far as MANIFEST.MF >> generation goes and the new openejb-core-osgi project/bundle, it seems >> that OpenEJB boots up fine within OSGi framework - Apache Felix 2.0.1. >> If you fancy giving it a try, do the following. I'd appreciate if it's >> verified on another machine before me going further with the openejb >> osgification. Make sure you're working with the latest openejb >> sources. Comments welcome. It looks it's on time with Geronimo >> osgification. I couldn't have wished more. >> >> Download felix-framework-2.0.1.tar.gz and install it >> >> Change its conf/config.properties so that it contains >> felix.log.level=4 (more information on wiring) and >> org.osgi.framework.system.packages.extra=sun.misc >> >> Change default.properties in bin/felix.jar -> javax.transaction turned off >> jar xf felix.jar default.properties >> sed 's,javax.transaction,#javax.transaction,' default.properties > >> default.properties.NOWY >> cp default.properties.NOWY default.properties >> jar uf felix.jar default.properties >> rm default.properties* >> >> Run Felix - java -jar bin/felix.jar "c:\openejb-osgi\felix-cache" >> jlaskow...@work /cygdrive/c/openejb-osgi/felix-framework-2.0.1 >> $ java -jar bin/felix.jar "c:\openejb-osgi\felix-cache" >> >> Welcome to Felix >> ================ >> >> DEBUG: WIRE: 1.0 -> org.osgi.framework -> 0 >> DEBUG: WIRE: 1.0 -> org.osgi.service.log -> 2.0 >> DEBUG: WIRE: 1.0 -> org.osgi.service.url -> 0 >> DEBUG: WIRE: 2.0 -> org.osgi.framework -> 0 >> DEBUG: WIRE: 2.0 -> org.osgi.service.packageadmin -> 0 >> DEBUG: WIRE: 2.0 -> org.osgi.service.startlevel -> 0 >> DEBUG: DYNAMIC WIRE: 1.0 -> org.apache.felix.shell -> 2.0 >> DEBUG: WIRE: 3.0 -> org.apache.felix.shell -> 2.0 >> DEBUG: WIRE: 3.0 -> org.osgi.framework -> 0 >> -> ps >> START LEVEL 1 >> ID State Level Name >> [ 0] [Active ] [ 0] System Bundle (2.0.1) >> [ 1] [Active ] [ 1] Apache Felix Bundle Repository (1.4.2) >> [ 2] [Active ] [ 1] Apache Felix Shell Service (1.4.1) >> [ 3] [Active ] [ 1] Apache Felix Shell TUI (1.4.1) >> >> Install the following bundles (make sure you're online as some are >> pulled down from the Internet). Execute the following commands from >> within felix console: >> >> install >> file:C:/.m2/org/apache/openejb/openejb-core/3.1.2-SNAPSHOT/openejb-core-3.1.2-SNAPSHOT.jar >> install >> http://repo2.maven.org/maven2/org/apache/geronimo/specs/geronimo-annotation_1.0_spec/1.1.1/geronimo-annotation_1.0_spec-1.1.1.jar >> install >> http://repo2.maven.org/maven2/org/apache/geronimo/specs/geronimo-ejb_3.0_spec/1.0.1/geronimo-ejb_3.0_spec-1.0.1.jar >> install >> http://repo2.maven.org/maven2/org/apache/geronimo/specs/geronimo-jta_1.1_spec/1.1.1/geronimo-jta_1.1_spec-1.1.1.jar >> install >> http://repo2.maven.org/maven2/org/apache/geronimo/specs/geronimo-interceptor_3.0_spec/1.0.1/geronimo-interceptor_3.0_spec-1.0.1.jar >> install >> http://repo2.maven.org/maven2/org/apache/geronimo/specs/geronimo-javamail_1.4_spec/1.6/geronimo-javamail_1.4_spec-1.6.jar >> install >> http://repo2.maven.org/maven2/org/apache/geronimo/specs/geronimo-j2ee-management_1.1_spec/1.0.1/geronimo-j2ee-management_1.1_spec-1.0.1.jar >> install >> http://repo2.maven.org/maven2/org/apache/geronimo/specs/geronimo-jpa_3.0_spec/1.1.1/geronimo-jpa_3.0_spec-1.1.1.jar >> install >> http://repo2.maven.org/maven2/org/apache/geronimo/specs/geronimo-j2ee-connector_1.5_spec/2.0.0/geronimo-j2ee-connector_1.5_spec-2.0.0.jar >> install >> http://repo2.maven.org/maven2/org/apache/geronimo/specs/geronimo-jacc_1.1_spec/1.0.2/geronimo-jacc_1.1_spec-1.0.2.jar >> install >> http://repo2.maven.org/maven2/org/apache/servicemix/bundles/org.apache.servicemix.bundles.wsdl4j/1.6.1_1/org.apache.servicemix.bundles.wsdl4j-1.6.1_1.jar >> install >> http://download.eclipse.org/tools/orbit/downloads/drops/R20090825191606/bundles/org.apache.commons.cli_1.0.0.v20080604-1500.jar >> install >> http://download.eclipse.org/tools/orbit/downloads/drops/R20090825191606/bundles/org.apache.commons.lang_2.4.0.v20081016-1030.jar >> install >> http://download.eclipse.org/tools/orbit/downloads/drops/R20090825191606/bundles/org.apache.commons.logging_1.1.1.v200904062255.jar >> install >> http://repo2.maven.org/maven2/org/apache/geronimo/components/geronimo-connector/2.1.3/geronimo-connector-2.1.3.jar >> install >> http://repo2.maven.org/maven2/org/apache/geronimo/components/geronimo-transaction/2.1.3/geronimo-transaction-2.1.3.jar >> install >> file:C:\.m2\org\apache\openejb\openejb-api\3.1.2-SNAPSHOT\openejb-api-3.1.2-SNAPSHOT.jar >> install >> file:C:\.m2\org\apache\openejb\openejb-javaagent\3.1.2-SNAPSHOT\openejb-javaagent-3.1.2-SNAPSHOT.jar >> install >> file:C:/.m2/org/apache/openejb/openejb-jee/3.1.2-SNAPSHOT/openejb-jee-3.1.2-SNAPSHOT.jar >> install >> file:C:/.m2/org/apache/openejb/openejb-loader/3.1.2-SNAPSHOT/openejb-loader-3.1.2-SNAPSHOT.jar >> install >> file:C:\.m2\org\apache\xbean\xbean-asm-shaded\3.7-SNAPSHOT\xbean-asm-shaded-3.7-SNAPSHOT.jar >> install >> file:C:\.m2\org\apache\xbean\xbean-finder-shaded\3.7-SNAPSHOT\xbean-finder-shaded-3.7-SNAPSHOT.jar >> install >> file:C:\.m2\org\apache\xbean\xbean-naming\3.7-SNAPSHOT\xbean-naming-3.7-SNAPSHOT.jar >> install >> file:C:\.m2\org\apache\xbean\xbean-reflect\3.7-SNAPSHOT\xbean-reflect-3.7-SNAPSHOT.jar >> >> Execute "start 4" and Core is up. >> >> -> ps >> START LEVEL 1 >> ID State Level Name >> [ 0] [Active ] [ 0] System Bundle (2.0.1) >> [ 1] [Active ] [ 1] Apache Felix Bundle Repository (1.4.2) >> [ 2] [Active ] [ 1] Apache Felix Shell Service (1.4.1) >> [ 3] [Active ] [ 1] Apache Felix Shell TUI (1.4.1) >> [ 4] [Active ] [ 1] Apache OpenEJB :: Container :: Core >> (3.1.2.SNAPSHOT) >> [ 5] [Resolved ] [ 1] geronimo-annotation_1.0_spec (1.1.1) >> [ 6] [Resolved ] [ 1] geronimo-ejb_3.0_spec (1.0.1) >> [ 7] [Resolved ] [ 1] geronimo-jta_1.1_spec (1.1.1) >> [ 8] [Resolved ] [ 1] geronimo-interceptor_3.0_spec (1.0.1) >> [ 9] [Resolved ] [ 1] geronimo-javamail_1.4_spec (1.6) >> [ 10] [Resolved ] [ 1] geronimo-j2ee-management_1.1_spec (1.0.1) >> [ 11] [Resolved ] [ 1] geronimo-jpa_3.0_spec (1.1.1) >> [ 12] [Resolved ] [ 1] geronimo-j2ee-connector_1.5_spec (2.0.0) >> [ 13] [Resolved ] [ 1] J2EE JACC 1.1 (1.0.2) >> [ 14] [Resolved ] [ 1] Apache ServiceMix Bundles: wsdl4j-1.6.1 >> (1.6.1.1) >> [ 16] [Resolved ] [ 1] OPS4J Pax Logging - API (1.4) >> [ 17] [Resolved ] [ 1] pluginName (1.0.0.v20080604-1500) >> [ 18] [Resolved ] [ 1] Apache Jakarta Commons Lang >> (2.4.0.v20081016-1030) >> [ 19] [Resolved ] [ 1] Apache Commons Logging Plug-in >> (1.1.1.v200904062255) >> [ 20] [Resolved ] [ 1] Geronimo TxManager :: Connector (2.1.3) >> [ 21] [Resolved ] [ 1] Geronimo TxManager :: Transaction (2.1.3) >> [ 22] [Resolved ] [ 1] Apache OpenEJB :: Container :: API >> (3.1.2.SNAPSHOT) >> [ 23] [Resolved ] [ 1] Apache OpenEJB :: Container :: Java Agent >> (3.1.2.SNAPSHOT) >> [ 24] [Resolved ] [ 1] Apache OpenEJB :: Container :: Java EE >> (3.1.2.SNAPSHOT) >> [ 25] [Resolved ] [ 1] Apache OpenEJB :: Container :: Loader >> (3.1.2.SNAPSHOT) >> [ 27] [Resolved ] [ 1] Apache XBean :: ASM shaded (repackaged) >> (3.7.0.SNAPSHOT) >> [ 28] [Resolved ] [ 1] Apache XBean :: Finder shaded >> (repackaged) (3.7.0.SNAPSHOT) >> [ 29] [Resolved ] [ 1] Apache XBean :: Naming (3.7.0.SNAPSHOT) >> [ 30] [Resolved ] [ 1] Apache XBean :: Reflect (3.7.0.SNAPSHOT) >> >> Install the new bundle from >> http://svn.apache.org/repos/asf/openejb/trunk/sandbox/openejb-osgi/openejb-core-osgi. >> Build it locally so it's in Maven's local repo. >> install >> file:C:\.m2\org\apache\openejb\openejb-core-osgi\3.1.2-SNAPSHOT\openejb-core-osgi-3.1.2-SNAPSHOT.jar >> >> Install OPS4J wrap bundle and start it >> install >> http://repo1.maven.org/maven2/org/ops4j/pax/url/pax-url-wrap/1.1.2/pax-url-wrap-1.1.2.jar >> >> install >> wrap:http://repo2.maven.org/maven2/org/apache/activemq/activemq-ra/4.1.1/activemq-ra-4.1.1.jar >> install >> wrap:http://repo2.maven.org/maven2/org/apache/activemq/activemq-core/4.1.1/activemq-core-4.1.1.jar >> >> Bounce felix with >> -Dopenejb.log.factory=org.apache.openejb.util.JuliLogStreamFactory on >> the command line: >> java -Dopenejb.log.factory=org.apache.openejb.util.JuliLogStreamFactory >> -jar bin/felix.jar "c:\openejb-osgi\felix-cache" >> >> -> ps >> START LEVEL 1 >> ID State Level Name >> [ 0] [Active ] [ 0] System Bundle (2.0.1) >> [ 1] [Active ] [ 1] Apache Felix Bundle Repository (1.4.2) >> [ 2] [Active ] [ 1] Apache Felix Shell Service (1.4.1) >> [ 3] [Active ] [ 1] Apache Felix Shell TUI (1.4.1) >> [ 4] [Active ] [ 1] Apache OpenEJB :: Container :: Core >> (3.1.2.SNAPSHOT) >> [ 5] [Resolved ] [ 1] geronimo-annotation_1.0_spec (1.1.1) >> [ 6] [Resolved ] [ 1] geronimo-ejb_3.0_spec (1.0.1) >> [ 7] [Resolved ] [ 1] geronimo-jta_1.1_spec (1.1.1) >> [ 8] [Resolved ] [ 1] geronimo-interceptor_3.0_spec (1.0.1) >> [ 9] [Resolved ] [ 1] geronimo-javamail_1.4_spec (1.6) >> [ 10] [Resolved ] [ 1] geronimo-j2ee-management_1.1_spec (1.0.1) >> [ 11] [Resolved ] [ 1] geronimo-jpa_3.0_spec (1.1.1) >> [ 12] [Resolved ] [ 1] geronimo-j2ee-connector_1.5_spec (2.0.0) >> [ 13] [Resolved ] [ 1] J2EE JACC 1.1 (1.0.2) >> [ 14] [Resolved ] [ 1] Apache ServiceMix Bundles: wsdl4j-1.6.1 >> (1.6.1.1) >> [ 16] [Resolved ] [ 1] OPS4J Pax Logging - API (1.4) >> [ 17] [Resolved ] [ 1] pluginName (1.0.0.v20080604-1500) >> [ 18] [Resolved ] [ 1] Apache Jakarta Commons Lang >> (2.4.0.v20081016-1030) >> [ 19] [Resolved ] [ 1] Apache Commons Logging Plug-in >> (1.1.1.v200904062255) >> [ 20] [Resolved ] [ 1] Geronimo TxManager :: Connector (2.1.3) >> [ 21] [Resolved ] [ 1] Geronimo TxManager :: Transaction (2.1.3) >> [ 22] [Resolved ] [ 1] Apache OpenEJB :: Container :: API >> (3.1.2.SNAPSHOT) >> [ 23] [Resolved ] [ 1] Apache OpenEJB :: Container :: Java Agent >> (3.1.2.SNAPSHOT) >> [ 24] [Resolved ] [ 1] Apache OpenEJB :: Container :: Java EE >> (3.1.2.SNAPSHOT) >> [ 25] [Resolved ] [ 1] Apache OpenEJB :: Container :: Loader >> (3.1.2.SNAPSHOT) >> [ 27] [Resolved ] [ 1] Apache XBean :: ASM shaded (repackaged) >> (3.7.0.SNAPSHOT) >> [ 28] [Resolved ] [ 1] Apache XBean :: Finder shaded >> (repackaged) (3.7.0.SNAPSHOT) >> [ 29] [Resolved ] [ 1] Apache XBean :: Naming (3.7.0.SNAPSHOT) >> [ 30] [Resolved ] [ 1] Apache XBean :: Reflect (3.7.0.SNAPSHOT) >> [ 31] [Active ] [ 1] Apache OpenEJB :: Container :: Core :: >> OSGi (3.1.2.SNAPSHOT) >> [ 32] [Resolved ] [ 1] geronimo-jms_1.1_spec (1.1.1) >> [ 35] [Active ] [ 1] OPS4J Pax Url - wrap: (1.1.2) >> [ 36] [Resolved ] [ 1] >> wrap_http___repo2.maven.org_maven2_org_apache_activemq_activemq-core_4.1.1_activemq-core-4.1.1.jar >> (0) >> [ 37] [Resolved ] [ 1] >> wrap_http___repo2.maven.org_maven2_org_apache_activemq_activemq-ra_4.1.1_activemq-ra-4.1.1.jar >> (0) >> >> -> start 31 >> Activator started >> DEBUG: juli.properties >> FATAL ERROR WHILE CONFIGURING LOGGING!!!. MISSING logging.properties FILE >> Apache OpenEJB ${pom.version} build: >> @date-replaced-by-ma...@-@TIME-REPLACED-BY-MAVEN@ >> http://openejb.apache.org/ >> 2009-10-23 22:39:53 org.apache.openejb.OpenEJB$Instance <init> >> INFO: >> ******************************************************************************** >> OpenEJB http://openejb.apache.org/ >> Startup: 23.10.09 22:39 >> Copyright 1999-2009 (C) Apache OpenEJB Project, All Rights Reserved. >> Version: ${pom.version} >> Build date: @DATE-REPLACED-BY-MAVEN@ >> Build time: @TIME-REPLACED-BY-MAVEN@ >> ******************************************************************************** >> >> >> 2009-10-23 22:39:53 org.apache.openejb.OpenEJB$Instance <init> >> INFO: openejb.home = C:\openejb-osgi\felix-framework-2.0.1 >> 2009-10-23 22:39:53 org.apache.openejb.OpenEJB$Instance <init> >> INFO: openejb.base = C:\openejb-osgi\felix-framework-2.0.1 >> DEBUG: META-INF/services/javax.xml.parsers.SAXParserFactory >> 2009-10-23 22:39:53 org.apache.openejb.config.ConfigurationFactory >> configureService >> INFO: Configuring Service(id=Default Security Service, >> type=SecurityService, provider-id=Default Security Service) >> 2009-10-23 22:39:53 org.apache.openejb.config.ConfigurationFactory >> configureService >> INFO: Configuring Service(id=Default Transaction Manager, >> type=TransactionManager, provider-id=Default Transaction Manager) >> 2009-10-23 22:39:53 org.apache.openejb.config.ConfigurationFactory >> configureService >> INFO: Configuring Service(id=My Stateless Container, type=Container, >> provider-id=Default Stateless Container) >> 2009-10-23 22:39:53 org.apache.openejb.util.OptionsLog info >> INFO: Using 'openejb.deployments.classpath=false' >> 2009-10-23 22:39:53 org.apache.openejb.assembler.classic.Assembler >> createRecipe >> INFO: Creating TransactionManager(id=Default Transaction Manager) >> 2009-10-23 22:39:53 org.apache.openejb.assembler.classic.Assembler >> createRecipe >> INFO: Creating SecurityService(id=Default Security Service) >> 2009-10-23 22:39:53 org.apache.openejb.assembler.classic.Assembler >> createRecipe >> INFO: Creating Container(id=My Stateless Container) >> >> OpenEJB *seems* running fine. >> >> The missing pieces are to create a service bundle so JNDI namespace is >> visible to other bundles being ejb clients or exposing ejb interfaces >> as osgi services and finally create a osgified deployer (picks up >> instaled bundles that are ejbs as well, passes them to openejb and >> registers osgi services). Fancy helping out? >> >> Jacek >> >> -- >> Jacek Laskowski >> Notatnik Projektanta Java EE - http://www.JacekLaskowski.pl >> > > > > -- > Thanks > - Mohammad Nour > - LinkedIn: http://www.linkedin.com/in/mnour > ---- > "Life is like riding a bicycle. To keep your balance you must keep moving" > - Albert Einstein > > "Writing clean code is what you must do in order to call yourself a > professional. There is no reasonable excuse for doing anything less > than your best." > - Clean Code: A Handbook of Agile Software Craftsmanship > -- Thanks - Mohammad Nour - LinkedIn: http://www.linkedin.com/in/mnour ---- "Life is like riding a bicycle. To keep your balance you must keep moving" - Albert Einstein "Writing clean code is what you must do in order to call yourself a professional. There is no reasonable excuse for doing anything less than your best." - Clean Code: A Handbook of Agile Software Craftsmanship
