在嵌入式码头部署另一场战争

时间:2013-11-27 07:41:07

标签: java eclipse maven embedded-jetty embedded-tomcat-7

我不喜欢叠加流量。如果我违反任何规则,请道歉。

我可以启动jetty嵌入式服务器,但我想在同一程序中启动服务器之前部署一个战争。我在另一个文件夹中保留了我的外部战争,我尝试使用以下代码

final Server server = new Server();
    final WebAppContext webapp = new WebAppContext();
    webapp.setContextPath("/");
    final URL url = Main.class.getResource("war1.war");
    final String a = url.getPath();
    System.out.println(a);
    webapp.setWar(a);
    webapp.setExtractWAR(true);
    webapp.setCopyWebInf(true);
    server.setHandler(webapp);

    server.start();
    server.join();

这是一个错误。如果我做错了,请指导我。

2013-11-27 12:59:01.992:WARN:oejw.WebAppContext:Failed startup of context o.e.j.w.WebAppContext{/,[file:/C:/Users/admin/AppData/Local/Temp/JettyContext1841794772027580678/webinf/, file:/C:/Users/admin/AppData/Local/Temp/JettyContext1841794772027580678/webapp/]},/C:/Users/admiin/Documents/workspace-sts-3.1.0.RELEASE/JettyRunner/target/classes/war1.war
MultiException[java.lang.NoClassDefFoundError: org/apache/jasper/runtime/JspSourceDependent, java.lang.NoClassDefFoundError: org/apache/jasper/runtime/JspSourceDependent, java.lang.NoClassDefFoundError: org/apache/jasper/runtime/JspSourceDependent]
    at org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:718)
    at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:263)
    at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1238)
    at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:706)
    at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:480)
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
    at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:95)
    at org.eclipse.jetty.server.Server.doStart(Server.java:277)
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
    at Main.main(Main.java:39)

如果我需要做任何其他事情,请告诉我。我的目标是使用嵌入式tomcat / jetty服务器(任何网络服务器)部署外部战争。

0 个答案:

没有答案