Re: struts 2.1.6 struts2-blank adding Double validation causes Exception
It turns out that the problem I was having - had nothing to do with type conversion. The problem was a chunk of my code that was responsible for formatting. Specifically, the exception IllegalArgumentException: Cannot format given Object as a Number was thrown because of s:text name=format.money s:param name=value value=myd/ /s:text (format.money is defined in package properties --format.money = {0,number,¤##0.00}) myd supposed to be a double. The problem occurred when wrong value was inserted instead of double (e.g. 'aaa' instead of 7,5). The same code threw no exceprion in struts 2.0, but in 2.1.6 it does. (I said earlier that earlier that showcase run differently than blank ... but I thing that was due to the fact that I didn't copy all the code from one project to other - sorry about that ;) So the problem is not so serious as I thought it was. I will try to solve this by checking first if myd contains double or not before formatting 2009/1/22 pochtaaac pochta pochta...@mail.ru: While having done the same with struts 2.0 blank project - work perfectly well. Also works if i add the code to struts2-showcase (validation folder). The problem is as follows: I tried to add double validation to 2.1.6 blank project and if i type in form illegal value - say 'aaa' - instead of showing the invalid.fieldvalue.variable message it throws the following exception : java.lang.IllegalArgumentException: Cannot format given Object as a Number java.text.DecimalFormat.format(DecimalFormat.java:487) java.text.Format.format(Format.java:140) java.text.MessageFormat.subformat(MessageFormat.java:1288) java.text.MessageFormat.format(MessageFormat.java:836) java.text.Format.format(Format.java:140) com.opensymphony.xwork2.util.LocalizedTextUtil.getMessage(LocalizedTextUtil.java:673) com.opensymphony.xwork2.util.LocalizedTextUtil.findText(LocalizedTextUtil.java:427) com.opensymphony.xwork2.TextProviderSupport.getText(TextProviderSupport.java:242) com.opensymphony.xwork2.ActionSupport.getText(ActionSupport.java:108) org.apache.struts2.util.TextProviderHelper.getText(TextProviderHelper.java:79) org.apache.struts2.components.Text.end(Text.java:161) org.apache.struts2.views.jsp.ComponentTagSupport.doEndTag(ComponentTagSupport.java:42) org.apache.jsp.example.Login_jsp._jspx_meth_s_005ftext_005f0(Login_jsp.java:268) org.apache.jsp.example.Login_jsp._jspService(Login_jsp.java:91) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) javax.servlet.http.HttpServlet.service(HttpServlet.java:717) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267) javax.servlet.http.HttpServlet.service(HttpServlet.java:717) org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390) org.apache.struts2.dispatcher.ServletDispatcherResult.doExecute(ServletDispatcherResult.java:154) org.apache.struts2.dispatcher.StrutsResultSupport.execute(StrutsResultSupport.java:186) com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:361) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:265) com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:249) org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236) com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:122) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236) com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236) com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236) com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:148)
Re: struts 2.1.6 struts2-blank adding Double validation causes Exception
It turns out that the problem I was having - had nothing to do with type conversion. The problem was a chunk of my code that was responsible for formatting. Specifically, the exception IllegalArgumentException: Cannot format given Object as a Number was thrown because of s:text name=format.money s:param name=value value=myd/ /s:text (format.money is defined in package properties --format.money = {0,number,¤##0.00}) myd supposed to be a double. The problem occurred when wrong value was inserted instead of double (e.g. 'aaa' instead of 7,5). The same code threw no exceprion in struts 2.0, but in 2.1.6 it does. (I said earlier that earlier that showcase run differently than blank ... but I thing that was due to the fact that I didn't copy all the code from one project to other - sorry about that ;) So the problem is not so serious as I thought it was. I will try to solve this by checking first if myd contains double or not before formatting On Thu, Jan 22, 2009 at 10:04 AM, Sergio Italiani sergiode...@gmail.com wrote: While having done the same with struts 2.0 blank project - work perfectly well. Also works if i add the code to struts2-showcase (validation folder). The problem is as follows: I tried to add double validation to 2.1.6 blank project and if i type in form illegal value - say 'aaa' - instead of showing the invalid.fieldvalue.variable message it throws the following exception : java.lang.IllegalArgumentException: Cannot format given Object as a Number java.text.DecimalFormat.format(DecimalFormat.java:487) java.text.Format.format(Format.java:140) java.text.MessageFormat.subformat(MessageFormat.java:1288) java.text.MessageFormat.format(MessageFormat.java:836) java.text.Format.format(Format.java:140) com.opensymphony.xwork2.util.LocalizedTextUtil.getMessage(LocalizedTextUtil.java:673) com.opensymphony.xwork2.util.LocalizedTextUtil.findText(LocalizedTextUtil.java:427) com.opensymphony.xwork2.TextProviderSupport.getText(TextProviderSupport.java:242) com.opensymphony.xwork2.ActionSupport.getText(ActionSupport.java:108) org.apache.struts2.util.TextProviderHelper.getText(TextProviderHelper.java:79) org.apache.struts2.components.Text.end(Text.java:161) org.apache.struts2.views.jsp.ComponentTagSupport.doEndTag(ComponentTagSupport.java:42) org.apache.jsp.example.Login_jsp._jspx_meth_s_005ftext_005f0(Login_jsp.java:268) org.apache.jsp.example.Login_jsp._jspService(Login_jsp.java:91) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) javax.servlet.http.HttpServlet.service(HttpServlet.java:717) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267) javax.servlet.http.HttpServlet.service(HttpServlet.java:717) org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390) org.apache.struts2.dispatcher.ServletDispatcherResult.doExecute(ServletDispatcherResult.java:154) org.apache.struts2.dispatcher.StrutsResultSupport.execute(StrutsResultSupport.java:186) com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:361) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:265) com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:249) org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236) com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:122) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236) com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236) com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236) com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:148) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236) org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:93)
struts 2.1.6 struts2-blank adding Double validation causes Exception
While having done the same with struts 2.0 blank project - work perfectly well. Also works if i add the code to struts2-showcase (validation folder). The problem is as follows: I tried to add double validation to 2.1.6 blank project and if i type in form illegal value - say 'aaa' - instead of showing the invalid.fieldvalue.variable message it throws the following exception : java.lang.IllegalArgumentException: Cannot format given Object as a Number java.text.DecimalFormat.format(DecimalFormat.java:487) java.text.Format.format(Format.java:140) java.text.MessageFormat.subformat(MessageFormat.java:1288) java.text.MessageFormat.format(MessageFormat.java:836) java.text.Format.format(Format.java:140) com.opensymphony.xwork2.util.LocalizedTextUtil.getMessage(LocalizedTextUtil.java:673) com.opensymphony.xwork2.util.LocalizedTextUtil.findText(LocalizedTextUtil.java:427) com.opensymphony.xwork2.TextProviderSupport.getText(TextProviderSupport.java:242) com.opensymphony.xwork2.ActionSupport.getText(ActionSupport.java:108) org.apache.struts2.util.TextProviderHelper.getText(TextProviderHelper.java:79) org.apache.struts2.components.Text.end(Text.java:161) org.apache.struts2.views.jsp.ComponentTagSupport.doEndTag(ComponentTagSupport.java:42) org.apache.jsp.example.Login_jsp._jspx_meth_s_005ftext_005f0(Login_jsp.java:268) org.apache.jsp.example.Login_jsp._jspService(Login_jsp.java:91) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) javax.servlet.http.HttpServlet.service(HttpServlet.java:717) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267) javax.servlet.http.HttpServlet.service(HttpServlet.java:717) org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390) org.apache.struts2.dispatcher.ServletDispatcherResult.doExecute(ServletDispatcherResult.java:154) org.apache.struts2.dispatcher.StrutsResultSupport.execute(StrutsResultSupport.java:186) com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:361) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:265) com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:249) org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236) com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:122) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236) com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236) com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236) com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:148) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236) org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:93) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236) org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:235) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236) com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:89) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236) com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:128) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236) org.apache.struts2.interceptor.ProfilingActivationInterceptor.intercept(ProfilingActivationInterceptor.java:104) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236) org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:267) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
struts 2.1.6 struts2-blank adding Double validation causes Exception
While having done the same with struts 2.0 blank project - work perfectly well. Also works if i add the code to struts2-showcase (validation folder). The problem is as follows: I tried to add double validation to 2.1.6 blank project and if i type in form illegal value - say 'aaa' - instead of showing the invalid.fieldvalue.variable message it throws the following exception : java.lang.IllegalArgumentException: Cannot format given Object as a Number java.text.DecimalFormat.format(DecimalFormat.java:487) java.text.Format.format(Format.java:140) java.text.MessageFormat.subformat(MessageFormat.java:1288) java.text.MessageFormat.format(MessageFormat.java:836) java.text.Format.format(Format.java:140) com.opensymphony.xwork2.util.LocalizedTextUtil.getMessage(LocalizedTextUtil.java:673) com.opensymphony.xwork2.util.LocalizedTextUtil.findText(LocalizedTextUtil.java:427) com.opensymphony.xwork2.TextProviderSupport.getText(TextProviderSupport.java:242) com.opensymphony.xwork2.ActionSupport.getText(ActionSupport.java:108) org.apache.struts2.util.TextProviderHelper.getText(TextProviderHelper.java:79) org.apache.struts2.components.Text.end(Text.java:161) org.apache.struts2.views.jsp.ComponentTagSupport.doEndTag(ComponentTagSupport.java:42) org.apache.jsp.example.Login_jsp._jspx_meth_s_005ftext_005f0(Login_jsp.java:268) org.apache.jsp.example.Login_jsp._jspService(Login_jsp.java:91) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) javax.servlet.http.HttpServlet.service(HttpServlet.java:717) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267) javax.servlet.http.HttpServlet.service(HttpServlet.java:717) org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390) org.apache.struts2.dispatcher.ServletDispatcherResult.doExecute(ServletDispatcherResult.java:154) org.apache.struts2.dispatcher.StrutsResultSupport.execute(StrutsResultSupport.java:186) com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:361) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:265) com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:249) org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236) com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:122) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236) com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236) com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236) com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:148) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236) org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:93) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236) org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:235) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236) com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:89) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236) com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:128) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236) org.apache.struts2.interceptor.ProfilingActivationInterceptor.intercept(ProfilingActivationInterceptor.java:104)