No bean named 'springSecurityFilterChain' is defined
- by michaeljackson4ever
When configs are loaded, I get the error
SEVERE: Exception starting filter springSecurityFilterChain
org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'springSecurityFilterChain' is defined
My sec-config:
<http use-expressions="true" access-denied-page="/error/casfailed.html" entry-point-ref="headerAuthenticationEntryPoint">
<intercept-url pattern="/" access="permitAll"/>
<!-- <intercept-url pattern="/index.html" access="permitAll"/> -->
<intercept-url pattern="/index.html" access="hasAnyRole('ROLE_USER')"/>
<intercept-url pattern="/history.html" access="hasAnyRole('ROLE_USER')"/>
<intercept-url pattern="/absence.html" access="hasAnyRole('ROLE_USER')"/>
<intercept-url pattern="/search.html" access="hasAnyRole('ROLE_USER')"/>
<intercept-url pattern="/employees.html" access="hasAnyRole('ROLE_USER')"/>
<intercept-url pattern="/employee.html" access="hasAnyRole('ROLE_USER')"/>
<intercept-url pattern="/contract.html" access="hasAnyRole('ROLE_USER')"/>
<intercept-url pattern="/myforms.html" access="hasAnyRole('HLO','OPISK')"/>
<intercept-url pattern="/vacationmsg.html" access="hasAnyRole('ROLE_USER')"/>
<intercept-url pattern="/redirect.jsp" filters="none" />
<intercept-url pattern="/error/**" filters="none" />
<intercept-url pattern="/layout/**" filters="none" />
<intercept-url pattern="/js/**" filters="none" />
<intercept-url pattern="/**" access="isAuthenticated()" />
<!-- session-management invalid-session-url="/absence.html"/ -->
<!-- logout logout-success-url="/logout.html"/ -->
<custom-filter ref="ssoHeaderAuthenticationFilter" before="CAS_FILTER"/> <!-- CAS_FILTER ??? -->
</http>
<authentication-manager alias="authenticationManager">
<authentication-provider ref="doNothingAuthenticationProvider"/>
</authentication-manager>
<beans:bean id="doNothingAuthenticationProvider" class="com.nixu.security.sso.web.DoNothingAuthenticationProvider"/>
<beans:bean id="ssoHeaderAuthenticationFilter" class="com.nixu.security.sso.web.HeaderAuthenticationFilter">
<beans:property name="groups">
<beans:map>
<beans:entry key="cn=lake,ou=confluence,dc=utu,dc=fi" value="ROLE_ADMIN"/>
</beans:map>
</beans:property>
</beans:bean>
<beans:bean id="headerAuthenticationEntryPoint"
class="com.nixu.security.sso.web.HeaderAuthenticationEntryPoint"/>
And web.xml
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/applicationContext.xml
/WEB-INF/sec-config.xml
/WEB-INF/idm-config.xml
/WEB-INF/ldap-config.xml
</param-value>
</context-param>
<display-name>KeyCard</display-name>
<context-param>
<param-name>webAppRootKey</param-name>
<param-value>KeyCardAppRoot</param-value>
</context-param>
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>/WEB-INF/log4j.properties</param-value>
</context-param>
<!-- Reads request input using UTF-8 encoding -->
<filter>
<filter-name>characterEncodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter>
<filter-name>springSecurityFilterChain</filter-name>
<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>
<filter-mapping>
<filter-name>characterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<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>
<listener> <!-- this is for session scoped objects -->
<listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
</listener>
<listener>
<listener-class>org.springframework.security.web.session.HttpSessionEventPublisher</listener-class>
</listener>
<!-- Handles all requests into the application -->
<servlet>
<servlet-name>KeyCard</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<servlet-name>tiles</servlet-name>
<servlet-class>org.apache.tiles.web.startup.TilesServlet</servlet-class>
<init-param>
<param-name>
org.apache.tiles.impl.BasicTilesContainer.DEFINITIONS_CONFIG
</param-name>
<param-value>
/WEB-INF/tilesViewContext.xml
</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>KeyCard</servlet-name>
<url-pattern>*.html</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>
120
</session-timeout>
</session-config>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<!-- error-page>
<exception-type>java.lang.Exception</exception-type>
<location>/WEB-INF/error/error.jsp</location>
</error-page -->
</web-app>
What's wrong?