我在插件中添加了一个新例外:
class UnzipException extends RuntimeException {
String message
String defaultMessage
String fileName
}
. . .
else {
throw new UnzipException(
message:"grailsant.unzipexception.badfile",
defaultMessage: "Invalid zip file: ${zipFile}",
fileName: zipFile)
}
...
在插件的messages.properties中我有:
grailsant.unzipexception.badfile=Invalid zip file: {0}
两个问题:
如何使用fileName填充{0}?
应用程序是否可以覆盖grailsant.unzipexception.badfile消息?
答案 0 :(得分:1)
(1)似乎必须由app:
完成try {
. . .
} catch (org.grails.plugins.grailsant.UnzipException e) {
flash.message = e.message
flash.args = [e.fileName]
flash.defaultMessage = e.defaultMessage
}
(2)是的,如果应用中的message.properties与插件具有相同的密钥,则将使用应用的值。