Description
If the Jetty port is taken (by a separate Tomcat instance) there is a series of exceptions generated during startup. Some of these are:
java.net.BindException: Address already in use
Exception occured while attempting to fully start: objectName=geronimo.server:J2EEApplication=null,J2EEModule=org/apache/geronimo/
Server,J2EEServer=geronimo,j2eeType=GBean,name=JettyWebConnector
java.lang.IllegalStateException: Cannot transition to running state from failed
java.lang.IllegalStateException: Attribute is not persistent Attribute Name: address, Type: class java.net.InetSocketAddress, GBeanInstance: Jetty Connector HTTP
at org.apache.geronimo.gbean.runtime.GBeanAttribute.getPersistentValue(GBeanAttribute.java:324)
at org.apache.geronimo.gbean.runtime.GBeanInstance.getAttribute(GBeanInstance.java:627)
at org.apache.geronimo.kernel.basic.BasicKernel.getAttribute(BasicKernel.java:163)
at org.apache.geronimo.system.main.ProgressBarStartupMonitor.wrapUp(ProgressBarStartupMonitor.java:175)
The last one is the one that concerns me here. The attribute in question is JettyConnector.getAddress, which is clearly not persistent (there's no setter, and the declaration in the GBeanInfo says it's not persistent). However, the logic in GBeanInstance.getAttribute:627 seems to conclude that an attribute is persistent based on the state of the GBean not based on the characteristics of the attribute itself – I'm not sure what's going on here.