2010-08-19 60 views
14

通过调用6.1.24中的API启动码头。Jetty中缺少JSP支持,或混淆日志消息?

JSP 2.1组件位于类路径中。

org.mortbay.jetty:jsp-2.1-jetty:jar:6.1.24:compile 

但日志说:

2010-08-19 08:16:19.443:INFO::NO JSP Support for /basis_ws, did not find org.apache.jasper.servlet.JspServlet 

使用相应的maven-码头-插件时,我没有看到这条消息。

我错过了什么?

回答

12

我不做Jetty,所以我looked有点圆,发现this blog。这里有一个引用的相关性:

但是,这是不够的,如果你启动服务器,你会得到这样的错误:

INFO::NO JSP Support for /, did not find org.apache.jasper.servlet.JspServlet

所以,你必须启用码头JSP支持通过附加无证选项码头启动脚本:

$ java -jar jetty.jar OPTIONS=Server,jsp
+0

感谢您的期待,但是它对嵌入式环境的映射并不明显。 '开始脚本'根本不涉及。但是,这是我可以追踪到源头的一条线索。 – bmargulies 2010-08-19 16:29:00

+0

不客气。 – BalusC 2010-08-19 16:40:49

+0

这是正确的,它只是今天一个人应该写类似 --module =服务器,jmx,资源,websocket,分机,加,jsp,注释jsp-impl = apache 而不是OPTIONS - http:// stackoverflow .com/questions/24524527/jetty-9-module-instead-of-options – shabunc 2015-03-10 22:26:43

21

我得到了这个问题,当我第一次开始与码头。问题是,只包括jsp罐子似乎不够。这是我用来解决它的Maven依赖列表。

<dependency> 
     <groupId>org.eclipse.jetty</groupId> 
     <artifactId>jetty-server</artifactId> 
     <version>7.2.2.v20101205</version> 
    </dependency> 
    <dependency> 
     <groupId>org.eclipse.jetty</groupId> 
     <artifactId>jetty-webapp</artifactId> 
     <version>7.2.2.v20101205</version> 
    </dependency> 

    <dependency> 
     <groupId>org.eclipse.jetty</groupId> 
     <artifactId>jetty-jsp-2.1</artifactId> 
     <version>7.2.2.v20101205</version> 
    </dependency> 
    <dependency> 
     <groupId>org.mortbay.jetty</groupId> 
     <artifactId>jsp-2.1-glassfish</artifactId> 
     <version>2.1.v20100127</version> 
    </dependency> 
+0

谢谢,这已经为我做了诡计 – 2011-04-05 14:32:18

+0

令人惊叹的答案。非常感谢! – jcdmb 2012-08-11 13:22:46

+0

辉煌的工作,拯救了我的一天,像一个魅力:) – 2013-08-08 16:58:14

0

在你使用Ubuntu的下码头6的情况下,你可能会打我这里所描述的问题:https://serverfault.com/a/730626/293452

简单地说,在码头6.x的包的相关bug会阻止从码头启用由于错误地链接了Tomcat Jasper库,JSP支持。