【发布时间】:2023-03-13 02:54:02
【问题描述】:
我正在使用 Grails 2.3.11。 在 BootStrap.groovy 我调用:
def ctx = servletContext.getAttribute(ApplicationAttributes.APPLICATION_CONTEXT)
HotSwappableTargetSource ts = ctx.getBean("urlMappingsTargetSource")
我得到一个 NoSuchBeanDefinitionException
12,09 21:55:44:084 [localhost-startStop-1] ERROR context.GrailsContextLoader - Error initializing the application: No bean named 'urlMappingsTargetSource' is defined
org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'urlMappingsTargetSource' is defined
at BootStrap$_closure1.doCall(BootStrap.groovy:10)
at grails.util.Environment.evaluateEnvironmentSpecificBlock(Environment.java:308)
at grails.util.Environment.executeForEnvironment(Environment.java:301)
at grails.util.Environment.executeForCurrentEnvironment(Environment.java:277)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
当我在开发环境中运行应用程序时,这不会引发异常。但是,如果我构建一个 war 文件并部署到 tomcat,我会得到一个 org.springframework.beans.factory.NoSuchBeanDefinitionException
在使用 Grails 2.1.0 和 2.2.4 时,这条线运行良好。我也尝试过 Grails 2.3.9,但这也会引发 NoSuchBeanDefinitionException。
我也尝试过使用依赖注入,但“urlMappingsTargetSource”为空
class BootStrap {
def urlMappingsTargetSource
还有其他人遇到过这个问题吗?或者有人知道我为什么会收到 NoSuchBeanDefinitionException 吗?
在 Grails 2.3 与 Grails 2.2 或 2.1 中加载此 bean 的方式是否有所改变?
任何帮助或见解将不胜感激。
【问题讨论】:
-
你不是在用插件吗?
urlMappingsTargetSource是标准的 Grails 能力吗?请看下一个链接,貌似类似。 jira.grails.org/browse/GRAILS-10923stackoverflow.com/questions/20663522/…
标签: spring grails grails-2.3