我尝试将动态参数传递给keyvalue(message to display)
,我将通过package.properties
方法从Action
传递到getText()
类。要获取消息,我们可以使用getText(String keyvalue)
方法。如何通过getText()
方法传递一些参数并通过消息检索参数?
我看到了一些传递动态参数的API。但我不知道如何使用,这些是以下API,单击here以查看Struts 2 API文档。
getText(String aTextName, List<Object> args)
getText(String key, String[] args)
getText(String key, String defaultValue, String[] args)
提前致谢..
答案 0 :(得分:7)
我认为您的package.properties
username.required=user name is required
password.required=password is required
您可以使用getText()
作为
getText("username.required")
getText("password.required")
现在,如果我们想使用getText(String key, String[] args)
,我们必须传递以下参数
aTextName -
要搜索的资源包密钥
args -
要在MessageFormat消息中使用的列表args
这意味着消息格式模式和其他静态字符串当然可以从资源包中获取。其他参数将在运行时动态确定。 例 我们在资源文件中有以下条目
disk.data=The disk \"{0}\" artist name is {1}.
此{1}
和{0}
中的是动态参数,将在运行时确定,因此args
将包含这些参数的值。
String artistName= demo;
String diskName = "Artist";
String[] testArgs = {artistName, diskName};
最终通话将是getText(disk.data, testArgs);
它会显示
The disk demo artist name is Artist.
请通过MessageFormat了解这项工作的方式