Uploaded image for project: 'JBoss Enterprise Application Platform 4 and 5'
  1. JBoss Enterprise Application Platform 4 and 5
  2. JBPAPP-4068

netboot option for run.sh generates VFS related exceptions

    XMLWordPrintable

Details

    • Bug
    • Resolution: Won't Do
    • Major
    • TBD
    • EAP_EWP 5.1.0
    • System
    • None

    Description

      The startup script run.sh provides an option (-n, --netboot) for starting the AS on a server using a minimal set of jars, and obtaining the bulk of the JBoss distribution from a remote web server:

      ./run.sh -c netboot -n http://my.remote.host/jboss-dist

      In order for the netboot mechanism to work, two elements are required:
      the JBoss distribution on the remote server needs to have all deploy directories in unexploded form (i.e. http-invoker.sar and other archives need to be zipped up into files)
      (ii) the remote web server through which the JBoss distribution is made available needs to support the WebDAV PROPFIND command
      See the admittedly old documentation in section 1.3 at http://docs.jboss.org/jbossas/jboss4guide/r2/html/ch01.html.

      In trying to test the run.sh -n option in EAP 5.0.1, I found that the netboot option generated multiple exceptions. Here are the steps I took to try to test the option:

      1. Install a copy of Apache on my local machine
      2. Set up a WebDAV compatible directory in /var/www and test access to this directory using a command-line client (such as cadaver)
      3. Create a copy of jboss-eap-5.0.1 in which a new server configuration, netboot, is defined and where netboot is a copy of default in which all exploded directories in netboot/deploy and netboot/deployers have been zipped up (in the manner used in the examples from the documentation listed above)
      4. Copy the jboss-eap-5.0.1 distribution to the WebDAV server
      5. From a copy of jboss-eap-5.0.1 which has had all but the ./bin directory removed, start JBoss using the netboot option
      > ./run.sh -c netboot -n http://localhost:80/webdav/jboss-eap-5.0/jboss-as

      =========================================================================
      JBoss Bootstrap Environment
      JBOSS_HOME: /tmp/jboss/jboss-eap-5.0-binonly/jboss-as
      JAVA: /opt/jdk-1.6.0_04/bin/java
      JAVA_OPTS: -Dprogram.name=run.sh -server -Xms1303m -Xmx1303m -XX:MaxPermSize=256m -Dorg.jboss.resolver.warning=true -Dsun.rm
      i.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Dsun.lang.ClassLoader.allowArraySyntax=true -Djava.net.preferIPv4Stack=true

      CLASSPATH: /tmp/jboss/jboss-eap-5.0-binonly/jboss-as/bin/run.jar:/tmp/jboss/jboss-eap-5.0-binonly/jboss-as/bin/jboss-logmanager.jar:/opt/jdk-1.6.0_04/lib/tools.jar
      =========================================================================
      15:51:23,857 INFO [ServerImpl] Starting JBoss (Microcontainer)...
      15:51:23,857 INFO [ServerImpl] Release ID: JBoss [EAP] 5.0.1 (build: SVNTag=JBPAPP_5_0_1 date=201003241622)
      15:51:23,858 INFO [ServerImpl] Bootstrap URL: null
      15:51:23,858 INFO [ServerImpl] Home Dir: /tmp/jboss/jboss-eap-5.0-binonly/jboss-as
      15:51:23,858 INFO [ServerImpl] Home URL: http://localhost:80/webdav/jboss-eap-5.0/jboss-as/
      15:51:23,858 INFO [ServerImpl] Library URL: http://localhost:80/webdav/jboss-eap-5.0/jboss-as/lib/
      15:51:23,859 INFO [ServerImpl] Patch URL: null
      15:51:23,859 INFO [ServerImpl] Common Base URL: http://localhost:80/webdav/jboss-eap-5.0/jboss-as/common/
      15:51:23,859 INFO [ServerImpl] Common Library URL: http://localhost:80/webdav/jboss-eap-5.0/jboss-as/common/lib/
      15:51:23,859 INFO [ServerImpl] Server Name: netboot
      15:51:23,860 INFO [ServerImpl] Server Base Dir: /tmp/jboss/jboss-eap-5.0-binonly/jboss-as/server
      15:51:23,860 INFO [ServerImpl] Server Base URL: http://localhost:80/webdav/jboss-eap-5.0/jboss-as/server/
      15:51:23,860 INFO [ServerImpl] Server Config URL: http://localhost:80/webdav/jboss-eap-5.0/jboss-as/server/netboot/conf/
      15:51:23,860 INFO [ServerImpl] Server Home Dir: /tmp/jboss/jboss-eap-5.0-binonly/jboss-as/server/netboot
      15:51:23,860 INFO [ServerImpl] Server Home URL: http://localhost:80/webdav/jboss-eap-5.0/jboss-as/server/netboot/
      15:51:23,860 INFO [ServerImpl] Server Data Dir: /tmp/jboss/jboss-eap-5.0-binonly/jboss-as/server/netboot/data
      15:51:23,860 INFO [ServerImpl] Server Library URL: http://localhost:80/webdav/jboss-eap-5.0/jboss-as/server/netboot/lib/
      15:51:23,860 INFO [ServerImpl] Server Log Dir: /tmp/jboss/jboss-eap-5.0-binonly/jboss-as/server/netboot/log
      15:51:23,860 INFO [ServerImpl] Server Native Dir: /tmp/jboss/jboss-eap-5.0-binonly/jboss-as/server/netboot/tmp/native
      15:51:23,861 INFO [ServerImpl] Server Temp Dir: /tmp/jboss/jboss-eap-5.0-binonly/jboss-as/server/netboot/tmp
      15:51:23,861 INFO [ServerImpl] Server Temp Deploy Dir: /tmp/jboss/jboss-eap-5.0-binonly/jboss-as/server/netboot/tmp/deploy
      15:51:24,864 INFO [ServerImpl] Starting Microcontainer, bootstrapURL=http://localhost:80/webdav/jboss-eap-5.0/jboss-as/server/netboot/conf/bootstrap.xml
      15:51:25,571 INFO [VFSCacheFactory] Initializing VFSCache [org.jboss.virtual.plugins.cache.CombinedVFSCache]
      15:51:25,574 INFO [VFSCacheFactory] Using VFSCache [CombinedVFSCache[real-cache: null]]
      15:51:25,610 ERROR [AbstractKernelController] Error installing to Configured: name=VFSCache state=Instantiated
      java.lang.RuntimeException: Error configuring property: permanentRoots for VFSCache
      at org.jboss.kernel.plugins.dependency.ConfigureAction.dispatchSetProperty(ConfigureAction.java:112)
      at org.jboss.kernel.plugins.dependency.ConfigureAction.setAttributes(ConfigureAction.java:85)
      at org.jboss.kernel.plugins.dependency.ConfigureAction.installActionInternal(ConfigureAction.java:44)
      at org.jboss.kernel.plugins.dependency.InstallsAwareAction.installAction(InstallsAwareAction.java:54)
      at org.jboss.kernel.plugins.dependency.InstallsAwareAction.installAction(InstallsAwareAction.java:42)
      at org.jboss.dependency.plugins.action.SimpleControllerContextAction.simpleInstallAction(SimpleControllerContextAction
      .java:62)
      at org.jboss.dependency.plugins.action.AccessControllerContextAction.install(AccessControllerContextAction.java:71)
      at org.jboss.dependency.plugins.AbstractControllerContextActions.install(AbstractControllerContextActions.java:51)
      at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:348)
      at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1633)
      at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:935)
      at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1083)
      at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:985)
      at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:775)
      at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:540)
      at org.jboss.kernel.plugins.deployment.AbstractKernelDeployer.deployBean(AbstractKernelDeployer.java:319)
      at org.jboss.kernel.plugins.deployment.AbstractKernelDeployer.deployBeans(AbstractKernelDeployer.java:297)
      at org.jboss.kernel.plugins.deployment.AbstractKernelDeployer.deploy(AbstractKernelDeployer.java:130)
      at org.jboss.kernel.plugins.deployment.BasicKernelDeployer.deploy(BasicKernelDeployer.java:76)
      at org.jboss.bootstrap.microcontainer.TempBasicXMLDeployer.deploy(TempBasicXMLDeployer.java:91)
      at org.jboss.bootstrap.microcontainer.TempBasicXMLDeployer.deploy(TempBasicXMLDeployer.java:161)
      at org.jboss.bootstrap.microcontainer.ServerImpl.doStart(ServerImpl.java:138)
      at org.jboss.bootstrap.AbstractServerImpl.start(AbstractServerImpl.java:450)
      at org.jboss.Main.boot(Main.java:221)
      at org.jboss.Main$1.run(Main.java:556)
      at java.lang.Thread.run(Thread.java:619)
      Caused by: java.io.IOException: No context factory for http://localhost:80/webdav/jboss-eap-5.0/jboss-as/server/netboot/lib/
      at org.jboss.virtual.VFS.getVFS(VFS.java:232)
      at org.jboss.virtual.plugins.cache.CombinedVFSCache.setPermanentRoots(CombinedVFSCache.java:70)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:597)
      at org.jboss.reflect.plugins.introspection.ReflectionUtils.invoke(ReflectionUtils.java:59)
      at org.jboss.reflect.plugins.introspection.ReflectMethodInfoImpl.invoke(ReflectMethodInfoImpl.java:150)
      at org.jboss.beans.info.plugins.DefaultPropertyInfo.set(DefaultPropertyInfo.java:143)
      at org.jboss.beans.info.plugins.BeanInfoUtil.set(BeanInfoUtil.java:177)
      at org.jboss.beans.info.plugins.AbstractBeanInfo.setProperty(AbstractBeanInfo.java:289)
      at org.jboss.kernel.plugins.dependency.PropertyDispatchWrapper.execute(PropertyDispatchWrapper.java:113)
      at org.jboss.kernel.plugins.dependency.ExecutionWrapper.execute(ExecutionWrapper.java:47)
      at org.jboss.kernel.plugins.dependency.KernelControllerContextAction.dispatchExecutionWrapper(KernelControllerContextA
      ction.java:111)
      at org.jboss.kernel.plugins.dependency.ConfigureAction.dispatchSetProperty(ConfigureAction.java:107)
      ... 25 more

      The full console log is attached.

      Attachments

        Activity

          People

            Unassigned Unassigned
            rachmato@redhat.com Richard Achmatowicz
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: