Re: [Wicket-user] Normalizing phone numbers with a Converter

2006-09-07 Thread Johan Compagner
Can you debug to see if the model that holds the number is getting the new objecteven if a validation error is thrown?Because that shouldn't happen. But it seems like it happens at your case becauseif you say that the object after the bad submit is converted then it has to come from 
the model object because only the model object is converted. Not the raw data whichshould be displayed back when you have an error.johanOn 9/7/06, 
Stefan Arentz [EMAIL PROTECTED] wrote:
I have an entity with a phoneNumber field. The format of this phonenumber is +9912345678..., the international number notation.What I want to do is to have a text field that accepts phonenumbers indifferent formats. For example 0612345678, 06 12345678 but also
+31612345678. Based on the locale I want to 'normalize' 0612345678 to+3112345678.I would like people to be able to enter a number in any format in aform field but have the model behind that to be updated to the
international notation. (+)I wrote a simple SimpleConverterAdapter implementation:public class PhoneNumberConverter extends SimpleConverterAdapter{public String toString(Object value)
{if (value instanceof String){String phoneNumber = (String) value;// Always match on an international phone numberif (internationalPhoneNumberPattern.matcher
(phoneNumber).matches()){return phoneNumber;}// Recognize dutch mobile numbers (06)if (dutchPhoneNumber.matcher(phoneNumber).matches()) {
return +31 + phoneNumber.substring(1);}}// If we cannot convert the object then throw anIllegalArgumentException.throw new IllegalArgumentException(Cannot convert non String objects);
}public Object toObject(String value){return value == null ? null : value.toString();}}but the behaviour is very odd. When I enter '0612345678' in the formand submit it, I get an error message saying that 0612345678 is not a
valid phone number (this is done by the PhoneNumberValidator) but thephone number form field is updated to +316512345678. When I presssubmit again then all is ok of course.I'm not sure what I'm doing wrong here. I simply want to accept input
in several formats. S.-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 Geronimohttp://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642
___Wicket-user mailing listWicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user
-
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=lnkkid=120709bid=263057dat=121642___
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user


Re: [Wicket-user] Normalizing phone numbers with a Converter

2006-09-07 Thread Stefan Arentz
I will create a simple and isolated test case and debug that.

 S.

On 9/7/06, Johan Compagner [EMAIL PROTECTED] wrote:
 Can you debug to see if the model that holds the number is getting the new
 object
 even if a validation error is thrown?
 Because that shouldn't happen. But it seems like it happens at your case
 because
 if you say that the object after the bad submit is converted then it has to
 come from
 the model object because only the model object is converted. Not the raw
 data which
 should be displayed back when you have an error.

 johan



 On 9/7/06, Stefan Arentz [EMAIL PROTECTED] wrote:
 
  I have an entity with a phoneNumber field. The format of this phone
 number is +9912345678..., the international number notation.

 What I want to do is to have a text field that accepts phonenumbers in
 different formats. For example 0612345678, 06 12345678 but also
 +31612345678. Based on the locale I want to 'normalize' 0612345678 to
 +3112345678.

 I would like people to be able to enter a number in any format in a
 form field but have the model behind that to be updated to the
 international notation. (+)

 I wrote a simple SimpleConverterAdapter implementation:

 public class PhoneNumberConverter extends SimpleConverterAdapter
 {
 public String toString(Object value)
 {
 if (value instanceof String)
 {
 String phoneNumber = (String) value;

 // Always match on an international phone number

 if (internationalPhoneNumberPattern.matcher
 (phoneNumber).matches())
 {
 return phoneNumber;
 }

 // Recognize dutch mobile numbers (06)

 if (dutchPhoneNumber.matcher(phoneNumber).matches()) {
 return +31 + phoneNumber.substring(1);
 }
 }

 // If we cannot convert the object then throw an
 IllegalArgumentException.

 throw new IllegalArgumentException(Cannot convert
 non String objects);
 }

 public Object toObject(String value)
 {
 return value == null ? null : value.toString();
 }
 }

 but the behaviour is very odd. When I enter '0612345678' in the form
 and submit it, I get an error message saying that 0612345678 is not a
 valid phone number (this is done by the PhoneNumberValidator) but the
 phone number form field is updated to +316512345678. When I press
 submit again then all is ok of course.

 I'm not sure what I'm doing wrong here. I simply want to accept input
 in several formats.

  S.

 -
 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=lnkkid=120709bid=263057dat=121642
 ___
 Wicket-user mailing list
 Wicket-user@lists.sourceforge.net
  https://lists.sourceforge.net/lists/listinfo/wicket-user


 -
 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=lnkkid=120709bid=263057dat=121642

 ___
 Wicket-user mailing list
 Wicket-user@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/wicket-user




-
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=lnkkid=120709bid=263057dat=121642
___
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user