无法找到用于XML模式命名空间的Spring NamespaceHandler [http:/
我正在开发我的第一个应用程序在Spring的安全。我的applicationContext-security.xml文件看起来像这样:
<?xml version="1.0" encoding="UTF-8"?> <!-- - Namespace-based OpenID configuration --> <b:beans xmlns="http://www.springframework.org/schema/security" xmlns:b="http://www.springframework.org/schema/beans" 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"> <http> <intercept-url pattern="/**" access="ROLE_USER"/> <intercept-url pattern="/index.xhtml*" filters="none"/> <logout/> <openid-login login-page="/index.xhtml" authentication-failure-url="/index.xhtml?login_error=true"> <attribute-exchange> <openid-attribute name="email" type="http://schema.openid.net/contact/email" required="true" count="2"/> <openid-attribute name="name" type="http://schema.openid.net/namePerson/friendly" /> </attribute-exchange> </openid-login> <remember-me token-repository-ref="tokenRepo"/> </http> <b:bean id="tokenRepo" class="org.springframework.security.web.authentication.rememberme.InMemoryTokenRepositoryImpl" /> <authentication-manager alias="authenticationManager"/> <user-service id="userService"> <user name="http://user.myopenid.com/" authorities="ROLE_SUPERVISOR,ROLE_USER" /> </user-service> </b:beans> 和Web.xml文件是: <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4"> <display-name>Spring Security OpenID Demo Application</display-name> <context-param> <param-name>contextConfigLocation</param-name> <param-value> /WEB-INF/applicationContext-security.xml </param-value> </context-param> <context-param> <param-name>log4jConfigLocation</param-name> <param-value>/WEB-INF/classes/log4j.properties</param-value> </context-param> <context-param> <param-name>webAppRootKey</param-name> <param-value>openid.root</param-value> </context-param> <filter> <filter-name>springSecurityFilterChain</filter-name> <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class> </filter> <filter-mapping> <filter-name>springSecurityFilterChain</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <listener> <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class> </listener> <welcome-file-list> <welcome-file>faces/index.xhtml</welcome-file> </welcome-file-list> </web-app> Clean和Build的应用程序是成功的,但当我尝试部署应用程序jetty 7给我以下错误:
试过一切,但不能解决这个错误。任何帮助将不胜感激。 编辑
你需要一个spring-security-config.jar在你的类路径。
异常意味着security:xml namescape不能被spring的“解析器”处理。它们是NamespaceHandler接口的实现,因此您需要一个知道如何处理< security:tags的处理程序。这是SecurityNamespaceHandler位于spring-security-config (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |