Skip to content

Commit c43aa76

Browse files
committed
fix for GRAILS-1657 "message.properties file isn't working as fallback for english locale (don't fallback to system locale)"
1 parent 89f8abd commit c43aa76

File tree

2 files changed

+18
-11
lines changed

2 files changed

+18
-11
lines changed

src/java/org/codehaus/groovy/grails/plugins/i18n/I18nGrailsPlugin.groovy

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,7 @@ class I18nGrailsPlugin {
9191

9292
messageSource(PluginAwareResourceBundleMessageSource) {
9393
basenames = baseNames.toArray()
94+
fallbackToSystemLocale = false
9495
pluginManager = manager
9596
if (Environment.current.isReloadEnabled()) {
9697
cacheSeconds = 5

src/test/org/codehaus/groovy/grails/plugins/i18n/I18nGrailsPluginTests.groovy

Lines changed: 17 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -41,18 +41,24 @@ class I18nGrailsPluginTests extends AbstractGrailsMockTests {
4141

4242
// nasty way of asserting/inspecting the basenames set in the messageSource
4343
// this is needed because messageSource has no API method for retrieving the basenames
44-
def messageSource = appCtx.getBean("messageSource")?.toString()
44+
def messageSource = appCtx.getBean("messageSource")
45+
println "messageSource class ${messageSource.getClass()}"
46+
def field = messageSource.class.superclass.getDeclaredField("fallbackToSystemLocale")
47+
field.accessible=true
48+
assert !field.get(messageSource)
49+
50+
def messageSourceString = messageSource?.toString()
4551
println messageSource
46-
assert StringUtils.contains(messageSource, "messages")
47-
assert StringUtils.contains(messageSource, "messages-site")
48-
assert StringUtils.contains(messageSource, "foo-site")
49-
assert StringUtils.contains(messageSource, "foo-bar")
50-
assert StringUtils.contains(messageSource, "project")
51-
assert !StringUtils.contains(messageSource, "messages.properties")
52-
assert !StringUtils.contains(messageSource, "project.properties")
53-
assert !StringUtils.contains(messageSource, "project_nl.properties")
52+
assert StringUtils.contains(messageSourceString, "messages")
53+
assert StringUtils.contains(messageSourceString, "messages-site")
54+
assert StringUtils.contains(messageSourceString, "foo-site")
55+
assert StringUtils.contains(messageSourceString, "foo-bar")
56+
assert StringUtils.contains(messageSourceString, "project")
57+
assert !StringUtils.contains(messageSourceString, "messages.properties")
58+
assert !StringUtils.contains(messageSourceString, "project.properties")
59+
assert !StringUtils.contains(messageSourceString, "project_nl.properties")
5460
//assert !StringUtils.contains(messageSource, "nobundle")
55-
assert !StringUtils.contains(messageSource, "nobundle.txt")
56-
assert !StringUtils.contains(messageSource, "nobundle.xml")
61+
assert !StringUtils.contains(messageSourceString, "nobundle.txt")
62+
assert !StringUtils.contains(messageSourceString, "nobundle.xml")
5763
}
5864
}

0 commit comments

Comments
 (0)