Hi,

in these days I'm facing some troubles to get Syncope core working with JRebel 
v5.2.2 enabled (JRebel it's a JVM Agent that can instantly reload java classes).
When I enable JRebel on Tomcat JVM, I got this error:

SEVERE: Exception starting filter springSecurityFilterChain
SEVERE: Exception starting filter springSecurityFilterChain
org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 
'springSecurityFilterChain' is defined
                at 
org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanDefinition(DefaultListableBeanFactory.java:568)
                at 
org.springframework.beans.factory.support.AbstractBeanFactory.getMergedLocalBeanDefinition(AbstractBeanFactory.java:1108)
                at 
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:278)
                at 
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:198)
                at 
org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1121)
                at 
org.springframework.web.filter.DelegatingFilterProxy.initDelegate(DelegatingFilterProxy.java:326)
                at 
org.springframework.web.filter.DelegatingFilterProxy.initFilterBean(DelegatingFilterProxy.java:236)
                at 
org.springframework.web.filter.GenericFilterBean.init(GenericFilterBean.java:194)
                at 
org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:295)
                at 
org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:422)
                at 
org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:115)

After some investigation I found that this error it's related to JRebel Spring 
Plugin.
Probably you already encountered  this problem because I saw that in Syncope 
Console jrebel profile JRebel Spring Plugin it's disabled.

Even though I tried disabling spring plugin adding 
"-Drebel.spring_plugin=false" parameter to JVM the error still was occurring.
After some investigation I found that this error it's related to spring 
dependency resolution when JRebel it's active [1], [2].

The only workaround I found to get it working was to replace, in web.xml, the 
contextConfigLocation parameter definition, from

  <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath*:/*Context.xml</param-value>
  </context-param>

to

<context-param>
    <param-name>contextConfigLocation</param-name>
    
<param-value>WEB-INF\classes\persistenceContext.xml,WEB-INF\classes\restContext.xml,WEB-INF\classes\schedulingContext.xml,WEB-INF\classes\securityContext.xml,WEB-INF\classes\syncopeContext.xml,WEB-INF\classes\workflowContext.xml</param-value>
  </context-param>

Anyone has had the same problem?
Do you have any suggestion or improvement about it?

Best regards,
Denis.

[1] - 
http://zeroturnaround.com/forums/topic/a-problem-when-use-jrebel-with-spring-security/
[2] - http://zeroturnaround.com/forums/topic/spring-dependencies-not-resolving/

Reply via email to