Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java spring security web加载上下文时出错_Java_Spring_Junit_Spring Security - Fatal编程技术网

Java spring security web加载上下文时出错

Java spring security web加载上下文时出错,java,spring,junit,spring-security,Java,Spring,Junit,Spring Security,但是,当我在单元测试中加载上下文时,我得到了org.xml.sax.SAXParseException:文档类型声明包含或指向的标记声明必须格式良好 我的上下文文件如下所示: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:sec="http://www.springframework.org/schema

但是,当我在单元测试中加载上下文时,我得到了
org.xml.sax.SAXParseException:文档类型声明包含或指向的标记声明必须格式良好

我的上下文文件如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:sec="http://www.springframework.org/schema/security"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
           http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-3.0.xsd">

 // various beans here

 <sec:http use-expressions="true">
   <sec:intercept-url pattern="/admin*"
      access="hasRole('admin') and hasIpAddress('192.168.1.0/24')"/>
  </sec:http>

</beans>

//这里有各种各样的豆子
如果我没有包含
标记,我不会得到错误。如果我只包含
,我确实会得到错误

在我的pom中,我包括:

<dependancy>
    <groupId>org.springframework.security</groupId>
    <artifactId>spring-security-web</artifactId>
    <version>3.0.5.RELEASE</version>
</dependancy>

org.springframework.security
spring安全网
3.0.5.1发布

像这样的DTD文件

http://www.springframework.org/schema/security/spring-security-3.0.xsd

在每次解析操作期间,必须对XML解析器可用。使它们可用,问题就会消失。

结果表明,spring安全性的模式在
spring安全性配置
jar中。我需要这种依赖性。

您对URL(在执行测试的环境中)有什么问题吗?我得到了404以及我使用的所有其他XSD。我假设它在运行时从JAR中获取模式?不知道如何检查它是否可以找到与其他我使用。这一个通常通过网络加载。我没有任何问题(可以在我的web浏览器中查看)。这似乎与此问题类似:因此,如果我们假设我的应用程序无法访问internet,它必须从某个地方获取架构(包括它可以使用的其他架构)。我假设它将通过maven依赖性从包含的jar中获取它。是我错了还是我没有正确的依赖性?你是对的。spring-security-config.jar是正确的依赖项。