Environment variable org.apache.geronimo.repository.boot.path not used, 
Repository path does not observe named instances
------------------------------------------------------------------------------------------------------------------------

                 Key: GERONIMO-6175
                 URL: https://issues.apache.org/jira/browse/GERONIMO-6175
             Project: Geronimo
          Issue Type: Bug
      Security Level: public (Regular issues)
          Components: startup/shutdown
    Affects Versions: 3.0
         Environment: Linux x86, Red Hat Enterprise Linux Server release 5.4 
(Tikanga)
            Reporter: Russell E Glaue
            Priority: Minor


I only list this issue as minor, as the issue does not prevent running 
Geronimo, or more than one copy of Geronimo on a single server. However, this 
issue does prevent the proper utilization of multiple named server instances.


Two issues:
1) On startup, Geronimo does not use the repository relative to the named 
server instance directory.
2) We are unable to set the repository with the property 
org.apache.geronimo.repository.boot.path to be relative to the named server 
instance directory.


To produce this issue, follow these steps:

1. Unpack the latest Geronimo javaee6 bundle as /opt/geronimo3
2. Create a Geronimo named instance directory as /opt/geronimo3/gserv1
3. Move the directories var, etc, and repository into /opt/geronimo3/gserv1
4. Use this start script
-
#!/bin/bash
GHOME=/opt/geronimo3
GVIRT=gserv1

# Must change to the server directory in order to work around ActiveMQ lock
# file conflict issue reported in GERONIMO-5987.
cd ${GHOME}/${GVIRT}

# Uncomment for the Workaround of issues in GERONIMO-6174
export GERONIMO_TMPDIR=${GHOME}/${GVIRT}/var/temp
GERONIMO_OPTS="${GERONIMO_OPTS} -Dkaraf.home=${GHOME}/${GVIRT}"
#

# Attempt to specify the correct root path to the repository for this
# named server instance
GERONIMO_OPTS="${GERONIMO_OPTS} 
-Dorg.apache.geronimo.repository.boot.path=${GHOME}/${GVIRT}/repository"
#

GERONIMO_OPTS="${GERONIMO_OPTS} -Dorg.apache.geronimo.server.name=${GVIRT}"
export GERONIMO_OPTS
${GHOME}/bin/geronimo run
-

When starting the Geronimo named server instance with the above start script 
the following error is experienced:
-
[user@linux gserv1]# ./start.sh 
Using GERONIMO_HOME:   /opt/geronimo3
Using GERONIMO_TMPDIR: /opt/geronimo3/gserv1/var/temp
Using JRE_HOME:        /usr/jdk1.6.0/jre
                                                          
     ______                       _                       
    / ____/___  _________  ____  (_)____ ___  ____        
   / / __ / _ \/ ___/ __ \/ __ \/ // __ `__ \/ __ \  
  / /_/ //  __/ /  / /_/ / / / / // / / / / / /_/ /       
  \____/ \___/_/   \____/_/ /_/_//_/ /_/ /_/\____/    

  Apache Geronimo (3.0-SNAPSHOT)

Hit '<tab>' for a list of available commands
and '[cmd] --help' for help on a specific command.
Hit '<ctrl-d>' or 'osgi:shutdown' to shutdown Geronimo.

geronimo> 2011-09-26 15:01:25,752 ERROR [GBeanInstanceState] Error while 
starting; GBean is now in the FAILED state: 
abstractName="org.apache.geronimo.framework/j2ee-system/3.0-SNAPSHOT/car?ServiceModule=org.apache.geronimo.framework/j2ee-system/3.0-SNAPSHOT/car,j2eeType=Repository,name=Repository"
java.lang.IllegalStateException: Maven2Repository must have a root that's a 
valid readable directory (not /opt/geronimo3/repository)
        at 
org.apache.geronimo.kernel.repository.AbstractRepository.<init>(AbstractRepository.java:51)
        at 
org.apache.geronimo.kernel.repository.Maven2Repository.<init>(Maven2Repository.java:32)
        at 
org.apache.geronimo.system.repository.Maven2Repository.<init>(Maven2Repository.java:36)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
        at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
        at 
