Summary
Error
The AdminUI cannot be started on OML 9.20
Ports 9662 and 9663 are not in LISTEN state:
# netstat -an | grep -e 9662 -e 9663
#
The logfile servicemix.log contains errors referring to an issue with the file jetty.xml:
ERROR - 2015-04-15 08:49:30,381 | AutoDeploymentService.updateServiceAssembly(359) | Failed to update Service Assembly: midas-webapp
java.lang.Exception: <?xml version="1.0" encoding="UTF-8"?>
<jbi-task xmlns="http://java.sun.com/xml/ns/jbi/management-message" version="1.0">
<jbi-task-result>
<frmwk-task-result>
.....
<loc-message>org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'jetty-launcher' defined in file [/opt/OV/OMU/adminUI/work/service-assemblies/midas-webapp/version_1/sus/servicemix-lwcontainer/midas-jetty/servicemix.xml]: Cannot resolve reference to bean 'jetty' while setting bean property 'server'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'jetty' defined in file [/opt/OV/OMU/adminUI/work/service-assemblies/midas-webapp/version_1/sus/servicemix-lwcontainer/midas-jetty/servicemix.xml]: Invocation of init method failed; nested exception is org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Unexpected failure during bean definition parsing
Offending resource: URL [file:conf/jetty.xml]
Bean 'connectors'; nested exception is org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Unexpected failure during bean definition parsing
Offending resource: URL [file:conf/jetty.xml]
.....
Cause
The issue is caused by duplicated lines in the /opt/OV/OMU/adminUI/conf/jetty.xml file for "truststore" and trustPassword". Also the values for "password", "keyPassword" and "trustPassword" value entries were not encrypted:
<property value="password" name="password"/>
<property value="password" name="keyPassword"/>
<property name="trustPassword" value="password" />
Fix
To resolve this issue the default settings for "password", "keyPassword" and "trustPassword" should be entered in jetty.ml file. The default encrypted value for each password is '3EADDDC4F7762ECEE481A8D39714D0DE':
<bean autowire="default" class="org.mortbay.jetty.security.SslSocketConnector" dependency-check="default" lazy-init="default">
<!--<property name="host" value="[hostname]"/>-->
<property name="port" value="9663" />
<property name="headerBufferSize" value="12000" />
<property name="maxIdleTime" value="30000" />
<property name="keystore" value="conf/servicemix/keystore_webapp.jks" />
<property name="keystoreType" value="jks" />
<property name="password" value="3EADDDC4F7762ECEE481A8D39714D0DE" />
<property name="keyPassword" value="3EADDDC4F7762ECEE481A8D39714D0DE" />
<property name="trustPassword" value="3EADDDC4F7762ECEE481A8D39714D0DE" />
<property name="truststore" value="conf/servicemix/truststore_webapp.jks" />
<property name="handshakeTimeout" value="2000" />
<property name="truststoreType" value="jks" />
</bean>
After the jetty.xml file is fixed stop the AdminUI and recompiles all web assemblies that are needed for a correct display of the AdminUI web interface bu running:
#/opt/OV/OMU/adminUI/adminui webassemblies
The following BUILD SUCCESSFUL message should appear:
[war] Building war:
/opt/OV/OMU/adminUI/work/tmp/webdeploy/midas.war
[echo] copying war file to webapps
[copy] Copying 1 file to /opt/OV/OMU/adminUI/webapps
[delete] Deleting directory
/opt/OV/OMU/adminUI/work/tmp/webdeploy
[delete] Deleting directory /opt/OV/OMU/adminUI/webapps/midas
[echo] done. restart server.
BUILD SUCCESSFUL
Total time: <#> minute <#> seconds
Finally restart the AdminUI by running the following command:
#/opt/OV/OMU/adminUI/adminui restart
The AdminUI should be accessible on port 9662 now.