0

生成链接时,我需要覆盖 Grails 的默认行为。目的是根据当前语言环境更改 url。

我已经成功地覆盖了 DefaultUrlMappingsHolder,但它只适用于第一次创建链接时的第一个 Web 请求。Grails 似乎将链接存储在某个位置,因此下次我createLink使用相同的控制器和操作时,它只会显示链接,而无需重新运行创建链接的过程。因此,更改区域设置时链接不会更改。

我做了什么:

  • 为每种语言创建 UrlMapping。例如http://myapp/searchhttp://myapp/suche两者都指向“SearchController”
  • 覆盖 DefaultUrlMappingsHolder,当通过反向 url 映射创建链接时,它会考虑语言环境并为每个语言环境选择正确的 urlmapping 并创建正确的 url。

我应该怎么做才能阻止 Grails 的这种行为并强制链接生成再次运行?

谢谢。

4

1 回答 1

0

你安装的是什么版本的 Grails?在 Grails 中有一个关于它的jira 。它在以后的版本中得到修复。

于 2013-01-15T05:25:33.433 回答