更新时间:2023-12-04 14:49:58
这个问题经常出现,因此我创建了一个在启用JSP的情况下使用Embedded Jetty的示例项目.
This question comes up often enough, so I created an example project of using Embedded Jetty with JSP enabled.
https://github.com/jetty-project/embedded-jetty-jsp/
将此项目加载到您喜欢的IDE中.
Load up this project into your favorite IDE.
运行 org.eclipse.jetty.demo.Main
类,然后使用浏览器并打开 http://localhost:8080/
Run the org.eclipse.jetty.demo.Main
class and then use your browser and open http://localhost:8080/
快速浏览
src/main/java/org/eclipse/jetty/demo/Main.java
包含创建/配置/并启动嵌入式服务器的部分.
src/main/java/org/eclipse/jetty/demo/Main.java
contains the part that creates / configures / and starts the embedded server.
请特别注意:
jspServletHolder()
org.eclipse.jetty.containerInitializers
ServletContainerInitializersStarter
bean InstanceManager
参考 javax.servlet.context.tempdir
org.apache.jasper.compiler.disablejsr199
设置为 false
以使用标准JavaC编译器 getUrlClassLoader()
defaultServletHolder()
jspServletHolder()
org.eclipse.jetty.containerInitializers
needs to be setup for the JSP initializersServletContainerInitializersStarter
bean needs to be addedInstanceManager
reference needs to be addedjavax.servlet.context.tempdir
needs to be createdorg.apache.jasper.compiler.disablejsr199
to false
to use the standard JavaC compilergetUrlClassLoader()
defaultServletHolder()
src/main/java/com/acme/DateServlet.java
是如何从Servlet转发到JSP的示例.
src/main/java/com/acme/DateServlet.java
is an example of how to forward to a JSP from a Servlet.
The DateServlet is mapped to path spec of /date/
in Main.java
因此,一旦您点击 http://localhost:8080/date/
,该请求就会进入servlet,该servlet进而转发至
So once you hit http://localhost:8080/date/
the request will hit the servlet, which in turn forwards to to /test/tag2.jsp