Pregunta

Im having some problems trying to actually determine if my beans have been properly loaded. Is there some log4j property which can show me in the log what beans that are properly loaded?.

After some trying i went off and tried another example from here

redefining my resources.groovy like follows:

import grails.spring.BeanBuilder
BeanBuilder bb = new BeanBuilder()
bb.beans = {
    ldapUserDetailsMapper(example.CustomDetailsContextMapper) {
    }
}

CustomDetailsContextMapper in its turn is defined as:

class CustomDetailsContextMapper implements UserDetailsContextMapper {
def springSecuritySource

@Override
public UserDetails mapUserFromContext(DirContextOperations ctx, String username, Collection authorities) {

This is the error im getting when using this kind of resource.groovy setup:

2012-10-12 12:52:31,663 [main] ERROR spring.GrailsRuntimeConfigurator  - [RuntimeConfiguration] Unable to load beans from resources.groovy
org.codehaus.groovy.runtime.metaclass.MissingPropertyExceptionNoStack: No such property: beans for class: resources
Possible solutions: class

When not using beanbuilder i get no errors but i cant really verify that my beans are loaded, since they seem never to be called. In the other case i get the below error.

Any suggestions?

¿Fue útil?

Solución

in resource.groovy simply write

beans = {
    ldapUserDetailsMapper(example.CustomDetailsContextMapper) {
    }

The BeanBuilder is already defined for you

A bean is called when used... inside a controller try thi

VeryBeanController{

    def ldapUserDetailsMapper

    def index = {

       render( ldapUserDetailsMapper  )

    }

}

And call the controller

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top