2013-05-02 47 views
0

晚上好,我在Glassfish 3.1.2中遇到了一個奇怪的問題,每當我運行我的應用程序(它不運行),我看着eclipse控制檯,我發現這些奇怪的例外:Glassfish:java.net.BindException:範圍內沒有空閒端口

SEVERE: doSelect IOException java.net.BindException: No free port within range: 8181=com.sun.en[email protected]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: 370[email protected]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頁面,請求的資源不可用(),爲了更清楚起見,這裏是我的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.xhtmlWebContent

回答

3

位於你可能已經在該端口上運行的現有服務器。檢查你的進程列表,看是否有任何東西在後臺運行,並監聽這些端口。

$ sudo netstat -lpn | grep 8181 

如果有東西在運行殺死進程並嘗試重新啓動服務器。