Jon*_*nas 36 windows jsp jetty eclipse-wtp
我正在尝试使用Eclipse 的Jetty WTP插件在Jetty上部署JSP页面.但我得到以下错误.它看起来像Jetty找不到javac
.我是否需要为Eclipse中的Jetty WTP插件执行任何设置,或者如何解决此问题?
如果我将项目作为.war
-file 导出到jetty\webapps
然后手动启动Jetty ,JSP页面工作正常java -jar start.jar
.但是如果我按照描述使用Eclipse的Jetty WTP插件进行部署,它就不起作用.
我有我的JAVA_HOME
设置C:\Program Files (x86)\Java\jdk1.7.0_01
,我在Windows 7上使用Jetty 8.0.4.
Servlet在当前设置下运行良好.有关如何为JSP页面解决此问题的任何建议?
HTTP ERROR 500
Problem accessing /MyJavaWeb/formProcess. Reason:
PWC6345: There is an error in invoking javac. A full JDK (not just JRE) is required
Caused by:
org.apache.jasper.JasperException: PWC6345: There is an error in invoking javac. A full JDK (not just JRE) is required
at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:92)
at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:378)
at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:119)
at org.apache.jasper.compiler.Jsr199JavaCompiler.compile(Jsr199JavaCompiler.java:208)
at org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:384)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:453)
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:625)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:492)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:378)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:558)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:488)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:520)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:233)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:973)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:417)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:192)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:907)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
at org.eclipse.jetty.server.Dispatcher.forward(Dispatcher.java:271)
at org.eclipse.jetty.server.Dispatcher.forward(Dispatcher.java:98)
at com.example.FormProcessServlet.doPost(FormProcessServlet.java:39)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:755)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:558)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:488)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:483)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:233)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:973)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:417)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:192)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:907)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:250)
at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:149)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:110)
at org.eclipse.jetty.server.Server.handle(Server.java:346)
at org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:442)
at org.eclipse.jetty.server.HttpConnection$RequestHandler.content(HttpConnection.java:941)
at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:801)
at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:224)
at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:51)
at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:586)
at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:44)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:598)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:533)
at java.lang.Thread.run(Unknown Source)
Run Code Online (Sandbox Code Playgroud)
Jon*_*nas 41
正如Jan Bartel所说,来自Jetty:如何配置JSP:
通过start.ini
在Eclipse 中的-file中添加以下行,它可以正常工作.
-Dorg.apache.jasper.compiler.disablejsr199=true
Run Code Online (Sandbox Code Playgroud)
Abd*_*ull 25
我也碰巧突然得到org.apache.jasper.JasperException: PWC6345
我的Eclipse安装和Jetty Maven插件(我用它从Eclipse中启动Jetty).
原因是我之前不久更新了我的JDK安装.在Eclipse内部,这导致将" 已安装的JRE " 更改为指向普通JRE安装而不是完整的JDK安装.Jasper需要JDK安装,因为Jasper需要javac
(JRE不提供).
就我而言,解决方案是为Eclipse提供JDK安装.为此,请选择Window - > Preferences - > Java - > Installed JREs.在这里,单击Add ...,然后指向您的JDK安装(在我的情况下,JRE home应该指向C:\Program Files (x86)\Java\jdk1.7.0_17
).单击完成.然后返回Installed JREs概述,删除旧的JRE引用并选择新添加的JDK安装.
使用Run-Jetty-Run插件运行webapp时出现PWC6345错误.
修复方法是更改"首选项"中的"执行环境"设置.由于我使用的是java 7,我需要更改JavaSE-1.7的设置.可能其他执行环境的行为也类似.
窗口 - >首选项 - > Java - >已安装的JRE - >执行环境
选择左侧的JavaSE-1.7 - >选择右侧的*jdk*1.7.x_xx
归档时间: |
|
查看次数: |
50130 次 |
最近记录: |