Java BeanFactory未初始化或已关闭spring security
我开始学习春天。 我正在尝试使用Spring、Hibernate和Mysql创建一个简单的注册应用程序,但出现以下错误。我正在尝试从Mysql中提取用户名和密码。我不明白这里出了什么问题 我尝试使用spring security 3.0.5.RELEASE,但在CustomUserDetails服务类中遇到此错误。Java BeanFactory未初始化或已关闭spring security,java,spring,jakarta-ee,spring-mvc,spring-security,Java,Spring,Jakarta Ee,Spring Mvc,Spring Security,我开始学习春天。 我正在尝试使用Spring、Hibernate和Mysql创建一个简单的注册应用程序,但出现以下错误。我正在尝试从Mysql中提取用户名和密码。我不明白这里出了什么问题 我尝试使用spring security 3.0.5.RELEASE,但在CustomUserDetails服务类中遇到此错误。“无法解决导入org.springframework.security.core.authority.SimpleGrantedAuthority” 如果有人能帮我,我很感激 SEVE
“无法解决导入org.springframework.security.core.authority.SimpleGrantedAuthority”
如果有人能帮我,我很感激
SEVERE: Exception sending context destroyed event to listener instance of class org.springframework.web.context.ContextLoaderListener
java.lang.IllegalStateException: BeanFactory not initialized or already closed - call 'refresh' before accessing beans via the ApplicationContext
at org.springframework.context.support.AbstractRefreshableApplicationContext.getBeanFactory(AbstractRefreshableApplicationContext.java:171)
at org.springframework.context.support.AbstractApplicationContext.destroyBeans(AbstractApplicationContext.java:1090)
at org.springframework.context.support.AbstractApplicationContext.doClose(AbstractApplicationContext.java:1064)
at org.springframework.context.support.AbstractApplicationContext.close(AbstractApplicationContext.java:1010)
at org.springframework.web.context.ContextLoader.closeWebApplicationContext(ContextLoader.java:558)
at org.springframework.web.context.ContextLoaderListener.contextDestroyed(ContextLoaderListener.java:143)
at org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4980)
at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5626)
at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:160)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:724)
spring-security.xml
<beans:beans xmlns="http://www.springframework.org/schema/security"
xmlns:beans="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.3.xsd">
<http auto-config="true">
<intercept-url pattern="/welcome*" access="ROLE_USER" />
<form-login login-page="/login" default-target-url="/welcome"
authentication-failure-url="/loginfailed" />
<logout logout-success-url="/logout" />
</http>
<beans:bean id="customUserDetailsService" class="com.nikunj.javabrains.services.CustomUserDetailsService"></beans:bean>
<authentication-manager>
<authentication-provider user-service-ref="customUserDetailsService">
</authentication-provider>
</authentication-manager>
</beans:beans>
web.xml
SpringMVC应用程序
调度员
org.springframework.web.servlet.DispatcherServlet
1.
调度员
/
org.springframework.web.context.ContextLoaderListener
org.springframework.web.context.request.RequestContextListener
上下文配置位置
/WEB-INF/dispatcher-servlet.xml,
/WEB-INF/spring-security.xml,
springSecurityFilterChain
org.springframework.web.filter.DelegatingFilterProxy
springSecurityFilterChain
/*
index.jsp
dispatcher-servlet.xml
com.nikunj.javabrains.domain.User
org.hibernate.dialogue.mysqldialogue
真的
更新
我的信息
pom.xml
4.0.0
测试3
测试3
0.0.1-快照
战争
4.2.0.4最终版本
5.1.21
3.2.2.1发布
org.hibernate
冬眠核心
${hibernate.version}
org.hibernate
休眠实体管理器
${hibernate.version}
mysql
mysql连接器java
${mysql.connector.version}
公共dbcp
公共dbcp
1.4
javassist
javassist
3.12.1.GA
org.springframework
SpringWebMVC
${spring.version}
org.springframework
德克萨斯州春季
${spring.version}
org.springframework
SpringJDBC
${spring.version}
org.springframework
春季甲虫
${spring.version}
org.springframework
弹簧芯
${spring.version}
org.springframework
弹簧网
${spring.version}
org.springframework.security
spring安全内核
3.2.0.1
org.springframework.security
spring安全网
3.2.0.1
org.springframework.security
spring安全配置
3.2.0.1
cglib
cglib
2.2.2
javax.servlet
javax.servlet-api
3.0.1
假如
jstl
jstl
1.2
朱尼特
朱尼特
4.7
测试
org.springframework
弹簧试验
${spring.version}
测试
org.springframework
弹簧试验
1.0.0.M1
测试
春季马文里程碑
SpringMaven里程碑存储库
http://maven.springframework.org/milestone
maven编译器插件
3.1
1.7
1.7
maven战争插件
2.3
网络内容
假的
您应该在servlet标记中指定一个xml配置文件(通常包含web.xml中仅针对spring mvc的属性)
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/dispatcher-servlet.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
调度员
org.springframework.web.servlet.DispatcherServlet
上下文配置位置
/WEB-INF/dispatcher-servlet.xml
1.
您应该在servlet标记中指定一个xml配置文件(通常包含web.xml中仅针对spring mvc的属性)
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/dispatcher-servlet.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
调度员
org.springframework.web.servlet.DispatcherServlet
上下文配置位置
/WEB-INF/dispatcher-servlet.xml
1.
您应该在servlet标记中指定一个xml配置文件(通常包含web.xml中仅针对spring mvc的属性)
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/dispatcher-servlet.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
调度员
org.springframework.web.servlet.DispatcherServlet
上下文配置位置
/WEB-INF/dispatcher-servlet.xml
1.
您应该在servlet标记中指定一个xml配置文件(通常包含web.xml中仅针对spring mvc的属性)
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/dispatcher-servlet.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
调度员