I had installed the IBM UCD 6.1.0.3 by using the IBM JRE (Downloaded from UCD package of Extreme Leverage).
Snapshot of the installation where I mentioned the JRE path :
****[echo] Installing IBM UrbanCode Deploy to: /home/ucd/ibm-ucd/server
[echo] Please enter the home directory of the JRE/JDK used to run the server. [Default: /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.34.x86_64]
/home/ucd/JRE/ibm-java-x86_64-70/jre [echo] JVM Version detected: 1.7.0 [echo] JAVA_HOME: /home/ucd/JRE/ibm-java-x86_64-70/jre [echo] What host name will users access the Web UI at? [Default:
If you observe here, I have manually provided the IBM JRE path to override the default OPEN JDK.
We are using the DB2 9.7.
Now, when I am trying to start the IBM UCD server, it fails with below error in the log : seployserver.out :
2015-04-30 20:42:29,884 INFO main com.urbancode.ds.UDeployServer - Configuring Replicated Codestation... 2015-04-30 20:42:29,933 INFO main com.urbancode.ds.UDeployServer - done 2015-04-30 20:42:29,933 INFO codestation.upgrader com.urbancode.ds.repl.codestation.upgrade.CodestationUpgrader - Upgrader Running. 2015-04-30 20:42:29,935 WARN main com.urbancode.ds.UDeployServer - Property encryption.keystore.password not set. Using value from property server.keystore.password 2015-04-30 20:42:29,952 ERROR main com.urbancode.container.tomcat.Container - Failed to start IBM UrbanCode Deploy java.lang.RuntimeException: Failed to start IBM UrbanCode Deploy at com.urbancode.ds.UDeployServer.start(UDeployServer.java:441) at com.urbancode.container.tomcat.Container.run(Container.java:94) at com.urbancode.ds.UDeployServer.main(UDeployServer.java:289) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:76) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:607) at com.urbancode.launcher.Launcher.invokeMainMethod(Launcher.java:235) at com.urbancode.launcher.Launcher.launch(Launcher.java:161) at com.urbancode.launcher.Launcher.main(Launcher.java:89) Caused by: java.io.IOException: com.sun.crypto.provider.SealedObjectForKeyProtector at com.ibm.crypto.provider.JceKeyStore.engineLoad(Unknown Source) at java.security.KeyStore.load(KeyStore.java:1214) at com.urbancode.ds.UDeployServer.loadKeyStore(UDeployServer.java:1913) at com.urbancode.ds.UDeployServer.retrieveSecretKey(UDeployServer.java:1866) at com.urbancode.ds.UDeployServer.initializeEncryptionKey(UDeployServer.java:1847) at com.urbancode.ds.UDeployServer.start(UDeployServer.java:427) ... 9 more 2015-04-30 20:42:29,956 INFO main com.urbancode.ds.UDeployServer - Checking in server license... 2015-04-30 20:42:30,024 INFO main com.urbancode.ds.UDeployServer - done 2015-04-30 20:42:30,024 INFO main com.urbancode.ds.UDeployServer - Stopping codestation... 2015-04-30 20:42:30,027 INFO main com.urbancode.ds.UDeployServer - stopped 2015-04-30 20:42:30,027 INFO main com.urbancode.ds.UDeployServer - Stopping resource role scheduler... 2015-04-30 20:42:30,032 INFO main com.urbancode.ds.UDeployServer - stopped 2015-04-30 20:42:30,032 INFO main com.urbancode.ds.UDeployServer - Stopping scheduler... 2015-04-30 20:42:30,033 INFO main com.urbancode.ds.UDeployServer - scheduler stopped 2015-04-30 20:42:30,033 INFO main com.urbancode.ds.UDeployServer - Stopping event service... 2015-04-30 20:42:30,034 WARN main com.urbancode.air.services.event.EventService - 11 EventListeners left registered at shutdown 2015-04-30 20:42:30,034 WARN main com.urbancode.air.services.event.EventService - 2 EventListeners left registered at shutdown 2015-04-30 20:42:30,037 INFO main com.urbancode.ds.UDeployServer - event services stopped 2015-04-30 20:42:30,037 INFO main com.urbancode.ds.UDeployServer - done 2015-04-30 20:42:30,037 INFO main com.urbancode.ds.UDeployServer - Stopping agent task processor... 2015-04-30 20:42:30,041 ERROR main com.urbancode.ds.UDeployServer - Stopping agent task processor java.lang.NullPointerException at com.urbancode.ds.subsys.deploy.agent.AgentTaskBatcher.stop(AgentTaskBatcher.java:66) at com.urbancode.ds.UDeployServer.shutdown(UDeployServer.java:834) at com.urbancode.container.tomcat.Container.run(Container.java:105) at com.urbancode.ds.UDeployServer.main(UDeployServer.java:289) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:76) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:607) at com.urbancode.launcher.Launcher.invokeMainMethod(Launcher.java:235) at com.urbancode.launcher.Launcher.launch(Launcher.java:161) at com.urbancode.launcher.Launcher.main(Launcher.java:89) 2015-04-30 20:42:30,041 INFO main com.urbancode.ds.UDeployServer - Stopping network connectors...
[root@bnmtp020 log]# cat /etc/redhat-release Red Hat Enterprise Linux Server release 6.3 (Santiago) [root@bnmtp020 log]#
Please provide help to resolve this issue.
Thanks in advance !
Also, just want to mention that I tried to set the JAVA_HOME to IBM JRE just before starting the UCD server with no luck as the errors remains same
Answer by abhipatti (2677) | May 06, 2015 at 12:29 PM
The cause of the issue was due to
" The file encryption.keystore contains a secret key used to encrypt secured properties stored in the UrbanCode Deploy Database. The IBM JDK cannot open the file encryption.keystore created by the OpenJDK because the underlying formats are different.
As a consequence, any UrbanCode Deploy server installed with the OpenJDK cannot start with the IBM JDK because the server cannot read the secured properties from the database."
As mentioned in the technote - http://www-01.ibm.com/support/docview.wss?uid=swg21692970
User contacted the support and supported provided a utility to to convert the encryption.keystore created by the OpenJDK into a keystore that the IBM JDK can read and it resolved the issue
Answer by ucdabhi (16) | Apr 30, 2015 at 12:04 PM
The reason you are unable to start the UCD server is because , during the installation you have provided OpenJDK . But the JAVA_HOME points to IBM JRE due to which the UCD which has JAVA_HOME pointed to IBm JRE is unable to use keystore created by openjdk when starting the server.
This is reason you are seeing the following error
Caused by: java.io.IOException: com.sun.crypto.provider.SealedObjectForKeyProtector at com.ibm.crypto.provider.JceKeyStore.engineLoad(Unknown Source)
To resolve the issue you need to set JAVA_HOME to explicitly use the OPEN JDK and start the server again
Linux UCD agent service as non root 1 Answer
Jenkins Plugin for UCR is not working 1 Answer
REST API run application process result 0 Answers
Jenkins urbancode plugin gets error publishing a second time 1 Answer
Urbancode Deploy Agent connection 3 Answers