2012-11-29 185 views
0

我在Netbeans中創建了一個Java Web項目,index.jsp文件默認創建爲「Hello World」。我想跑,但提示以下錯誤: -Netbeans7.1.1 - tomcat 6.0.35部署錯誤 - 部署錯誤:未授權訪問Tomcat服務器

Deployment error: Access to Tomcat server has not been authorized. Set the correct username and password with the "manager" role in the Tomcat customizer in the Server Manager.See the server log for details.

閱讀一些博客後,我修改tomcat-users.xml文件,目前它看起來像 -

<tomcat-users> 
    <!-- 
    <role rolename="tomcat"/> 
    <role rolename="role1"/> 
    <user username="tomcat" password="tomcat" roles="tomcat"/> 
    <user username="both" password="tomcat" roles="tomcat,role1"/> 
    <user username="role1" password="tomcat" roles="role1"/> 
--> 
    <role rolename="manager"/> 
    <role rolename="admin"/> 
    <role rolename="standard"/> 
    <user username="admin" password="admin" roles="admin,manager,standard"/> 
</tomcat-users> 

此外,檢查用戶名和密碼在netbeans中的Tools->Servers->Connection下,其正確的即admin/admin。

但仍然收到相同的部署錯誤。

它顯示錯誤build-impl.xml一致 -

<nbdeploy clientUrlPart="${client.urlPart}" debugmode="true" forceRedeploy="${forceRedeploy}"/> 

難道乾淨建設,但沒有運氣。

的Apache Tomcat日誌顯示 -

Nov 29, 2012 6:10:28 PM org.apache.catalina.core.StandardHostValve custom 
SEVERE: Exception Processing ErrorPage[errorCode=401, location=/401.jsp] 
org.apache.jasper.JasperException: Unable to compile class for JSP 
    at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:604) 
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:328) 
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) 
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
    at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646) 
    at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:438) 
    at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374) 
    at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302) 
    at org.apache.catalina.core.StandardHostValve.custom(StandardHostValve.java:421) 
    at org.apache.catalina.core.StandardHostValve.status(StandardHostValve.java:342) 
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143) 
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) 
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) 
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859) 
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602) 
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) 
    at java.lang.Thread.run(Thread.java:722) 
Caused by: java.io.FileNotFoundException: C:\Program Files (x86)\apache-tomcat-6.0.35\work\Catalina\localhost\manager\org\apache\jsp\_401_jsp.java (The system cannot find the path specified) 
    at java.io.FileOutputStream.open(Native Method) 
    at java.io.FileOutputStream.<init>(FileOutputStream.java:212) 
    at java.io.FileOutputStream.<init>(FileOutputStream.java:104) 
    at org.apache.jasper.compiler.Compiler.setupContextWriter(Compiler.java:298) 
    at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:230) 
    at org.apache.jasper.compiler.Compiler.compile(Compiler.java:354) 
    at org.apache.jasper.compiler.Compiler.compile(Compiler.java:334) 
    at org.apache.jasper.compiler.Compiler.compile(Compiler.java:321) 
    at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:592) 
    ... 20 more 

Nov 29, 2012 6:10:36 PM org.apache.catalina.core.StandardHostValve custom 
SEVERE: Exception Processing ErrorPage[errorCode=401, location=/401.jsp] 
org.apache.jasper.JasperException: Unable to compile class for JSP 
    at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:604) 
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:328) 
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) 
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
    at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646) 
    at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:438) 
    at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374) 
    at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302) 
    at org.apache.catalina.core.StandardHostValve.custom(StandardHostValve.java:421) 
    at org.apache.catalina.core.StandardHostValve.status(StandardHostValve.java:342) 
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143) 
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) 
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) 
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859) 
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602) 
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) 
    at java.lang.Thread.run(Thread.java:722) 
Caused by: java.io.FileNotFoundException: C:\Program Files (x86)\apache-tomcat-6.0.35\work\Catalina\localhost\manager\org\apache\jsp\_401_jsp.java (The system cannot find the path specified) 
    at java.io.FileOutputStream.open(Native Method) 
    at java.io.FileOutputStream.<init>(FileOutputStream.java:212) 
    at java.io.FileOutputStream.<init>(FileOutputStream.java:104) 
    at org.apache.jasper.compiler.Compiler.setupContextWriter(Compiler.java:298) 
    at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:230) 
    at org.apache.jasper.compiler.Compiler.compile(Compiler.java:354) 
    at org.apache.jasper.compiler.Compiler.compile(Compiler.java:334) 
    at org.apache.jasper.compiler.Compiler.compile(Compiler.java:321) 
    at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:592) 
    ... 20 more 

Nov 29, 2012 6:10:36 PM org.apache.catalina.core.StandardHostValve custom 
SEVERE: Exception Processing ErrorPage[errorCode=401, location=/401.jsp] 
org.apache.jasper.JasperException: org.apache.jasper.JasperException: Unable to load class for JSP 
    at org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:161) 
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:340) 
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) 
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
    at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646) 
    at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:438) 
    at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374) 
    at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302) 
    at org.apache.catalina.core.StandardHostValve.custom(StandardHostValve.java:421) 
    at org.apache.catalina.core.StandardHostValve.status(StandardHostValve.java:342) 
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143) 
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) 
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) 
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859) 
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602) 
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) 
    at java.lang.Thread.run(Thread.java:722) 
Caused by: org.apache.jasper.JasperException: Unable to load class for JSP 
    at org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:630) 
    at org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:149) 
    ... 20 more 
Caused by: java.lang.ClassNotFoundException: org.apache.jsp._401_jsp 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:366) 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354) 
    at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:134) 
    at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:66) 
    at org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:628) 
    ... 21 more 

有誰PLZ建議?謝謝。

+0

您是否在更改tomcat-users.xml之後重新啓動了tomcat? –

+0

Paulius Matulionis - 是的,我確實重新啓動了它。 – anujin

+0

我對Netbeans瞭解不多,但我聽說有時候它會對你的應用程序做一些蠢事。我建議使用clean和build來構建你的項目,從命令行啓動tomcat,並嘗試從http:// localhost:8080/manager/html,tomcat的管理頁面手動部署你的應用程序,並檢查服務器日誌發生。 –

回答

0

我想通了。使用netbeans 7,也需要tomcat 7。 tomcat 6沒有工作。