Glassfish:java.net.BindException:范围内没有自由端口

时间:2013-05-02 19:01:06

标签: glassfish-3 eclipse-indigo

晚上好,我在glassfish 3.1.2中遇到一个奇怪的问题,每当我运行我的应用程序(它没有运行)并且我看着eclipse控制台时,我发现了这些奇怪的异常:

SEVERE: doSelect IOException java.net.BindException: No free port within range: 8181=com.sun.enterprise.v3.services.impl.monitor.MonitorableSSLSelectorHandler@188fcca7
at com.sun.grizzly.TCPSelectorHandler.initSelector(TCPSelectorHandler.java:432)
at com.sun.grizzly.TCPSelectorHandler.preSelect(TCPSelectorHandler.java:378)
at com.sun.grizzly.SelectorHandlerRunner.doSelect(SelectorHandlerRunner.java:188)
at com.sun.grizzly.SelectorHandlerRunner.run(SelectorHandlerRunner.java:132)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)

SEVERE: doSelect IOExceptionjava.net.BindException: No free port within range: 3700=com.sun.enterprise.v3.services.impl.ServiceInitializerHandler@1b42f99d
at com.sun.grizzly.TCPSelectorHandler.initSelector(TCPSelectorHandler.java:432)
at com.sun.grizzly.TCPSelectorHandler.preSelect(TCPSelectorHandler.java:378)
at com.sun.grizzly.SelectorHandlerRunner.doSelect(SelectorHandlerRunner.java:188)
at com.sun.grizzly.SelectorHandlerRunner.run(SelectorHandlerRunner.java:132)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)

我在domain.xml glassfish\domains\domain1\config内更改了一些配置我增加了以下2个元素,但没有改变

 <jvm-options>-XX:MaxPermSize=512m</jvm-options>
 <jvm-options>-XX:PermSize=512m</jvm-options>

任何人都可以帮助我。

注意:我从进程列表中删除了java.exe,因为sehrope建议并且异常已解决,但是服务器将我重定向到HTTP Status 404页面,请求的资源不可用(),为了更加清晰,这里&#39 ;是我的web.xml文件:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"   xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee   http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
<display-name>Gambak</display-name>
<welcome-file-list>
    <welcome-file>login.jsf</welcome-file>
</welcome-file-list>
<servlet>
    <servlet-name>Faces Servlet</servlet-name>
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>*.jsf</url-pattern>
</servlet-mapping>

,文件login.xhtml位于WebContent

2 个答案:

答案 0 :(得分:3)

您可能在该端口上运行现有服务器。检查您的进程列表,看看是否有任何东西在后台运行并监听这些端口。

$ sudo netstat -lpn | grep 8181

如果有什么东西在运行,请终止该进程并尝试重新启动服务器。

答案 1 :(得分:0)

我遇到了这个问题,并且在domain.xml中,在address标签中将IP配置为<network-listener属性是错误的...