Some more issues in internationalization for the unwary uninitiated: It's
common in Java to use the period character to separate words in resource
property names, e.g.:
repeat.password=Repeat Password
Unfortunately, this gets interpreted (by JSF, I think) as a series of
properties, so it looks for the "repeat" property of the messages bundle when
you use it like:
<h:outputLabel for="verify" value="#{messages.repeat.password}"/>
anonymous wrote :
| 11:39:44,796 ERROR [STDERR] Jul 5, 2006 11:39:44 AM
com.sun.facelets.FaceletViewHandler handleRenderException
| SEVERE: Error Rendering View[/register.xhtml]
| javax.faces.el.PropertyNotFoundException: /register.xhtml @42,92
value="#{messages.repeat.password}": Bean: java.lang.String, property: password
| at
com.sun.facelets.el.LegacyValueBinding.getValue(LegacyValueBinding.java:58)
| at javax.faces.component.UIOutput.getValue(UIOutput.java:75)
| at
org.apache.myfaces.renderkit.RendererUtils.getStringValue(RendererUtils.java:225)
| ...
|
Trying to change the period to a dash doesn't work either (it gets interpreted
as subtraction):
repeat-password=Repeat Password
<h:outputLabel for="verify" value="#{messages.repeat-password}"/>
anonymous wrote :
| 11:45:28,968 ERROR [STDERR] Jul 5, 2006 11:45:28 AM
com.sun.facelets.FaceletView
| Handler handleRenderException
| SEVERE: Error Rendering View[/register.xhtml]
| java.lang.NumberFormatException: For input string: "repeat"
| at
sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:1224)
| at java.lang.Double.valueOf(Double.java:447)
| at java.lang.Double.(Double.java:539)
| at
com.sun.el.lang.ELArithmetic$DoubleDelegate.coerce(ELArithmetic.java:137)
| at com.sun.el.lang.ELArithmetic.coerce(ELArithmetic.java:362)
| at com.sun.el.lang.ELArithmetic.subtract(ELArithmetic.java:285)
| at com.sun.el.parser.AstMinus.getValue(AstMinus.java:44)
| at
com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:192)
| at
com.sun.facelets.el.TagValueExpression.getValue(TagValueExpression.java:71)
| at
com.sun.facelets.el.LegacyValueBinding.getValue(LegacyValueBinding.java:56)
| at javax.faces.component.UIOutput.getValue(UIOutput.java:75)
| at
org.apache.myfaces.renderkit.RendererUtils.getStringValue(RendererUtils.java:225)
| at
org.apache.myfaces.renderkit.html.HtmlLabelRenderer.encodeBegin(HtmlLabelRenderer.java:105)
| at
javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:307)
| at
com.sun.facelets.tag.jsf.ComponentSupport.encodeRecursive(ComponentSupport.java:232)
| at
com.sun.facelets.tag.jsf.ComponentSupport.encodeRecursive(ComponentSupport.java:239)
| at
com.sun.facelets.tag.jsf.ComponentSupport.encodeRecursive(ComponentSupport.java:239)
| at
com.sun.facelets.tag.jsf.ComponentSupport.encodeRecursive(ComponentSupport.java:239)
| at
com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:554)
| at
org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:352)
| at javax.faces.webapp.FacesServlet.service(FacesServlet.java:107)
| at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
| ...
|
Camel-casing, e.g.
repeatPassword=Repeat Password
<h:outputLabel for="verify" value="#{messages.repeatPassword}"/>
does work as a workaround, as one might expect.
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3955644#3955644
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3955644
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
JBoss-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jboss-user