2014-06-16 53 views
0

我試圖在我的glassfish服務器中部署一些ejb(jar)和一場戰爭。但是,我的Web應用程序使用Struts2的春季安全,當我部署的耳朵我得到這個異常:Error在戰爭中部署EAR與Spring Security

SEVERE: Context initialization failed 
org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: The classes from the spring-security-web jar (or one of its dependencies) are not available. You need these to use <http> 
Offending resource: ServletContext resource [/WEB-INF/security.xml]; nested exception is java.lang.NoClassDefFoundError: org/springframework/web/filter/GenericFilterBean 

當我部署戰我沒有得到這個例外。我做錯了什麼?

我沒有使用Maven

+0

你春季安全罐子只是在'WEB-INF \ lib'? –

回答

0

java.lang.NoClassDefFoundError: org/springframework/web/filter/GenericFilterBean

消息顯然說明你缺少GenericFilterBean類。

本組位於spring-web-x.x.x.RELEASE.jar之內。

Download (the right version of) that JAR並將其包含在您的EAR中以解決問題。

+0

你如何解釋.war部署工作正常? –

+0

1.在部署EAR時,EAR或WAR中的庫在哪裏? 2.你有spring-web -... jar文件嗎? –

+0

@andrea嗨,我在戰爭中導入了spring-web jar和其他spring安全依賴關係,我可以部署這場戰爭,但是當我將戰爭包裝在耳朵中時會出現問題 – rafuru

0

我面臨類似的問題,因爲彈簧web jar在內部戰爭和其他彈簧安全瓶在耳邊,並如安德烈Ligios所述,EAR沒有看到戰爭的。我把春天的網絡戰爭移到了耳邊,它工作。

4.1.6春,春季安全4.0.1

-Rakesh生主