org.apache.xbean.recipe.ReflectionUtil$ConstructorFactory.create(ReflectionUtil.java:958)
        at 
org.apache.xbean.recipe.ObjectRecipe.internalCreate(ObjectRecipe.java:276)
        at org.apache.xbean.recipe.AbstractRecipe.create(AbstractRecipe.java:96)
        at org.apache.xbean.recipe.AbstractRecipe.create(AbstractRecipe.java:61)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstance.createInstance(GBeanInstance.java:958)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:271)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:105)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstance.start(GBeanInstance.java:555)
        at 
org.apache.geronimo.gbean.runtime.GBeanDependency.attemptFullStart(GBeanDependency.java:110)
        at 
org.apache.geronimo.gbean.runtime.GBeanDependency.addTarget(GBeanDependency.java:145)
        at 
org.apache.geronimo.gbean.runtime.GBeanDependency$1.running(GBeanDependency.java:119)
        at 
org.apache.geronimo.kernel.basic.BasicLifecycleMonitor.fireRunningEvent(BasicLifecycleMonitor.java:176)
        at 
org.apache.geronimo.kernel.basic.BasicLifecycleMonitor.access$300(BasicLifecycleMonitor.java:45)
        at 
org.apache.geronimo.kernel.basic.BasicLifecycleMonitor$RawLifecycleBroadcaster.fireRunningEvent(BasicLifecycleMonitor.java:254)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:301)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:105)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstanceState.startRecursive(GBeanInstanceState.java:127)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstance.startRecursive(GBeanInstance.java:569)
        at 
org.apache.geronimo.kernel.basic.BasicKernel.startRecursiveGBean(BasicKernel.java:386)
        at 
org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:462)
        at 
org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:216)
        at 
org.apache.geronimo.system.osgi.BootActivator.start(BootActivator.java:70)
        at 
org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:711)
        at java.security.AccessController.doPrivileged(Native Method)
        at 
org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:702)
        at 
org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:683)
        at 
org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:381)
        at 
org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:389)
        at 
org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1131)
        at 
org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:559)
        at 
org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:544)
        at 
org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:457)
        at 
org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:243)
        at 
org.eclipse.osgi.framework.internal.core.EquinoxLauncher.internalStart(EquinoxLauncher.java:271)
        at 
org.eclipse.osgi.framework.internal.core.EquinoxLauncher.start(EquinoxLauncher.java:241)
        at org.eclipse.osgi.launch.Equinox.start(Equinox.java:258)
        at 
org.apache.geronimo.main.FrameworkLauncher.launchOSGiFramework(FrameworkLauncher.java:185)
        at 
org.apache.geronimo.main.FrameworkLauncher.launch(FrameworkLauncher.java:166)
        at org.apache.geronimo.main.Bootstrapper.execute(Bootstrapper.java:47)
        at org.apache.geronimo.cli.AbstractCLI.executeMain(AbstractCLI.java:65)
        at org.apache.geronimo.cli.daemon.DaemonCLI.main(DaemonCLI.java:32)
2011-09-26 15:01:25,868 WARN  [FeaturesServiceImpl] Unable to add features 
repository 
mvn:org.apache.geronimo.features/openejb-feature/3.0-SNAPSHOT/xml/features at 
startup
java.lang.RuntimeException: URL 
[mvn:org.apache.geronimo.features/openejb-feature/3.0-SNAPSHOT/xml/features] 
could not be resolved.
        at 
org.ops4j.pax.url.mvn.internal.Connection.getInputStream(Connection.java:195)
        at 
org.apache.karaf.features.internal.FeatureValidationUtil.validate(FeatureValidationUtil.java:49)
        at 
org.apache.karaf.features.internal.FeaturesServiceImpl.validateRepository(FeaturesServiceImpl.java:199)
        at 
org.apache.karaf.features.internal.FeaturesServiceImpl.internalAddRepository(FeaturesServiceImpl.java:210)
        at 
org.apache.karaf.features.internal.FeaturesServiceImpl.loadState(FeaturesServiceImpl.java:1074)
        at 
org.apache.karaf.features.internal.FeaturesServiceImpl.start(FeaturesServiceImpl.java:914)
        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.apache.aries.blueprint.utils.ReflectionUtils.invoke(ReflectionUtils.java:226)
        at 
