Jetty + jax-ws影响jsp编译 - 它现在需要ant?

时间:2012-07-09 15:23:06

标签: java jsp jax-ws embedded-jetty

我们刚刚从地铁升级到最新的jax-ws代码,但出于某种原因,我们现在也必须运送ant。这似乎是jsp编译所需要的。

没有它我们得到

java.lang.NoClassDefFoundError: org/apache/tools/ant/BuildListener
    at org.apache.jasper.compiler.Compiler.initJavaCompiler(Compiler.java:742)
    at org.apache.jasper.compiler.Compiler.<init>(Compiler.java:131)
    at org.apache.jasper.JspCompilationContext.createCompiler(JspCompilationContext.java:288)
    at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:605)
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:360)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:486)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:380)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
    at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
    at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
    at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
    at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
    at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
    at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:440)
    ......

有没有办法删除对ant的依赖?

jax-ws如何影响未更改的jsp库?

由于 尼尔

1 个答案:

答案 0 :(得分:0)

Jetty声明“编译器 - 在运行时确定。对于Jetty是eclipse jdt编译器。”见http://docs.codehaus.org/display/JETTY/Jsp+Configuration

在构建期间,似乎没有打包core-3.1.1.jar(必须由jax-ws更改引起)。当缺少这个时,没有来自码头的警告,而是jasper回到尝试使用ant(然后导致类未找到异常)。

当我手动将core-3.1.1.jar包含到安装中时,jsp编译工作。