You don't need to modify your model, just delegate to it: public void setValue(String s) { if (!StringUtils.isBlank(s)) { try { model.setValue(new BigDecimal(s)); catch(NumberFormatException e) { model.setValue(null); } } }
2008/7/24 Milan Milanovic <[EMAIL PROTECTED]>: > > Dear Gabriel, > > thank you. I tried without my Converter class for BigDecimal and it is the > same, when user doesn't enter value I got that error in a log. > > I'm using S2 2.0.11.1. This solution is good, but my value that is set comes > from model where I have class and attribute (BigDecimal) with its get/set > methods, by putting this set(String) instead of set(BigDecimal) I'm > violating class semantics ? > > The other solution is O.K., but I've already used it with Dates and > datetimepicker. Can I change in some way this BigDecimal converter to avoid > this error: > http://www.nabble.com/-s2--Formatting-input-textfields-tt18593985.html > http://www.nabble.com/-s2--Formatting-input-textfields-tt18593985.html > > -- > Regards, Milan. > > > > > Gabriel Belingueres-2 wrote: >> >> I'm using S2.1.2 (are you using the same version?), and it will throw >> a NumberFormatException when setting an empty string, but this >> workaround will make ParameterInterceptor to think it is setting a >> String parameter: >> >> public void setValue(String s) { >> if (!StringUtils.isBlank(s)) { >> try { >> this.value= new BigDecimal(s); >> catch(NumberFormatException e) { >> this.value = null; >> } >> } >> } >> >> of course you still need a validator so that the string doesn't >> violate the BigDecimal grammar. >> >> Other option (may be more clean) is the action having both the string >> instance and the real BigDecimal instance, then the form will only set >> the string instance. >> >> 2008/7/24 Milan Milanovic <[EMAIL PROTECTED]>: >>> >>> Dear Newton, >>> >>> Yes, I'm using BigDecimal type converter given here: >>> http://www.nabble.com/-s2--Formatting-input-textfields-tt18593985.html >>> http://www.nabble.com/-s2--Formatting-input-textfields-tt18593985.html . >>> >>> -- >>> Thx, Milan >>> >>> >>> newton.dave wrote: >>>> >>>> Are you using a BigDecimal type converter (one of which was just >>>> posted)? >>>> >>>> AFAIK it won't work w/o the converter, but I could be remembering >>>> incorrectly. >>>> >>>> Dave >>>> >>>> --- On Thu, 7/24/08, Milan Milanovic <[EMAIL PROTECTED]> wrote: >>>> >>>>> From: Milan Milanovic <[EMAIL PROTECTED]> >>>>> Subject: Re: [s2] Making textfield input optional >>>>> To: user@struts.apache.org >>>>> Date: Thursday, July 24, 2008, 11:36 AM >>>>> Dear Gabriel, >>>>> >>>>> no, my actual question is related to the issue when user >>>>> doesn't enter >>>>> anything to the textfield which is connected to BigDecimal >>>>> in my action >>>>> class. >>>>> >>>>> -- >>>>> Thx, Milan >>>>> >>>>> >>>>> >>>>> Gabriel Belingueres-2 wrote: >>>>> > >>>>> > Please make sure that the input string is according >>>>> the BigDecimal format: >>>>> > >>>>> http://java.sun.com/j2se/1.5.0/docs/api/java/math/BigDecimal.html#BigDecimal(java.lang.String) >>>>> > >>>>> > 2008/7/24 Milan Milanovic >>>>> <[EMAIL PROTECTED]>: >>>>> >> >>>>> >> Hi Gabriel, >>>>> >> >>>>> >> no I cannot do this because my field is of type >>>>> BigDecimal and I must >>>>> >> have >>>>> >> get/set methods for it. >>>>> >> >>>>> >> -- >>>>> >> Thx, Milan >>>>> >> >>>>> >> >>>>> >> Gabriel Belingueres-2 wrote: >>>>> >>> >>>>> >>> instead of: >>>>> >>> >>>>> >>> public vlid setInValue(BigDecimal x) { >>>>> >>> this.x = x; >>>>> >>> } >>>>> >>> >>>>> >>> test with this: >>>>> >>> >>>>> >>> public vlid setInValue(String s) { >>>>> >>> this.x = new BigDecimal(s); >>>>> >>> } >>>>> >>> >>>>> >>> >>>>> >>> 2008/7/24 Milan Milanovic >>>>> <[EMAIL PROTECTED]>: >>>>> >>>> >>>>> >>>> Hi Jim, >>>>> >>>> >>>>> >>>> no, I have that method. >>>>> >>>> >>>>> >>>> -- >>>>> >>>> Thx, Milan >>>>> >>>> >>>>> >>>> >>>>> >>>> Jim Kiley wrote: >>>>> >>>>> >>>>> >>>>> Doesn't that exception usually get >>>>> thrown when, in this case, >>>>> >>>>> ViewAction >>>>> >>>>> doesn't have a setInValue() >>>>> method? >>>>> >>>>> >>>>> >>>>> jk >>>>> >>>>> >>>>> >>>>> On Thu, Jul 24, 2008 at 10:31 AM, >>>>> Gabriel Belingueres >>>>> >>>>> <[EMAIL PROTECTED]> >>>>> >>>>> wrote: >>>>> >>>>> >>>>> >>>>>> Which is the data type of inValue? >>>>> >>>>>> >>>>> >>>>>> 2008/7/24 Milan Milanovic >>>>> <[EMAIL PROTECTED]>: >>>>> >>>>>> > >>>>> >>>>>> > Hi, >>>>> >>>>>> > >>>>> >>>>>> > I have one form with multiple >>>>> textfields, and I want to one of that >>>>> >>>>>> > textfield be optional for >>>>> user, i.e., he doesn't need to enter >>>>> >>>>>> information >>>>> >>>>>> > in that particular field. >>>>> Now, when user don't enter I get this in >>>>> >>>>>> my >>>>> >>>>>> log: >>>>> >>>>>> > >>>>> >>>>>> > ERROR >>>>> com.opensymphony.xwork2.interceptor.ParametersInterceptor:204 >>>>> >>>>>> - >>>>> >>>>>> > ParametersInterceptor - >>>>> [setParameters]: Unexpected Exception >>>>> >>>>>> caught >>>>> >>>>>> setting >>>>> >>>>>> > 'inValue' on >>>>> 'class com.myProject.action.ViewAction: Error setting >>>>> >>>>>> > expression 'inValue' >>>>> with value '[Ljava.lang.String;@1d3ac6e' >>>>> >>>>>> > >>>>> >>>>>> > How can I enable this but >>>>> without getting this error ? >>>>> >>>>>> > >>>>> >>>>>> > -- >>>>> >>>>>> > Thx, Milan >>>>> >>>>>> > -- >>>>> >>>>>> > View this message in context: >>>>> >>>>>> >>>>> http://www.nabble.com/-s2--Making-textfield-input-optional-tp18632806p18632806.html >>>>> >>>>>> > Sent from the Struts - User >>>>> mailing list archive at Nabble.com. >>>>> >>>>>> > >>>>> >>>>>> > >>>>> >>>>>> > >>>>> >>>>>> >>>>> --------------------------------------------------------------------- >>>>> >>>>>> > To unsubscribe, e-mail: >>>>> [EMAIL PROTECTED] >>>>> >>>>>> > For additional commands, >>>>> e-mail: [EMAIL PROTECTED] >>>>> >>>>>> > >>>>> >>>>>> > >>>>> >>>>>> >>>>> >>>>>> >>>>> --------------------------------------------------------------------- >>>>> >>>>>> To unsubscribe, e-mail: >>>>> [EMAIL PROTECTED] >>>>> >>>>>> For additional commands, e-mail: >>>>> [EMAIL PROTECTED] >>>>> >>>>>> >>>>> >>>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> >>>>> Jim Kiley >>>>> >>>>> Technical Consultant | Summa >>>>> >>>>> [p] 412.258.3346 [m] 412.445.1729 >>>>> >>>>> http://www.summa-tech.com >>>>> >>>>> >>>>> >>>>> >>>>> >>>> >>>>> >>>> -- >>>>> >>>> View this message in context: >>>>> >>>> >>>>> http://www.nabble.com/-s2--Making-textfield-input-optional-tp18632806p18633474.html >>>>> >>>> Sent from the Struts - User mailing list >>>>> archive at Nabble.com. >>>>> >>>> >>>>> >>>> >>>>> >>>> >>>>> --------------------------------------------------------------------- >>>>> >>>> To unsubscribe, e-mail: >>>>> [EMAIL PROTECTED] >>>>> >>>> For additional commands, e-mail: >>>>> [EMAIL PROTECTED] >>>>> >>>> >>>>> >>>> >>>>> >>> >>>>> >>> >>>>> --------------------------------------------------------------------- >>>>> >>> To unsubscribe, e-mail: >>>>> [EMAIL PROTECTED] >>>>> >>> For additional commands, e-mail: >>>>> [EMAIL PROTECTED] >>>>> >>> >>>>> >>> >>>>> >>> >>>>> >> >>>>> >> -- >>>>> >> View this message in context: >>>>> >> >>>>> http://www.nabble.com/-s2--Making-textfield-input-optional-tp18632806p18633888.html >>>>> >> Sent from the Struts - User mailing list archive >>>>> at Nabble.com. >>>>> >> >>>>> >> >>>>> >> >>>>> --------------------------------------------------------------------- >>>>> >> To unsubscribe, e-mail: >>>>> [EMAIL PROTECTED] >>>>> >> For additional commands, e-mail: >>>>> [EMAIL PROTECTED] >>>>> >> >>>>> >> >>>>> > >>>>> > >>>>> --------------------------------------------------------------------- >>>>> > To unsubscribe, e-mail: >>>>> [EMAIL PROTECTED] >>>>> > For additional commands, e-mail: >>>>> [EMAIL PROTECTED] >>>>> > >>>>> > >>>>> > >>>>> >>>>> -- >>>>> View this message in context: >>>>> http://www.nabble.com/-s2--Making-textfield-input-optional-tp18632806p18634541.html >>>>> Sent from the Struts - User mailing list archive at >>>>> Nabble.com. >>>>> >>>>> >>>>> --------------------------------------------------------------------- >>>>> To unsubscribe, e-mail: [EMAIL PROTECTED] >>>>> For additional commands, e-mail: >>>>> [EMAIL PROTECTED] >>>> >>>> --------------------------------------------------------------------- >>>> To unsubscribe, e-mail: [EMAIL PROTECTED] >>>> For additional commands, e-mail: [EMAIL PROTECTED] >>>> >>>> >>>> >>> >>> -- >>> View this message in context: >>> http://www.nabble.com/-s2--Making-textfield-input-optional-tp18632806p18634840.html >>> Sent from the Struts - User mailing list archive at Nabble.com. >>> >>> >>> --------------------------------------------------------------------- >>> To unsubscribe, e-mail: [EMAIL PROTECTED] >>> For additional commands, e-mail: [EMAIL PROTECTED] >>> >>> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: [EMAIL PROTECTED] >> For additional commands, e-mail: [EMAIL PROTECTED] >> >> >> > > -- > View this message in context: > http://www.nabble.com/-s2--Making-textfield-input-optional-tp18632806p18635312.html > Sent from the Struts - User mailing list archive at Nabble.com. > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]