1 Reply Latest reply on Jun 25, 2012 4:04 AM by thomas.diesler

    JBoss OSGi installer package

    b.eckenfels

      Hello,

       

      I am a bit confused by the documentation in regards to the purpose of the installer package. I wanted to play around with the stand-alone runtime, especially since I wanted to verify some behaviour before reporting errors. In the User Guide I read, that the Installer can be used to get a stand-alone runtime (and samples). However when I download the 1.1.1 installer.jar, it only contains examples. The jboss-osgi-installer-1.0.0.jar does contain the runtime, it will display a "pack selction" dialog. Is this related to the JBoss AS 7 branch? In this case I would add this to the documentation. Or is it intended to ship a runtime again?

       

      Speaking of documentation, in the developer guide I read here: https://docs.jboss.org/author/display/JBOSGI/Building+the+Installer

       

         JBossOSGi uses the IzPack installer for deployment on supported target containers.

       

      This sounds a bit confusing. It looks like the installer never supported target container selection.

       

      Greetings

      Bernd

        • 1. Re: JBoss OSGi installer package
          thomas.diesler

          Yes, this slipped through and is not correct any more - I updated the page and removed your comment (which is now also not applicable any more).

           

          We used to have a standalone runtime before the first AS7 release. It was a pure OSGi Framework process with a number of initial bundles being provisioned. The example testsuite used JMX over a JSR160 connector to execute tests in that runtime. This has now been replaced by Arquillilan tests taht run against an AS7 installation. AS7 is in fact the only target container that we support. good integration with AS7 is in fact the entire purpose of the jbosgi effort.

           

          I strongly bellieve that the application server is the provider of middleware services (i.e. persistence, security, failover, load balacing, management, clustering, etc). IMHO, it would be unwise to use a standalone OSGi framework and somehow provision that with a set of OSGi bundles to build up a subset of that functionality. This is of course a function of project requirements - let me give you an example:

           

          The Enterprise OSGi Specification has coverage of WebApp support. So yes, you can package your webapp as standard OSGi Bundle and deploy that on any OSGi Runtime that supports that spec. You are however limmited to servlet-2.5,  cannot use JSP nor Taglibs, nor CDI integration let alone distributed session state nor security. So basic webapp support is covered, but as soon as you add reasonable enterprise requirements you would have to leave the boundaries of standards.

           

          IMO, it is much more sensible to use the JavaEE standard to build your enterprise webapp and deploy that on the appserver of your choice. With most products you'll get mature support for the middleware services I mentioned above. One of the requirements you might have is a modular design and loose coupling via dynamic services (i.e. OSGi functionality) - so you want an appserver taht also allows  OSGi integration. This is what jbosgi is about. ;-)

           

          Another reason why we deprecated the JBOSGi Standalone Runtime is that AS7 can be configured to be just that - a pure OSGi Runtime. Have a look at

           

          [tdiesler@tdvaio jboss-as-7.2.0.Alpha1-SNAPSHOT]$ cp docs/examples/configs/standalone-osgi-only.xml standalone/configuration/

          [tdiesler@tdvaio jboss-as-7.2.0.Alpha1-SNAPSHOT]$ bin/standalone.sh --server-config=standalone-osgi-only.xml

          =========================================================================

           

            JBoss Bootstrap Environment

           

            JBOSS_HOME: /home/tdiesler/git/jboss-as/build/target/jboss-as-7.2.0.Alpha1-SNAPSHOT

           

            JAVA: /usr/java/jdk1.6/bin/java

           

            JAVA_OPTS:  -server -XX:+UseCompressedOops -Xms64m -Xmx512m -XX:MaxPermSize=256m -Djava.net.preferIPv4Stack=true -Dorg.jboss.resolver.warning=true -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true -Djboss.server.default.config=standalone.xml

           

          =========================================================================

           

          10:03:32,705 INFO  [org.jboss.modules] JBoss Modules version 1.1.2.GA

          10:03:33,012 INFO  [org.jboss.msc] JBoss MSC version 1.0.2.GA

          10:03:33,098 INFO  [org.jboss.as] JBAS015899: JBoss AS 7.2.0.Alpha1-SNAPSHOT "Steropes" starting

          10:03:33,954 INFO  [org.xnio] XNIO Version 3.0.4.GA

          10:03:33,957 INFO  [org.jboss.as.server] JBAS015888: Creating http management service using socket-binding (management-http)

          10:03:33,975 INFO  [org.xnio.nio] XNIO NIO Implementation Version 3.0.4.GA

          10:03:33,998 INFO  [org.jboss.remoting] JBoss Remoting version 3.2.8.GA

          10:03:34,075 INFO  [org.jboss.as.logging] JBAS011502: Removing bootstrap log handlers

          10:03:34,084 INFO  [org.jboss.as.configadmin] (ServerService Thread Pool -- 6) JBAS016200: Activating ConfigAdmin Subsystem

          10:03:34,100 INFO  [org.jboss.as.osgi] (ServerService Thread Pool -- 8) JBAS011906: Activating OSGi Subsystem

          10:03:34,205 INFO  [org.jboss.as.remoting] (MSC service thread 1-1) JBAS017100: Listening on 127.0.0.1:9999

          10:03:34,206 INFO  [org.jboss.as.remoting] (MSC service thread 1-3) JBAS017100: Listening on 127.0.0.1:4447

          10:03:34,252 INFO  [org.jboss.osgi.framework] (MSC service thread 1-3) JBOSGI011006: OSGi Framework - 2.0.0.CR3

          10:03:34,898 INFO  [org.jboss.osgi.framework] (MSC service thread 1-1) JBOSGI011001: Bundle installed: osgi.enterprise:4.2.0.201003190513

          10:03:35,030 INFO  [org.jboss.osgi.framework] (MSC service thread 1-1) JBOSGI011011: Starting bundles for start level: 1

          10:03:35,031 INFO  [org.jboss.osgi.framework] (MSC service thread 1-1) JBOSGI011000: OSGi Framework started

          10:03:35,204 INFO  [org.jboss.as] (Controller Boot Thread) JBAS015961: Http management interface listening on http://127.0.0.1:9990/management

          10:03:35,205 INFO  [org.jboss.as] (Controller Boot Thread) JBAS015951: Admin console listening on http://127.0.0.1:9990

          10:03:35,206 INFO  [org.jboss.as] (Controller Boot Thread) JBAS015874: JBoss AS 7.2.0.Alpha1-SNAPSHOT "Steropes" started in 2899ms - Started 51 of 94 services (43 services are passive or on-demand)

           

          Thanks for spotting/reporting this.