org.apache.aries.blueprint.container.BeanRecipe.invoke(BeanRecipe.java:824)
        at 
org.apache.aries.blueprint.container.BeanRecipe.runBeanProcInit(BeanRecipe.java:636)
        at 
org.apache.aries.blueprint.container.BeanRecipe.internalCreate(BeanRecipe.java:724)
        at 
org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:64)
        at 
org.apache.aries.blueprint.container.BlueprintRepository.createInstances(BlueprintRepository.java:219)
        at 
org.apache.aries.blueprint.container.BlueprintRepository.createAll(BlueprintRepository.java:147)
        at 
org.apache.aries.blueprint.container.BlueprintContainerImpl.instantiateEagerComponents(BlueprintContainerImpl.java:640)
        at 
org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:331)
        at 
org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:227)
        at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
        at java.util.concurrent.FutureTask.run(FutureTask.java:138)
        at 
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:98)
        at 
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:206)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:662)
2011-09-26 15:01:28,335 ERROR [GBeanInstanceState] Error while starting; GBean 
is now in the FAILED state: 
abstractName="org.apache.geronimo.framework/j2ee-system/3.0-SNAPSHOT/car?ServiceModule=org.apache.geronimo.framework/j2ee-system/3.0-SNAPSHOT/car,j2eeType=Repository,name=Repository"
java.lang.IllegalStateException: Maven2Repository must have a root that's a 
valid readable directory (not /opt/geronimo3/repository)
        at 
org.apache.geronimo.kernel.repository.AbstractRepository.<init>(AbstractRepository.java:51)
        at 
org.apache.geronimo.kernel.repository.Maven2Repository.<init>(Maven2Repository.java:32)
        at 
org.apache.geronimo.system.repository.Maven2Repository.<init>(Maven2Repository.java:36)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
        at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
        at 
org.apache.xbean.recipe.ReflectionUtil$ConstructorFactory.create(ReflectionUtil.java:958)
        at 
org.apache.xbean.recipe.ObjectRecipe.internalCreate(ObjectRecipe.java:276)
        at org.apache.xbean.recipe.AbstractRecipe.create(AbstractRecipe.java:96)
        at org.apache.xbean.recipe.AbstractRecipe.create(AbstractRecipe.java:61)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstance.createInstance(GBeanInstance.java:958)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:271)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:105)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstanceState.startRecursive(GBeanInstanceState.java:127)
        at 
org.apache.geronimo.gbean.runtime.GBeanInstance.startRecursive(GBeanInstance.java:569)
        at 
org.apache.geronimo.kernel.basic.BasicKernel.startRecursiveGBean(BasicKernel.java:386)
        at 
org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:462)
        at 
org.apache.geronimo.kernel.config.ConfigurationUtil.loadBootstrapConfiguration(ConfigurationUtil.java:216)
        at 
org.apache.geronimo.system.osgi.BootActivator.start(BootActivator.java:70)
        at 
org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:711)
        at java.security.AccessController.doPrivileged(Native Method)
        at 
org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:702)
        at 
org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:683)
        at 
org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:381)
        at 
org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:389)
        at 
org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1131)
        at 
org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:559)
        at 
org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:544)
        at 
org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:457)
        at 
org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:243)
        at 
org.eclipse.osgi.framework.internal.core.EquinoxLauncher.internalStart(EquinoxLauncher.java:271)
        at 
org.eclipse.osgi.framework.internal.core.EquinoxLauncher.start(EquinoxLauncher.java:241)
        at org.eclipse.osgi.launch.Equinox.start(Equinox.java:258)
        at 
org.apache.geronimo.main.FrameworkLauncher.launchOSGiFramework(FrameworkLauncher.java:185)
        at 
org.apache.geronimo.main.FrameworkLauncher.launch(FrameworkLauncher.java:166)
        at org.apache.geronimo.main.Bootstrapper.execute(Bootstrapper.java:47)
        at org.apache.geronimo.cli.AbstractCLI.executeMain(AbstractCLI.java:65)
        at org.apache.geronimo.cli.daemon.DaemonCLI.main(DaemonCLI.java:32)
Main not found
-




--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to