2012-01-18 84 views
0

我一直在将Grails 1.3.7项目升级到Grails 2.0。一切进展顺利,直到我达成整合(第一次非本地部署)。问题的关键在于,Resource插件总是将应用程序名称预加载到它生成的静态CSS/JS URL,而不管为该环境指定的grails.serverURL或grails.app.context。奇怪的是图像资源被托管在相应的URL“/static/foo.png”中,但CSS/JS文件试图作为“/AppName/static/foo.js”提供。在ResourceTagLib中跟踪这个问题,最初看起来像Resource Plugin中的一个问题,但我不想妄下结论。Grails 2.0,资源插件和根托管

我们的集成环境使用Apache代理将所有通信从“/”传递到托管在Tomcat上的“:8080/AppName”。因此,“http://int.sitename.com”的所有流量正在运行在Tomcat上的应用程序。以前,在1.3.7中,grails.serverURL =“http://int.sitename.com”是获得正确服务所需的资源。

有没有人知道解决这个问题的方法,或者看起来像Resource插件中存在的错误。

回答

0

我也使用Grails 2.0。在application.properties中有一条线app.context=/。当应用程序部署到Tomcat时,它也在部署时重命名为ROOT.war,因此Tomcat将为此应用程序使用ROOT ie/context。结果我没有描述的问题。

+0

谢谢。去这条路线确定了事情。没有意识到原始应用程序中的一些遗留代码是重写URL并引起我的头痛。把所有东西都设置为Root,这个世界很开心。 – Mitch 2012-01-19 16:45:45