从servlet到jsp的嵌入式码头

从servlet到jsp的嵌入式码头,第1张

从servlet到jsp的嵌入式码头

因此,我使用setWar和正确的jar来使其工作。使用此代码,可以直接寻址jsp(localhost:8080 /
result.jsp),更重要的是使用servlet(localhost:8080 /
hello).forward命令将其转发到jsp。这将使我能够通过jsp提供一些动态内容。

代码如下…(注意:Embedded Jetty =>不需要web.xml)

import java.io.File;import java.io.IOException;import javax.servlet.RequestDispatcher;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.eclipse.jetty.server.Handler;import org.eclipse.jetty.server.Server;import org.eclipse.jetty.server.handler.DefaultHandler;import org.eclipse.jetty.server.handler.HandlerList;import org.eclipse.jetty.servlet.ServletHolder;import org.eclipse.jetty.webapp.WebAppContext;public class RunHelloServlet {public static void main(String[] args) throws Exception {    System.setProperty("DEBUG", "true");    Server server = new Server(8080);    WebAppContext webappcontext = new WebAppContext();    webappcontext.setContextPath("/");    File warPath = new File("C:/dev/workspace/JettyTest", "src/main/webapp");    webappcontext.setWar(warPath.getAbsolutePath());    HandlerList handlers = new HandlerList();    webappcontext.addServlet(new ServletHolder(new HelloServlet()), "/hello");    handlers.setHandlers(new Handler[] { webappcontext, new DefaultHandler() });    server.setHandler(handlers);    server.start();}public static class HelloServlet extends HttpServlet {    private static final long serialVersionUID = 1L;    public HelloServlet() {    }    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {        // logic        try { request.getRequestDispatcher("/result.jsp").forward(request, response);        }        catch (Throwable e1) { e1.printStackTrace();        }    }}}

POM.xml …

<project xmlns="http://maven.apache.org/POM/4.0.0"     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0     http://maven.apache.org/xsd/maven-4.0.0.xsd">  <modelVersion>4.0.0</modelVersion>  <groupId>com.hp.it.kmcs.search</groupId>  <artifactId>JettyTest</artifactId>  <version>0.0.1-SNAPSHOT</version>  <packaging>jar</packaging>  <name>JettyTest</name>  <url>http://maven.apache.org</url><properties>    <jettyVersion>7.2.0.v20101020</jettyVersion></properties><dependencies>    <dependency>    <groupId>org.eclipse.jetty</groupId>    <artifactId>jetty-server</artifactId>    <version>7.6.0.RC1</version>    <type>jar</type>    <scope>compile</scope></dependency><dependency>    <groupId>org.eclipse.jetty</groupId>    <artifactId>jetty-util</artifactId>    <version>7.6.0.RC1</version>    <type>jar</type>    <classifier>config</classifier>    <scope>compile</scope></dependency><dependency>    <groupId>org.mortbay.jetty</groupId>    <artifactId>jsp-2.1-glassfish</artifactId>    <version>2.1.v20100127</version>    <type>jar</type>    <scope>compile</scope></dependency><dependency>    <groupId>org.eclipse.jdt.core.compiler</groupId>    <artifactId>ecj</artifactId>    <version>3.5.1</version>    <type>jar</type>    <scope>compile</scope></dependency><dependency>    <groupId>org.mortbay.jetty</groupId>    <artifactId>servlet-api-2.5</artifactId>    <version>6.1.14</version>    <type>jar</type>    <scope>compile</scope></dependency><dependency>    <groupId>org.eclipse.jetty</groupId>    <artifactId>jetty-webapp</artifactId>    <version>7.6.0.RC0</version>    <type>jar</type>    <scope>compile</scope>    </dependency></dependencies>  <build>    <plugins>      <plugin>        <!-- This plugin is needed for the servlet example -->        <groupId>org.mortbay.jetty</groupId>       <artifactId>jetty-maven-plugin</artifactId>        <version>${jettyVersion}</version>      </plugin>      <plugin>        <groupId>org.prehaus.mojo</groupId>        <artifactId>exec-maven-plugin</artifactId>        <version>1.1</version>        <executions>          <execution><goals><goal>java</goal></goals></execution>        </executions>        <configuration>          <mainClass>com.hp.it.kmcs.JettyTest.RunHelloServlet</mainClass>        </configuration>      </plugin>    </plugins>  </build></project>


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5007006.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-14
下一篇 2022-11-14

发表评论

登录后才能评论

评论列表(0条)

保存