[ http://issues.apache.org/jira/browse/GERONIMO-728?page=all ]
Kevan Miller resolved GERONIMO-728:
-----------------------------------
Fix Version: 1.0-M5
(was: 1.0)
Resolution: Fixed
Assign To: Kevan Miller (was: John Sisson)
I just verified that this problem was fixed in M5.
> Jetty gives misleading NPE on "port in use" condition
> -----------------------------------------------------
>
> Key: GERONIMO-728
> URL: http://issues.apache.org/jira/browse/GERONIMO-728
> Project: Geronimo
> Type: Improvement
> Components: web, dependencies
> Versions: 1.0-M3, 1.0-M5, 1.0-M4
> Reporter: Aaron Mulder
> Assignee: Kevan Miller
> Fix For: 1.0-M5
>
> When Jetty starts up but the port it wants is in use, you get an error like
> this:
> 19 ERROR [GBeanInstance] Problem in doFail of
> geronimo.server:J2EEApplication=null,J2EEModule=org/apache/geronimo/Server,J2EEServer=geronimo,j2eeType=GBean,name=JettyWebConnector
> java.lang.NullPointerException
> at org.mortbay.util.ThreadedServer.stop(ThreadedServer.java:544)
> at org.mortbay.http.SocketListener.stop(SocketListener.java:211)
> at
> org.apache.geronimo.jetty.connector.JettyConnector.doFail(JettyConnector.java:102)
> at
> org.apache.geronimo.gbean.runtime.GBeanInstance.createInstance(GBeanInstance.java:869)
> at
> org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:328)
> at
> org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:111)
> at
> org.apache.geronimo.gbean.runtime.GBeanInstance.start(GBeanInstance.java:486)
> at
> org.apache.geronimo.gbean.runtime.GBeanSingleReference.attemptFullStart(GBeanSingleReference.java:154)
> at
> org.apache.geronimo.gbean.runtime.GBeanSingleReference.targetAdded(GBeanSingleReference.java:127)
> at
> org.apache.geronimo.gbean.runtime.AbstractGBeanReference.addTarget(AbstractGBeanReference.java:242)
> at
> org.apache.geronimo.gbean.runtime.GBeanSingleReference$1.running(GBeanSingleReference.java:163)
> at
> org.apache.geronimo.kernel.basic.BasicLifecycleMonitor.fireRunningEvent(BasicLifecycleMonitor.java:155)
> at
> org.apache.geronimo.kernel.basic.BasicLifecycleMonitor.access$300(BasicLifecycleMonitor.java:38)
> at
> org.apache.geronimo.kernel.basic.BasicLifecycleMonitor$RawLifecycleBroadcaster.fireRunningEvent(BasicLifecycleMonitor.java:231)
> at
> org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:352)
> at
> org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:111)
> at
> org.apache.geronimo.gbean.runtime.GBeanInstanceState.startRecursive(GBeanInstanceState.java:133)
> at
> org.apache.geronimo.gbean.runtime.GBeanInstance.startRecursive(GBeanInstance.java:503)
> at
> org.apache.geronimo.kernel.basic.BasicKernel.startRecursiveGBean(BasicKernel.java:207)
> at
> org.apache.geronimo.gbean.runtime.GBeanInstanceState.startRecursive(GBeanInstanceState.java:141)
> at
> org.apache.geronimo.gbean.runtime.GBeanInstance.startRecursive(GBeanInstance.java:503)
> at
> org.apache.geronimo.kernel.basic.BasicKernel.startRecursiveGBean(BasicKernel.java:207)
> at org.apache.geronimo.system.main.Daemon.doStartup(Daemon.java:247)
> at org.apache.geronimo.system.main.Daemon.<init>(Daemon.java:81)
> at org.apache.geronimo.system.main.Daemon.main(Daemon.java:320)
> Only later does the BindException show up, whereas I believe the
> BindException should be first (and in fact only -- what good does the NPE
> do?).
> So what I think should happen is that we should trap a BindException, and if
> it comes up, don't try to stop the SocketListener (or at least don't generate
> another exception if it doesn't work). Then print an ERROR message including
> the port number (ERROR: Jetty unable to bind to port 8080). Then throw the
> BindException if the full stack trace would be useful.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira