diff --git a/docs/src/reference/docbook/groovy.xml b/docs/src/reference/docbook/groovy.xml index 4378ee37bb..054733d82a 100644 --- a/docs/src/reference/docbook/groovy.xml +++ b/docs/src/reference/docbook/groovy.xml @@ -80,9 +80,17 @@ customizes it with a GroovyObjectCustomizer, and then executes it. The Control Bus' customizer exposes all the beans in the application context that are annotated with @ManagedResource, implement Spring's - Lifecycleinterface or extend Spring's CustomizableThreadCreator base class + Lifecycle interface or extend Spring's CustomizableThreadCreator base class (e.g. several of the TaskExecutor and TaskScheduler implementations). - + + + Be careful about using managed beans with custom scopes (e.g. 'request') in the Control Bus' command scripts, especially + inside an async message flow. If The Control Bus' customizer can't expose a bean + from the application context, it skips that bean. For example, if a custom scope's context is not established, the attempt + to get a bean within that scope will trigger a BeanCreationException. In that case, such a bean + will be ignored, and the customizer will continue with other beans. + + If you need to further customize the Groovy objects, you can also provide a reference to a bean that implements org.springframework.scripting.groovy.GroovyObjectCustomizer via