Java 无法从URL位置导入Spring安全bean配置文件

Java 无法从URL位置导入Spring安全bean配置文件,java,spring,spring-security,Java,Spring,Spring Security,我正在我的web应用程序中实现spring安全框架。 我的ear中有所有必需的spring security jar文件。此ear还包含我的web app war文件。我创建了另一个jar文件,该文件驻留在ear中,并包含所有与安全性相关的代码(如自定义提供程序等)因此,我可以在将来的另一个web应用中使用它。此安全jar文件还包含spring security bean配置文件,我正在将该文件导入到我的web应用中,但在jboss中部署ear时它会给我异常。下面是异常和我的代码详细信息 Cau

我正在我的web应用程序中实现spring安全框架。 我的ear中有所有必需的spring security jar文件。此ear还包含我的web app war文件。我创建了另一个jar文件,该文件驻留在ear中,并包含所有与安全性相关的代码(如自定义提供程序等)因此,我可以在将来的另一个web应用中使用它。此安全jar文件还包含spring security bean配置文件,我正在将该文件导入到我的web应用中,但在jboss中部署ear时它会给我异常。下面是异常和我的代码详细信息

Caused by: org.springframework.beans.factory.BeanDefinitionStoreException: IOException
parsing XML document from class path resource [META-INF/authbeans.xml]; nested
exception is java.io.FileNotFoundException: class path resource [META-
INF/authbeans.xml] cannot be opened because it does not exist at   

org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions  
(XmlBeanDefinitionReader.java:341)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions
(XmlBeanDefinitionReader.java:302)
at   
org.springframework.beans.factory.support.AbstractBeanDefinitionReader.
loadBeanDefinitions(AbstractBeanDefinitionReader.java:143)
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.
loadBeanDefinitions(AbstractBeanDefinitionReader.java:178)
at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.
importBeanDefinitionResource(DefaultBeanDefinitionDocumentReader.java:186)
... 154 more 
下面是我的web应用程序的web.xml条目

<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
   /WEB-INF/applicationContext.xml          
</param-value>
</context-param>
我在JBOSS 5.0.1中尝试了这一点,现在应用程序能够找到authbeans.xml,但仍然无法在ear的lib目录中找到spring安全jar。 当我将所有SpringSecurityJAR复制到与mySecurity.jar相同的级别时(意思是直接在ear中,而不是在lib文件夹中),它可以识别并正常工作

但我想把我所有的第三方JAR都保存在ear的lib目录中。这是jboss特有的问题吗

更换

 <import resource="classpath:META-INF/authbeans.xml" />



升级到JBOSS-5后,JBOSS 4.2在识别ear中放置的jar方面似乎有问题。

您能发布security.jar的结构吗?META-INF在该jar的根级别吗?security.jar在同一级别(jar的根级别)有com和META-INF。您将它部署到哪个应用服务器?您将
security.jar存放在哪里?所有jar和war都在项目的ear文件中“所有jar和war都在项目的ear文件中”--security.jar是直接在ear中还是在war中?security.jar直接在ear文件中。
    MyEar
    |-- lib\ (contains all spring security jar files)
    |    
    |-- mySecurity.jar (contains all security related custom code also authbeans.xml)
    |
    |-- myWar
           |-- META-INF/MANIFEST.MF (entries for spring security jars & mySecurity.jar)
           |
           |-- WEB-INF
                   |-- applicationContext.xml (authbeans.xml included)
                   |-- lib\ (local jar files)
 <import resource="classpath:META-INF/authbeans.xml" />
 <import resource="classpath:/META-INF/authbeans.xml" />