【发布时间】:2011-12-20 17:01:50
【问题描述】:
当我以某种方式设置我的app.context 时,我注意到redirect 的一些奇怪行为。我在 Grails JIRA 中发现了一个错误,它完美地描述了我的问题,但它被标记为 UTR:http://jira.grails.org/browse/GRAILS-7546
这是我对问题的描述:
我目前正在使用 Grails 2.0M2。我的 application.properties 文件中定义了以下属性:
app.context=/
app.name=foobar
当我在控制器中调用 redirect 时,redirect 正在将应用名称添加到我提供的 uri 中,这会导致 404。我是这样做的:
String partialUrl = createLink(mapping: 'helloworld') // returns `/hello/world`
redirect(uri: partialUrl) // INCORRECTLY redirects to
// `http://mysite.com/foobar/hello/world`
// instead of `http://mysite.com/hello/world`
假设我在UrlMappings.groovy 文件中定义了一个名为helloworld 的URL 映射,其路径为/hello/world。
所以,长话短说,如果我将app.context 设置为/,我不会期望app.name 会出现在我的最终重定向网址中。
这是一个错误还是预期的行为?关于无需执行太多手动步骤即可构建重定向 URL 的最简单方法的任何想法?
【问题讨论】:
标签: java model-view-controller grails groovy