You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@geronimo.apache.org by "Forrest Xia (Resolved) (JIRA)" <ji...@apache.org> on 2012/02/23 04:32:08 UTC
[jira] [Resolved] (GERONIMO-6175) Environment variable
org.apache.geronimo.repository.boot.path not used, Repository path does not
observe named instances
[ https://issues.apache.org/jira/browse/GERONIMO-6175?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Forrest Xia resolved GERONIMO-6175.
-----------------------------------
Resolution: Won't Fix
Assignee: Forrest Xia
o.a.g.repository.boot.path is not used in geronimo for a long time, so close this jira.
> 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: Sub-task
> Security Level: public(Regular issues)
> Affects Versions: 3.0, 3.0-beta-1
> Environment: Linux x86, Red Hat Enterprise Linux Server release 5.4 (Tikanga)
> Reporter: Russell E Glaue
> Assignee: Forrest Xia
> Priority: Minor
> Labels: geronimo
>
> 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:
> # On startup, Geronimo does not use the repository relative to the named server instance directory.
> # 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.
> From what I could decipher, these are the (or some) of the primary classes defining the repository
> - framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/kernel/config/ConfigurationUtil.java
> - plugins/jaxws/geronimo-jaxws-sun-tools/src/main/java/org/apache/geronimo/jaxws/sun/tools/JAXWSToolsCLI.java
> - plugins/cxf/geronimo-cxf-tools/src/main/java/org/apache/geronimo/cxf/tools/JAXWSToolsCLI.java
> And the property "org.apache.geronimo.repository.boot.path" has a prepended "X" in each of the three files.
> This tells me it was specifically disabled, and probably for some big issue.
> {noformat:borderStyle=solid}
> # framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/kernel/config/ConfigurationUtil.java
> ...
> Collection repositories = null;
> ArtifactResolver artifactResolver = null;
> if (enableBootRepo) {
> String repository = System.getProperty("Xorg.apache.geronimo.repository.boot.path", "repository");
> Maven2Repository bootRepository = new Maven2Repository(new File(getBootDirectory(), repository));
> repositories = Collections.singleton(bootRepository);
> artifactResolver = new DefaultArtifactResolver(new DefaultArtifactManager(), bootRepository);
> } else {
> // a bootstrap configuration can not have any dependencies
> List dependencies = configurationData.getEnvironment().getDependencies();
> if (!dependencies.isEmpty()) {
> configurationData.getEnvironment().setDependencies(Collections.EMPTY_SET);
> }
> }
> ...
> {noformat}
> To produce this issue, follow these steps:
> # Unpack the latest Geronimo javaee6 bundle as /opt/geronimo3
> # Create a Geronimo named instance directory as /opt/geronimo3/gserv1
> # Move the directories var, etc, and repository into /opt/geronimo3/gserv1
> # If patch GERONIMO-6275 in applied, start with this:
> -- env JAVA_HOME=/usr/jdk1.6.0 GERONIMO_SERVER=/opt/geronimo3/gserv1 /opt/geronimo3/bin/geronimo run
> # Or. without the patch, Use this start script
> {noformat:borderStyle=solid}
> #!/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
> {noformat}
> When starting the Geronimo named server instance with the above start script the following error is experienced:
> {noformat:borderStyle=solid}
> [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
> {noformat}
--
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