2011-07-29 103 views
0

我有一個Mavenized Spring MVC項目,它使用jetty插件在本地或遠程部署(通過所有測試)。瀏覽器中顯示的JSTL標記

但是,當我嘗試將war文件部署到tomcat 6服務器時,我在源文件中看到jstl標籤。 JSTL jar文件位於lib文件夾中,啓動時不顯示錯誤。

因此,如果我訪問http://myserver:8081/我看到了着陸頁,但是應該使用jstl核心標籤的元素只是轉儲原始來源。

<html xmlns:c="http://java.sun.com/jsp/jstl/core"><c:url value="resources" var="resources_url"/><c:url value="/" var="home_url"/><head> 

<c:choose><c:when test="true"><ul><c:forEach varStatus="x" var="entry" items="[SyndEntryImpl.contributors=[] 
SyndEntryImpl.contents=[] 
SyndEntryImpl.updatedDate=Wed Jul 27 13:24:29 EDT 2011 
SyndEntryImpl.link=http://myserver/2011/07/27/Capability+Management+-+Community+Style 
SyndEntryImpl.foreignMarkup=[] 
SyndEntryImpl.links[0].hreflang=null 

包括罐:

webapps/ROOT/WEB-INF/lib/ 
|-- antlr-2.7.6.jar 
|-- aopalliance-1.0.jar 
|-- asm-3.1.jar 
|-- aspectjlib-1.6.2.jar 
|-- aspectjrt-1.6.7.jar 
|-- aspectjweaver-1.6.7.jar 
|-- cglib-2.2.jar 
|-- common-2.1.0.jar 
|-- commons-beanutils-1.8.0.jar 
|-- commons-codec-1.4.jar 
|-- commons-collections-3.1.jar 
|-- commons-digester-1.8.1.jar 
|-- commons-io-1.2.jar 
|-- commons-lang-2.4.jar 
|-- commons-logging-1.0.4.jar 
|-- dom4j-1.6.1.jar 
|-- ecore-2.1.0.jar 
|-- ehcache-core-2.1.1.jar 
|-- emf-2.1.0.jar 
|-- events-1.0.jar 
|-- health-2.0-BETA-6.jar 
|-- hibernate-annotations-3.5.6-Final.jar 
|-- hibernate-commons-annotations-3.2.0.Final.jar 
|-- hibernate-core-3.5.6-Final.jar 
|-- hibernate-entitymanager-3.5.6-Final.jar 
|-- hibernate-jpa-2.0-api-1.0.0.Final.jar 
|-- hibernate-validator-4.1.0.Final.jar 
|-- jackson-core-asl-1.6.4.jar 
|-- jackson-mapper-asl-1.6.4.jar 
|-- javassist-3.9.0.GA.jar 
|-- jdom-1.0.jar 
|-- joda-time-1.6.jar 
|-- jsr250-api-1.0.jar 
|-- jstl-1.1.2.jar 
|-- jta-1.1.jar 
|-- log4j-1.2.14.jar 
|-- logging-1.1.jar 
|-- mysql-connector-java-5.1.8.jar 
|-- rome-1.0.0.jar 
|-- slf4j-api-1.5.11.jar 
|-- slf4j-log4j12-1.4.3.jar 
|-- spring-aop-3.0.5.RELEASE.jar 
|-- spring-asm-3.0.5.RELEASE.jar 
|-- spring-beans-3.0.5.RELEASE.jar 
|-- spring-context-3.0.5.RELEASE.jar 
|-- spring-context-support-3.0.5.RELEASE.jar 
|-- spring-core-3.0.5.RELEASE.jar 
|-- spring-expression-3.0.5.RELEASE.jar 
|-- spring-jdbc-3.0.5.RELEASE.jar 
|-- spring-jms-3.0.5.RELEASE.jar 
|-- spring-orm-3.0.5.RELEASE.jar 
|-- spring-tx-3.0.5.RELEASE.jar 
|-- spring-web-3.0.5.RELEASE.jar 
|-- spring-webmvc-3.0.5.RELEASE.jar 
|-- tiles-api-2.1.4.jar 
|-- tiles-core-2.1.4.jar 
|-- tiles-jsp-2.1.4.jar 
|-- tiles-servlet-2.1.4.jar 
|-- urlrewritefilter-3.1.0.jar 
|-- validation-api-1.0.0.GA.jar 
`-- xml-apis-1.0.b2.jar 

我敢肯定,是不足以幫助,只是讓我知道哪些文件/日誌可以幫助我將它們附加。

+0

您可以在上面的樹中看到缺少的「standard-1.1.2.jar」,這是一個maven依賴範圍問題,請參閱下面的答案。 – Eddie

回答

0

嗯,這是非常愚蠢的,但儘管包含JSTL和瓷磚罐,但TagLib的核心jar卻沒有。這在Maven中是一個「提供」的依賴。

這解釋了爲什麼它被包含在Jetty插件中,但被遺漏在我的最終戰爭文件中。改變它來編譯範圍,一切工作正常。

<dependency> 
     <groupId>taglibs</groupId> 
     <artifactId>standard</artifactId> 
     <version>1.1.2</version> 
     <scope>compile</scope> 
    </dependency> 
相關問題