grailsspring-securitygrails-plugin

Grails spring security core plugin not compiling


I have added the dependency to my Grails 2.4.4 project:

plugins {
    compile ":spring-security-core:2.0-RC5"
}

And I'm getting compilation errors on run. I'm new to spring security and can't find a solution googling, any ideas?

Edit: it seems the dependency to spring-security-crypto is not being resolved.

[groovyc]
org.codehaus.groovy.control.MultipleCompilationErrorsException:
startup failed:   [groovyc] Compile error during compilation with
javac.   [groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\C
ryptoEncoderWrapper.java:28: error: package
org.springframework.security.crypto.password does not exist  
[groovyc]     protected final
org.springframework.security.crypto.password.PasswordEncoder delegate;
[groovyc]                                                             
^   [groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\C
ryptoEncoderWrapper.java:33: error: package
org.springframework.security.crypto.password does not exist  
[groovyc]     public
CryptoEncoderWrapper(org.springframework.security.crypto.password.PasswordEncoder
encoder) {   [groovyc]                                                
^   [groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\S
pringSecurityUtils.java:49: error: cannot find symbol   [groovyc]
import
org.springframework.security.core.authority.SimpleGrantedAuthority;  
[groovyc]                                                   ^  
[groovyc]   symbol:   class SimpleGrantedAuthority   [groovyc]  
location: package org.springframework.security.core.authority  
[groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\S
pringSecurityUtils.java:61: error: package
org.springframework.security.web.util.matcher does not exist  
[groovyc] import
org.springframework.security.web.util.matcher.RequestMatcher;  
[groovyc]                                                     ^  
[groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\S
pringSecurityUtils.java:500: error: cannot find symbol   [groovyc]    
Filter filter, final int order, Map<RequestMatcher, List<Filter>>
filterChainMap) {   [groovyc]                                         
^   [groovyc]   symbol:   class RequestMatcher   [groovyc]   location:
class SpringSecurityUtils   [groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\S
pringSecurityUtils.java:499: error: cannot find symbol   [groovyc]    
private static Map<RequestMatcher, List<Filter>>
mergeFilterChainMap(Map<Integer, Filter> orderedFilters,   [groovyc]  
^   [groovyc]   symbol:   class RequestMatcher   [groovyc]   location:
class SpringSecurityUtils   [groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\a
ccess\vote\ClosureVoter.java:35: error: type AccessDecisionVoter does
not take parameters   [groovyc] public class ClosureVoter implements
AccessDecisionVoter<FilterInvocation>, ApplicationContextAware {  
[groovyc]                                                         ^  
[groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\a
uthentication\GrailsAnonymousAuthenticationToken.java:23: error:
cannot find symbol   [groovyc] import
org.springframework.security.core.authority.SimpleGrantedAuthority;  
[groovyc]                                                   ^  
[groovyc]   symbol:   class SimpleGrantedAuthority   [groovyc]  
location: package org.springframework.security.core.authority  
[groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\a
uthentication\encoding\BCryptPasswordEncoder.java:27: error: package
org.springframework.security.crypto.bcrypt does not exist   [groovyc] 
protected final
org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder
delegate;   [groovyc]                                                 
^   [groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\a
uthentication\encoding\DigestAuthPasswordEncoder.java:21: error:
package org.springframework.security.crypto.codec does not exist  
[groovyc] import org.springframework.security.crypto.codec.Hex;  
[groovyc]                                                 ^  
[groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\w
eb\access\expression\WebExpressionVoter.java:23: error: cannot find
symbol   [groovyc] import
org.springframework.security.access.expression.SecurityExpressionHandler;
[groovyc]                                                      ^  
[groovyc]   symbol:   class SecurityExpressionHandler   [groovyc]  
location: package org.springframework.security.access.expression  
[groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\w
eb\access\expression\WebExpressionVoter.java:35: error: type
AccessDecisionVoter does not take parameters   [groovyc] public class
WebExpressionVoter implements AccessDecisionVoter<FilterInvocation> { 
[groovyc]                                                             
^   [groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\w
eb\access\expression\WebExpressionVoter.java:37: error: cannot find
symbol   [groovyc]    protected
SecurityExpressionHandler<FilterInvocation> expressionHandler;  
[groovyc]              ^   [groovyc]   symbol:   class
SecurityExpressionHandler   [groovyc]   location: class
WebExpressionVoter   [groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\w
eb\access\expression\WebExpressionVoter.java:75: error: cannot find
symbol   [groovyc]     public void
setExpressionHandler(SecurityExpressionHandler<FilterInvocation>
handler) {   [groovyc]                                      ^  
[groovyc]   symbol:   class SecurityExpressionHandler   [groovyc]  
location: class WebExpressionVoter   [groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\w
eb\access\intercept\ChannelFilterInvocationSecurityMetadataSourceFactoryBean.java:28:
error: package org.springframework.security.web.util.matche r does not
exist   [groovyc] import
org.springframework.security.web.util.matcher.AntPathRequestMatcher;  
[groovyc]                                                     ^  
[groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\w
eb\access\intercept\ChannelFilterInvocationSecurityMetadataSourceFactoryBean.java:29:
error: package org.springframework.security.web.util.matche r does not
exist   [groovyc] import
org.springframework.security.web.util.matcher.RequestMatcher;  
[groovyc]                                                     ^  
[groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\w
eb\access\intercept\ChannelFilterInvocationSecurityMetadataSourceFactoryBean.java:66:
error: cannot find symbol   [groovyc]     protected
LinkedHashMap<RequestMatcher, Collection<ConfigAttribute>> buildMap()
{   [groovyc]                             ^   [groovyc]   symbol:  
class RequestMatcher   [groovyc]   location: class
ChannelFilterInvocationSecurityMetadataSourceFactoryBean   [groovyc]
C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\w
eb\authentication\FilterProcessUrlRequestMatcher.java:20: error:
package org.springframework.security.web.util.matcher does not exist  
[groovyc] import
org.springframework.security.web.util.matcher.RequestMatcher;  
[groovyc]                                                     ^  
[groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\w
eb\authentication\FilterProcessUrlRequestMatcher.java:31: error:
cannot find symbol   [groovyc] public class
FilterProcessUrlRequestMatcher implements RequestMatcher {   [groovyc]
^   [groovyc]   symbol: class RequestMatcher   [groovyc] C:\Documents
and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\w
eb\filter\DebugFilter.java:37: error: cannot find symbol   [groovyc]
import org.springframework.security.web.SecurityFilterChain;  
[groovyc]                                        ^   [groovyc]  
symbol:   class SecurityFilterChain   [groovyc]   location: package
org.springframework.security.web   [groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\w
eb\filter\GrailsAnonymousAuthenticationFilter.java:44: error: type
AuthenticationDetailsSource does not take parameters   [groovyc]   
protected AuthenticationDetailsSource<HttpServletRequest, ?>
authenticationDetailsSource;   [groovyc]                              
^   [groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\w
eb\filter\GrailsAnonymousAuthenticationFilter.java:81: error: type
AuthenticationDetailsSource does not take parameters   [groovyc]    
public void
setAuthenticationDetailsSource(AuthenticationDetailsSource<HttpServletRequest,
?> source) {   [groovyc]                                              
^   [groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\w
eb\filter\IpAddressFilter.java:36: error: package
org.springframework.security.web.util.matcher does not exist  
[groovyc] import
org.springframework.security.web.util.matcher.IpAddressMatcher;  
[groovyc]                                                     ^  
[groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\S
pringSecurityUtils.java:172: error: cannot find symbol   [groovyc]    
requiredAuthorities.add(new SimpleGrantedAuthority(auth));   [groovyc]
^   [groovyc]   symbol:   class SimpleGrantedAuthority   [groovyc]  
location: class SpringSecurityUtils   [groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\S
pringSecurityUtils.java:480: error: cannot find symbol   [groovyc]    
Map<RequestMatcher, List<Filter>> filterChainMap =
filterChain.getFilterChainMap();   [groovyc]                 ^  
[groovyc]   symbol:   class RequestMatcher   [groovyc]   location:
class SpringSecurityUtils   [groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\S
pringSecurityUtils.java:481: error: cannot find symbol   [groovyc]    
Map<RequestMatcher, List<Filter>> fixedFilterChainMap =
mergeFilterChainMap(orderedFilters, filter, order,   [groovyc]        
^   [groovyc]   symbol:   class RequestMatcher   [groovyc]   location:
class SpringSecurityUtils   [groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\S
pringSecurityUtils.java:505: error: cannot find symbol   [groovyc]    
Map<RequestMatcher, List<Filter>> fixedFilterChainMap = new
LinkedHashMap<RequestMatcher, List<Filter>>();   [groovyc]            
^   [groovyc]   symbol:   class RequestMatcher   [groovyc]   location:
class SpringSecurityUtils   [groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\S
pringSecurityUtils.java:505: error: cannot find symbol   [groovyc]    
Map<RequestMatcher, List<Filter>> fixedFilterChainMap = new
LinkedHashMap<RequestMatcher, List<Filter>>();   [groovyc]            
^   [groovyc]   symbol:   class RequestMatcher   [groovyc]   location:
class SpringSecurityUtils   [groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\S
pringSecurityUtils.java:506: error: cannot find symbol   [groovyc]    
for (Entry<RequestMatcher, List<Filter>> entry :
filterChainMap.entrySet()) {   [groovyc]                        ^  
[groovyc]   symbol:   class RequestMatcher   [groovyc]   location:
class SpringSecurityUtils   [groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\a
ccess\vote\ClosureVoter.java:55: error: cannot find symbol   [groovyc]
return ACCESS_ABSTAIN;   [groovyc]                            ^  
[groovyc]   symbol:   variable ACCESS_ABSTAIN   [groovyc]   location:
class ClosureVoter   [groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\a
ccess\vote\ClosureVoter.java:62: error: cannot find symbol   [groovyc]
return ((Boolean)result) ? ACCESS_GRANTED : ACCESS_DENIED;   [groovyc]
^   [groovyc]   symbol:   variable ACCESS_GRANTED   [groovyc]  
location: class ClosureVoter   [groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\a
ccess\vote\ClosureVoter.java:62: error: cannot find symbol   [groovyc]
return ((Boolean)result) ? ACCESS_GRANTED : ACCESS_DENIED;   [groovyc]
^   [groovyc]   symbol:   variable ACCESS_DENIED   [groovyc]  
location: class ClosureVoter   [groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\a
ccess\vote\ClosureVoter.java:66: error: cannot find symbol   [groovyc]
return ACCESS_DENIED;   [groovyc]                    ^   [groovyc]  
symbol:   variable ACCESS_DENIED   [groovyc]   location: class
ClosureVoter   [groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\a
nnotation\SecuredClosureDelegate.java:45: error: cannot find symbol  
[groovyc]            
setPermissionEvaluator(ctx.getBean("permissionEvaluator",
PermissionEvaluator.class));   [groovyc]             ^   [groovyc]  
symbol:   method setPermissionEvaluator(PermissionEvaluator)  
[groovyc]   location: class SecuredClosureDelegate   [groovyc]
C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\a
uthentication\GrailsAnonymousAuthenticationToken.java:33: error:
cannot find symbol   [groovyc]     private static final long
serialVersionUID = SpringSecurityCoreVersion.SERIAL_VERSION_UID;  
[groovyc]                                                             
^   [groovyc]   symbol:   variable SERIAL_VERSION_UID   [groovyc]  
location: class SpringSecurityCoreVersion   [groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\a
uthentication\GrailsAnonymousAuthenticationToken.java:38: error:
cannot find symbol   [groovyc]     public static final
GrantedAuthority ROLE = new SimpleGrantedAuthority(ROLE_NAME);  
[groovyc]                                                     ^  
[groovyc]   symbol:   class SimpleGrantedAuthority   [groovyc]  
location: class GrailsAnonymousAuthenticationToken   [groovyc]
C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\a
uthentication\encoding\BCryptPasswordEncoder.java:34: error: package
org.springframework.security.crypto.bcrypt does not exist   [groovyc] 
delegate = new
org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder(logRounds);
[groovyc]                                                             
^   [groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\a
uthentication\encoding\DigestAuthPasswordEncoder.java:89: error:
cannot find symbol   [groovyc]             return new
String(Hex.encode(digest.digest(s.getBytes())));   [groovyc]          
^   [groovyc]   symbol:   variable Hex   [groovyc]   location: class
DigestAuthPasswordEncoder   [groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\w
eb\access\expression\WebExpressionVoter.java:46: error: cannot find
symbol   [groovyc]                     return ACCESS_ABSTAIN;  
[groovyc]                            ^   [groovyc]   symbol:  
variable ACCESS_ABSTAIN   [groovyc]   location: class
WebExpressionVoter   [groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\w
eb\access\expression\WebExpressionVoter.java:51: error: cannot find
symbol   [groovyc]             return
ExpressionUtils.evaluateAsBoolean(weca.getAuthorizeExpression(), ctx)
? ACCESS_GRANTED : ACCESS_DENIED;   [groovyc]                         
^   [groovyc]   symbol:   variable ACCESS_GRANTED   [groovyc]  
location: class WebExpressionVoter   [groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\w
eb\access\expression\WebExpressionVoter.java:51: error: cannot find
symbol   [groovyc]             return
ExpressionUtils.evaluateAsBoolean(weca.getAuthorizeExpression(), ctx)
? ACCESS_GRANTED : ACCESS_DENIED;   [groovyc]                         
^   [groovyc]   symbol:   variable ACCESS_DENIED   [groovyc]  
location: class WebExpressionVoter   [groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\w
eb\access\intercept\ChannelFilterInvocationSecurityMetadataSourceFactoryBean.java:67:
error: cannot find symbol   [groovyc]            
LinkedHashMap<RequestMatcher, Collection<ConfigAttribute>> map = new
LinkedHashMap<RequestMatcher, Collection<ConfigAttri bute>>();  
[groovyc]                           ^   [groovyc]   symbol:   class
RequestMatcher   [groovyc]   location: class
ChannelFilterInvocationSecurityMetadataSourceFactoryBean   [groovyc]
C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\w
eb\access\intercept\ChannelFilterInvocationSecurityMetadataSourceFactoryBean.java:67:
error: cannot find symbol   [groovyc]            
LinkedHashMap<RequestMatcher, Collection<ConfigAttribute>> map = new
LinkedHashMap<RequestMatcher, Collection<ConfigAttri bute>>();  
[groovyc]                                                             
^   [groovyc]   symbol:   class RequestMatcher   [groovyc]   location:
class ChannelFilterInvocationSecurityMetadataSourceFactoryBean  
[groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\w
eb\access\intercept\ChannelFilterInvocationSecurityMetadataSourceFactoryBean.java:80:
error: cannot find symbol   [groovyc]                     map.put(new
AntPathRequestMatcher(entry.getKey()),
SecurityConfig.createList(value));   [groovyc]                        
^   [groovyc]   symbol:   class AntPathRequestMatcher   [groovyc]  
location: class
ChannelFilterInvocationSecurityMetadataSourceFactoryBean   [groovyc]
C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\w
eb\authentication\AjaxAwareAuthenticationEntryPoint.java:41: error:
constructor LoginUrlAuthenticationEntryPoint in class
LoginUrlAuthenticationE ntryPoint cannot be applied to given types;  
[groovyc]             super(loginFormUrl);   [groovyc]             ^  
[groovyc]   required: no arguments   [groovyc]   found: String  
[groovyc]   reason: actual and formal argument lists differ in length 
[groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\w
eb\authentication\switchuser\NullSwitchUserAuthorityChanger.java:29:
error: NullSwitchUserAuthorityChanger is not abstract and does not
override abstract method
modifyGrantedAuthorities(UserDetails,Authentication,Collection<GrantedAuthority>)
in SwitchUserAuthorityChanger   [groovyc] public class
NullSwitchUserAuthorityChanger implements SwitchUserAuthorityChanger {
[groovyc]        ^   [groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\w
eb\authentication\switchuser\NullSwitchUserAuthorityChanger.java:31:
error: name clash:
modifyGrantedAuthorities(UserDetails,Authentication,Colle ction<?
extends GrantedAuthority>) in NullSwitchUserAuthorityChanger and
modifyGrantedAuthorities(UserDetails,Authentication,Collection<GrantedAu
thority>) in SwitchUserAuthorityChanger have the same erasure, yet
neither overrides the other   [groovyc]     public Collection<?
extends GrantedAuthority> modifyGrantedAuthorities(UserDetails
targetUser,   [groovyc]                                               
^   [groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\w
eb\filter\DebugFilter.java:129: error: cannot find symbol   [groovyc] 
for (SecurityFilterChain chain : filterChainProxy.getFilterChains()) {
[groovyc]                  ^   [groovyc]   symbol:   class
SecurityFilterChain   [groovyc]   location: class DebugFilter  
[groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\w
eb\filter\DebugFilter.java:129: error: cannot find symbol   [groovyc] 
for (SecurityFilterChain chain : filterChainProxy.getFilterChains()) {
[groovyc]                                                             
^   [groovyc]   symbol:   method getFilterChains()   [groovyc]  
location: variable filterChainProxy of type FilterChainProxy  
[groovyc] C:\Documents and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\w
eb\filter\GrailsRememberMeAuthenticationFilter.java:39: error:
constructor RememberMeAuthenticationFilter in class
RememberMeAuthenticationFilter  cannot be applied to given types;  
[groovyc]             super(authenticationManager,
rememberMeServices);   [groovyc]             ^   [groovyc]   required:
no arguments   [groovyc]   found:
AuthenticationManager,RememberMeServices   [groovyc]   reason: actual
and formal argument lists differ in length   [groovyc] C:\Documents
and
Settings\pab\.grails\2.4.4\projects\ehr\plugins\spring-security-core-2.0-RC5\src\java\grails\plugin\springsecurity\w
eb\filter\IpAddressFilter.java:129: error: cannot find symbol  
[groovyc]                             if (new
IpAddressMatcher(ipPattern.getAttribute()).matches(request)) {  
[groovyc]                                     ^   [groovyc]   symbol: 
class IpAddressMatcher   [groovyc]   location: class IpAddressFilter  
[groovyc] 51 errors   [groovyc]   [groovyc]

Edit: added BuildConfig, I tried to add extra repos I found googling about the issue.

grails.servlet.version = "2.5" // Change depending on target container compliance (2.5 or 3.0)
grails.project.class.dir = "target/classes"
grails.project.test.class.dir = "target/test-classes"
grails.project.test.reports.dir = "target/test-reports"
grails.project.target.level = 1.6
grails.project.source.level = 1.6

grails.reload.enabled = true

forkConfig = [maxMemory: 1024, minMemory: 64, debug: false, maxPerm: 512]
grails.project.fork = [
   test: forkConfig, // configure settings for the test-app JVM
   run: forkConfig, // configure settings for the run-app JVM
   war: forkConfig, // configure settings for the run-war JVM
   console: forkConfig // configure settings for the Swing console JVM
]


//grails.project.war.file = "target/${appName}-${appVersion}.war"
grails.server.port.http = 8090
grails.project.dependency.resolver = "maven"
grails.project.dependency.resolution = {
    // inherit Grails' default dependencies
    inherits("global") {
        // specify dependency exclusions here; for example, uncomment this to disable ehcache:
        // excludes 'ehcache'
    }
    log "error" // log level of Ivy resolver, either 'error', 'warn', 'info', 'debug' or 'verbose'
    checksums true // Whether to verify checksums on resolve

    repositories {
        inherits true // Whether to inherit repository definitions from plugins

        grailsPlugins()
        grailsHome()
        grailsCentral()

        mavenLocal()
        mavenCentral()

        mavenRepo "http://repo.spring.io/milestone"
        mavenRepo "https://oss.sonatype.org/content/repositories/snapshots"
    }
    dependencies {

       runtime('org.codehaus.groovy.modules.http-builder:http-builder:0.5.2') {
         excludes "commons-logging", "xml-apis", "groovy"
       }


       test "org.grails:grails-datastore-test-support:1.0-grails-2.4"
       compile 'xerces:xercesImpl:2.11.0'
       compile "mysql:mysql-connector-java:5.1.22"
    }

    plugins {
        build ":tomcat:7.0.52.1"

        // plugins for the compile step
        compile ':scaffolding:2.1.0'
        compile ':cache:1.1.3'
        compile ':asset-pipeline:1.8.3'

        // plugins needed at runtime but not for compilation
        runtime ':hibernate4:4.3.5.4' // or ':hibernate:3.6.10.14'
        runtime ':database-migration:1.4.0'
        runtime ':jquery:1.11.0.2'

        // https://github.com/davidtinker/grails-cors
        runtime ":cors:1.1.8"

        compile ':quartz:1.0.2'

        compile ":spring-security-core:2.0-RC5"
    }
}

Solution

  • I moved the compile ":spring-security-core:2.0-RC5" above the runtime ":cors:1.1.8" and it is compiling now.

    From @sCrain comment, don't know if this will work at runtime. Will test it and get back if I face another problem.