我最近开始学习jsp,并选择了eclipse作为我的工作IDE,而Glassfish 4作为服务器。在完成所有必要的设置后,我建立了我的第一个JSP脚本和GlassFish服务器,本地主机上运行它后,我得到了一个错误,说明未在服务器上运行JSP代码
org.apache.jasper.JasperException: PWC6345: There is an error in invoking javac. A full JDK (not just JRE) is required
试图几乎在互联网上提供的一切约3-4小时后,我放弃了,下载apache-Tomcat。通过运行startup.bat启动tomcat后启动。但是当我尝试加载localhost:8080时,同一个旧的glassfish页面打开。即使我停止GlassFish中使用asadmin stop-domain domain1
不过我一直得到相同的本地主机页面打开每当我试图打开本地主机:8080
当我开始跑在Eclipse内部一个新的Apache Tomcat服务器的动态Web项目它不停地说
Several ports (8005, 8009) required by Tomcat v7.0 Server at localhost are already in use. The server may already be running in another process, or a system process may be using the port. To start this server you will need to stop the other process or change the port number(s).
我想这仍然是使用它们的GlassFish的,但我不知道如何阻止它。是的,这里一切都搞砸了。
之后,我删除了eclipse中的所有动态web项目和所有其他服务器(在eclipse中)。并且一个接一个地创建了tomcat和glassfish来运行jsp。它运行后控制台窗口中提供了以下信息
Mar 13, 2014 12:12:39 AM org.apache.catalina.core.AprLifecycleListener init
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jdk1.7.0_51\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:/Program Files/Java/jre7/bin/client;C:/Program Files/Java/jre7/bin;C:/Program Files/Java/jre7/lib/i386;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\ System32\WindowsPowerShell\v1.0\;C:\Program Files\Java\jdk1.7.0_51\bin;C:\glassfish4\bin;C:\eclipse;;.
Mar 13, 2014 12:12:39 AM org.apache.tomcat.util.digester.SetPropertiesRule begin
WARNING: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:DemoJSP' did not find a matching property.
Mar 13, 2014 12:12:39 AM org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["http-bio-8080"]
Mar 13, 2014 12:12:39 AM org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["ajp-bio-8009"]
Mar 13, 2014 12:12:39 AM org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 476 ms
Mar 13, 2014 12:12:39 AM org.apache.catalina.core.StandardService startInternal
INFO: Starting service Catalina
Mar 13, 2014 12:12:39 AM org.apache.catalina.core.StandardEngine startInternal
INFO: Starting Servlet Engine: Apache Tomcat/7.0.52
Mar 13, 2014 12:12:40 AM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["http-bio-8080"]
Mar 13, 2014 12:12:40 AM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["ajp-bio-8009"]
Mar 13, 2014 12:12:40 AM org.apache.catalina.startup.Catalina start
INFO: Server startup in 474 ms
和Eclipse的Web浏览器中打开一个窗口,说HTTP Status 404 - Not Found The requested resource is not available.
,当我试图在GlassFish没有运行它刚刚发生什么。然而,当我在glassfish服务器页面打开管理页面时,我尝试使用eclipse运行jsp文件。当我尝试启动它时,打开一个新网页HTTP Status 404 - Not Found The requested resource is not available.
当我停止glassfish并再次运行jsp时,eclipse的控制台窗口出现几乎3-4页的文本,我无法弄清楚一件事情。
现在我在这个领域是全新的。我对在系统中设置服务器没有多少了解。我只是按照互联网上提供的教程。现在虽然我已经停止了几次玻璃鱼,但仍然尝试打开本地主机时:8080
打开相同的glassfish服务器页面,而不是当前处于活动状态的tomcat。它的一切都搞砸了。我甚至不知道如何卸载这些服务器。我认为我通过选择eclipse并手动设置它们而犯了一个错误。使用Glassfish服务器软件包的NetBeans JavaEE应该会更好。
请有人让我摆脱这个混乱。这简直是痛苦的。并提前致谢。
编辑:问题部分解决,tomcat正在eclipse下工作。我不知道如何以及为什么,但在删除glassfish服务器之后,通过命令提示符停止了它,并在eclipse中创建了新的tomcat服务器。每当我尝试运行整个Dynamic web项目时,它都会给我一个404 HTTP错误。但是,如果我选择jsp文件并在服务器上单独运行,它将运行。但是,每当我尝试通过我的网络浏览器去localhost:8080,它仍然会将我带到glassfish页面,我已经停止了几次,并从eclipse中删除。
那么你有没有安装JDK? – Thunda
是的,我的系统中安装了jdk 1.7.0_51。 – allocated
那么http://stackoverflow.com/questions/16340711/tomcat-http-status-404解决了它。感谢所有其他答复。 – allocated