How to set JAVA_HOME when running Fuse as a wrapper service?
Issue
-
When starting JBoss Fuse 6.0 in the background using
"./start"command, it runs using java 1.7 without problems and It can be connected to the running session using"./client -a PortNumber -u userName -p password"command. -
when starting JBoss Fuse 6.0 as a wrapper service, it runs using java 1.6 (the default version available at the operating system) without problems and It can be connected to the running session using
"./client -a PortNumber -u userName -p password"command. -
The problem is when there is a need of JBoss Fuse 6.0 service to point to
jdk1.7.0_40, How can I do that? -
After editing these files
"bin/jbossFuseTest-service"and"etc/jbossFuseTest-wrapper.conf"to set theJAVA_HOMEwithjdk1.7home and starting JBoss Fuse service, the service does not start withjdk1.7.0_40rather always starts with default JDK shipped by OS (i.e. 1.6 JDK) and it is not able to connect to the running JBOSS Fuse session using this command"./client -a 8100 -u admin -p admin", when I tried it throws error"Failed to get session". With the following exception on fuse log:
16:37:16,968 | INFO | t-60024-thread-2 | SecurityUtils | 32 - org.apache.sshd.core - 0.8.0 | BouncyCastle not registered, using the default JCE provider
16:37:17,131 | ERROR | t-60024-thread-2 | BlueprintContainerImpl | 14 - org.apache.aries.blueprint.core - 1.0.1.redhat-60024 | Unable to start blueprint container for bundle org.apache.karaf.shell.ssh
org.osgi.service.blueprint.container.ComponentDefinitionException: Error when instantiating bean sshServer of class class org.apache.sshd.SshServer
at org.apache.aries.blueprint.container.BeanRecipe.getInstance(BeanRecipe.java:315)[14:org.apache.aries.blueprint.core:1.0.1.redhat-60024]
at org.apache.aries.blueprint.container.BeanRecipe.internalCreate2(BeanRecipe.java:806)[14:org.apache.aries.blueprint.core:1.0.1.redhat-60024]
at org.apache.aries.blueprint.container.BeanRecipe.internalCreate(BeanRecipe.java:787)[14:org.apache.aries.blueprint.core:1.0.1.redhat-60024]
at org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:106)[14:org.apache.aries.blueprint.core:1.0.1.redhat-60024]
at org.apache.aries.blueprint.container.BlueprintRepository.createInstances(BlueprintRepository.java:245)[14:org.apache.aries.blueprint.core:1.0.1.redhat-60024]
at org.apache.aries.blueprint.container.BlueprintRepository.createAll(BlueprintRepository.java:183)[14:org.apache.aries.blueprint.core:1.0.1.redhat-60024]
at org.apache.aries.blueprint.container.BlueprintContainerImpl.instantiateEagerComponents(BlueprintContainerImpl.java:667)[14:org.apache.aries.blueprint.core:1.0.1.redhat-60024]
at org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:370)[14:org.apache.aries.blueprint.core:1.0.1.redhat-60024]
at org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:261)[14:org.apache.aries.blueprint.core:1.0.1.redhat-60024]
at org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:270)[14:org.apache.aries.blueprint.core:1.0.1.redhat-60024]
at org.apache.aries.blueprint.container.BlueprintExtender.modifiedBundle(BlueprintExtender.java:233)[14:org.apache.aries.blueprint.core:1.0.1.redhat-60024]
at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:500)[13:org.apache.aries.util:1.0.1.redhat-60024]
at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:433)[13:org.apache.aries.util:1.0.1.redhat-60024]
at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$AbstractTracked.track(BundleHookBundleTracker.java:725)[13:org.apache.aries.util:1.0.1.redhat-60024]
at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.bundleChanged(BundleHookBundleTracker.java:463)[13:org.apache.aries.util:1.0.1.redhat-60024]
at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$BundleEventHook.event(BundleHookBundleTracker.java:422)[13:org.apache.aries.util:1.0.1.redhat-60024]
at org.apache.felix.framework.util.SecureAction.invokeBundleEventHook(SecureAction.java:1103)[org.apache.felix.framework-4.0.3.redhat-60024.jar:]
at org.apache.felix.framework.util.EventDispatcher.createWhitelistFromHooks(EventDispatcher.java:696)[org.apache.felix.framework-4.0.3.redhat-60024.jar:]
at org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:484)[org.apache.felix.framework-4.0.3.redhat-60024.jar:]
at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4580)[org.apache.felix.framework-4.0.3.redhat-60024.jar:]
at org.apache.felix.framework.Felix$4.run(Felix.java:2115)[org.apache.felix.framework-4.0.3.redhat-60024.jar:]
at org.apache.felix.framework.Felix$5.run(Felix.java:2159)[org.apache.felix.framework-4.0.3.redhat-60024.jar:]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)[:1.6.0_45]
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)[:1.6.0_45]
at java.util.concurrent.FutureTask.run(FutureTask.java:138)[:1.6.0_45]
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)[:1.6.0_45]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)[:1.6.0_45]
at java.lang.Thread.run(Thread.java:662)[:1.6.0_45]
Caused by: java.lang.UnsupportedClassVersionError: com/sun/crypto/provider/SunJCE : Unsupported major.minor version 51.0
at java.lang.ClassLoader.defineClass1(Native Method)[:1.6.0_45]
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)[:1.6.0_45]
at java.lang.ClassLoader.defineClass(ClassLoader.java:615)[:1.6.0_45]
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)[:1.6.0_45]
at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)[:1.6.0_45]
at java.net.URLClassLoader.access$000(URLClassLoader.java:58)[:1.6.0_45]
at java.net.URLClassLoader$1.run(URLClassLoader.java:197)[:1.6.0_45]
at java.security.AccessController.doPrivileged(Native Method)[:1.6.0_45]
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)[:1.6.0_45]
at sun.misc.Launcher$ExtClassLoader.findClass(Launcher.java:229)[:1.6.0_45]
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)[:1.6.0_45]
at java.lang.ClassLoader.loadClass(ClassLoader.java:295)[:1.6.0_45]
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)[:1.6.0_45]
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)[:1.6.0_45]
at sun.security.jca.ProviderConfig$3.run(ProviderConfig.java:234)[:1.6.0_45]
at java.security.AccessController.doPrivileged(Native Method)[:1.6.0_45]
at sun.security.jca.ProviderConfig.doLoadProvider(ProviderConfig.java:225)[:1.6.0_45]
at sun.security.jca.ProviderConfig.getProvider(ProviderConfig.java:205)[:1.6.0_45]
at sun.security.jca.ProviderList.getProvider(ProviderList.java:215)[:1.6.0_45]
at sun.security.jca.ProviderList$ServiceList.tryGet(ProviderList.java:416)[:1.6.0_45]
at sun.security.jca.ProviderList$ServiceList.access$200(ProviderList.java:358)[:1.6.0_45]
at sun.security.jca.ProviderList$ServiceList$1.hasNext(ProviderList.java:468)[:1.6.0_45]
at javax.crypto.Cipher.getInstance(DashoA13*..)
at org.apache.sshd.common.util.SecurityUtils.getCipher(SecurityUtils.java:118)[32:org.apache.sshd.core:0.8.0]
at org.apache.sshd.common.cipher.BaseCipher.init(BaseCipher.java:59)
at org.apache.sshd.SshServer.setUpDefaultCiphers(SshServer.java:504)[32:org.apache.sshd.core:0.8.0]
at org.apache.sshd.SshServer.setUpDefaultServer(SshServer.java:458)[32:org.apache.sshd.core:0.8.0]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.6.0_45]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)[:1.6.0_45]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)[:1.6.0_45]
at java.lang.reflect.Method.invoke(Method.java:597)[:1.6.0_45]
at org.apache.aries.blueprint.utils.ReflectionUtils.invoke(ReflectionUtils.java:297)[14:org.apache.aries.blueprint.core:1.0.1.redhat-60024]
at org.apache.aries.blueprint.container.BeanRecipe.invoke(BeanRecipe.java:958)[14:org.apache.aries.blueprint.core:1.0.1.redhat-60024]
at org.apache.aries.blueprint.container.BeanRecipe.getInstance(BeanRecipe.java:313)[14:org.apache.aries.blueprint.core:1.0.1.redhat-60024]
... 27 more
- I don't see where one specifies setting JAVA_HOME? I tried setting in jboss-amq-service:
# If require, set the JAVA_HOME to launch the wrapper
#
JAVA_HOME=/vendor/jdk
but got in wrapper.log:
STATUS | wrapper | 2015/06/03 16:07:35 | Launching a JVM...
ERROR | wrapper | 2015/06/03 16:07:35 | Unable to start JVM: No such file or directory (2)
ERROR | wrapper | 2015/06/03 16:07:35 | JVM exited while loading the application.
Environment
- Red Hat JBoss Fuse
- 6.0
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase of over 48,000 articles and solutions.
Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.
