You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by Albert Kao <al...@yahoo.ca> on 2013/12/28 01:39:46 UTC

Variable substitution at resource property file

I like to do variable substitution at the resource property file.
I had tried this:
Resource property file:
common.name=What is the name?
page.name.01=${common.name}

Jsp file:
<bean:message key="page.name.01" />

The browser displayed the desired message properly.
i.e.
"What is the name?" is displayed properly.
However, there was runtime error at the weblogic console:
can't parse argument number common.name
java.lang.IllegalArgumentException: can't parse argument number common.name
at java.text.MessageFormat.makeFormat(MessageFormat.java:1339)
at java.text.MessageFormat.applyPattern(MessageFormat.java:458)
at java.text.MessageFormat.<init>(MessageFormat.java:350)
at org.apache.struts.util.MessageResources.getMessage(MessageResources.java:302)
at org.apache.struts.taglib.TagUtils.message(TagUtils.java:953)
at org.apache.struts.taglib.bean.MessageTag.doStartTag(MessageTag.java:221)
at jsp_servlet._prot._pages.__vbi_01._jsp__tag14(__vbi_01.java:711)
at jsp_servlet._prot._pages.__vbi_01._jsp__tag2(__vbi_01.java:281)
at jsp_servlet._prot._pages.__vbi_01._jspService(__vbi_01.java:133)
at weblogic.servlet.jsp.JspBase.service(JspBase.java:34)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:301)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:184)
at weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:529)
at weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:447)
at weblogic.servlet.jsp.PageContextImpl.include(PageContextImpl.java:163)
at org.apache.struts.tiles.TilesUtilImpl.doInclude(TilesUtilImpl.java:135)
at org.apache.struts.tiles.TilesUtil.doInclude(TilesUtil.java:149)
at org.apache.struts.tiles.taglib.InsertTag.doInclude(InsertTag.java:761)
at org.apache.struts.tiles.taglib.InsertTag$InsertHandler.doEndTag(InsertTag.java:893)
at org.apache.struts.tiles.taglib.InsertTag.doEndTag(InsertTag.java:462)


Please help.
Thanks.