0 Replies Latest reply on May 4, 2010 8:35 AM by harbeer

    Error installing war file as an OSGI bundle in Servicemix 4.2

    harbeer

      Hi,

       

      I want to install a war file inside my Servicemix 4.2

      I referred following link telling steps to install a war file

      Link: http://cmoulliard.blogspot.com/2009/03/servicemix-4-as-web-application-server.html

      I have attached the war file with this message.

      I checked the features installed in my servicemix.

       

      uninstalled http://1.4.0-fuse-01-00 war                                  karaf-

      1.4.0-fuse-01-00

      installed http://4.2.0-fuse-01-00 web-core                             repo-0

       

      installed http://4.2.0-fuse-01-00 web                                  repo-0

       

      In some other message I found that the war feature should also be installed.

      When i tried to install the war bundle, I got following error

      karaf@root> features:install war

      Could not start bundle mvn:org.ops4j.pax.web/pax-web-extender-whiteboard/0.7.2 in feature(s) war-1.4.0-fuse-01-00: Exception in org.ops4j.pax.web.extender.whiteboard.internal.Activator.start() of bundle org.ops4j.pax.web.pax-web-extender-whiteboard.

       

      This exception is already listed by a user in following thread URL

      Link: https://fusesource.com/forums/thread.jspa?threadID=1648&tstart=136

      but also comments that war can be deployed without war feature installed.

       

      I added file named org.ops4j.pax.web.cfg with following configuration

      org.osgi.service.http.port=8083

      org.ops4j.pax.web.session.timeout=10

      org.ops4j.pax.web.listening.addresses=localhost

       

      I installed the war file using following command

      osgi:install war:file:///D:/harbeer/Miscellaneous/service-persons.war>Webapp-Context=Person

      The bundle got installed successfully

       

      I started the bundle by giving command

      osgi:start {Bundle Id}

      I got following exception in the logs

      17:40:22,263 | ERROR | l Console Thread | RegisterWebAppVisitorWC          | internal.RegisterWebAppVisitorWC  271 | Registration exception. Skipping.

      java.lang.ClassNotFoundException: com.sun.xml.ws.transport.http.servlet.WSServletContextListener

      at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:494)

      at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)

      :

      :

      :

      17:40:22,263 | ERROR | l Console Thread | RegisterWebAppVisitorWC          | internal.RegisterWebAppVisitorWC  201 | Registration exception. Skipping.

      java.lang.ClassNotFoundException: com.sun.xml.ws.transport.http.servlet.WSServlet

      at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:494)

      at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)

       

      I checked the bundles installed for OPS4J using following command

       

      karaf@root> osgi:list | grep OPS4J

         1 Active     5 OPS4J Pax Url - mvn: (1.1.

      2)

         2 Active     5 OPS4J Pax Url - wrap: (1.1

      .2)

         3 Active     8 OPS4J Pax Logging - API (1

      .4)

         4 Active     8 OPS4J Pax Logging - Servic

      e (1.4)

      102 Active    60 OPS4J Pax Web - API (0.7.2

      )

      103 Active    60 OPS4J Pax Web - Service SP

      I (0.7.2)

      104 Active    60 OPS4J Pax Web - Runtime (0

      .7.2)

      105 Active    60 OPS4J Pax Web - Jetty (0.7

      .2)

      137 Active    60 OPS4J Pax Web Extender - W

      hiteboard (0.5.0)

      242 Active    60 OPS4J Pax Web - Jsp Suppor

      t (0.7.2)

      243 Active    60 OPS4J Pax Web Extender - W

      AR (0.5.0)

      244 Active    60 OPS4J Pax Url - war:, war-

      i: (1.1.2)

       

      I checked the headers exposed by my bundle using following command

      karaf@root> osgi:headers 246

       

      file____D__harbeer_Miscellaneous_service-persons.war (246)

      -


      Manifest-Version = 1.0

      Webapp-Context = Person

      Bundle-ClassPath = .,WEB-INF/classes

      Class-Path =

      Tool = Bnd-0.0.313

      Bundle-Name = file____D__harbeer_Miscellaneous_service-persons.war

      Created-By = 1.6.0_16 (Sun Microsystems Inc.)

      WAR-URL = file:///D:/harbeer/Miscellaneous/service-persons.war

      Generated-By-Ops4j-Pax-From = file:///D:/harbeer/Miscellaneous/service-persons.w

      ar

      Bundle-Version = 0

      Bnd-LastModified = 1272971497593

      Bundle-ManifestVersion = 2

      Bundle-SymbolicName = file____D__harbeer_Miscellaneous_service-persons.war

      Import-Package = javax.jws;resolution:=optional,javax.xml.bind.annotation;resolu

      tion:=optional

       

      I checked the services used by the bundle using following command

      karaf@root> osgi:ls -u 246

       

      file____D__harbeer_Miscellaneous_service-persons.war (246) uses:

      -


      org.ops4j.pax.web.ssl.keystore = C:\Documents and Settings\harbeer\.keystore

      org.osgi.service.http.port.secure = 8443

      org.ops4j.pax.web.listening.addresses = localhost

      org.osgi.service.http.port = 8083

      org.ops4j.pax.web.ssl.clientauthneeded = false

      felix.fileinstall.filename = org.ops4j.pax.web.cfg

      org.osgi.service.http.useNIO = true

      org.osgi.service.http.enabled = true

      org.ops4j.pax.web.ssl.clientauthwanted = false

      org.osgi.service.http.secure.enabled = true

      service.pid = org.ops4j.pax.web

      javax.servlet.context.tempdir = C:\Documents and Settings\harbeer\Local Settings

      \Temp\.paxweb4060358301997900816

      org.ops4j.pax.web.session.timeout = 10

      objectClass = org.osgi.service.http.HttpService, org.ops4j.pax.web.service.WebCo

      ntainer

      service.id = 186

       

      Please tell me where I am going wrong.

       

      With Regards

      Harbeer Kadian