commons-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ujjwala Kulkarni" <ujjwala.kulk...@bea.com>
Subject Posssible bug in Betwixt alpha
Date Tue, 22 Jul 2003 23:17:58 GMT
Hi , 

I guess , when user calls method beanReader.parse(file) , the  ‘update’ of class org.apache.commons.betwixt.expression.MethodUpdater
 gets called. 

I observed that if the data types are java.util.Date , int the attributes are not getting
converted to the required data type and hence I get the InvalidArgumentExcetion as the default
attribute type passed is ‘String’ 

If the date is java.sql.Date then there is no problem but if it is java.util.Date type then
I get this exception. One possible cause is that these data types do not have constructors
accepting String as only argument. 

e.g java.util.Date  has deprecated new Date(String) constructor. 

And the Interger can not be converted to int like  new int(String)  the code 

 “newValue = ConvertUtils.convert( (String) newValue, valueType );”  will always fail
to convert to int or java.util.Date. 

I modified MethodUpdater and the log file I got. And added following statements 

                System.out.println(" UJ -  "+valueType);
                System.out.println(" UJ dest-  "+newValue.getClass());

And  pasting the log I got shows that the type conversion is not working properly. 

_______________________________
 
 UJ in update method
 UJ -  class java.lang.String
 UJ dest-  class java.lang.String
 UJ in update method
 UJ -  class java.lang.String
 UJ dest-  class java.lang.String
 UJ in update method
 UJ -  class java.lang.String
 UJ dest-  class java.lang.String
 UJ in update method
 UJ -  int
 UJ dest-  class java.lang.Integer
Jul 22, 2003 3:46:01 PM org.apache.commons.betwixt.expression.MethodUpdater update
WARNING: Cannot call setter method: addNumber on bean: [com.bea.it.cib.test.CustomerBean:
ID=null, name=James] with type: com.bea.it.cib.test.CustomerBean as parameter should be of
type: int but is: java.lang.Integer
 UJ in update method
 UJ -  int
 UJ dest-  class java.lang.Integer
Jul 22, 2003 3:46:01 PM org.apache.commons.betwixt.expression.MethodUpdater update
WARNING: Cannot call setter method: addNumber on bean: [com.bea.it.cib.test.CustomerBean:
ID=null, name=James] with type: com.bea.it.cib.test.CustomerBean as parameter should be of
type: int but is: java.lang.Integer
 UJ in update method
 UJ -  int
 UJ dest-  class java.lang.Integer
Jul 22, 2003 3:46:01 PM org.apache.commons.betwixt.expression.MethodUpdater update
WARNING: Cannot call setter method: addNumber on bean: [com.bea.it.cib.test.CustomerBean:
ID=null, name=James] with type: com.bea.it.cib.test.CustomerBean as parameter should be of
type: int but is: java.lang.Integer
 UJ in update method
 UJ -  class java.lang.String
 UJ dest-  class java.lang.String
 UJ in update method
 UJ -  class java.lang.String
 UJ dest-  class java.lang.String
 UJ in update method
 UJ -  class java.util.Date
 UJ dest-  class java.lang.String
Jul 22, 2003 3:46:02 PM org.apache.commons.betwixt.expression.MethodUpdater update
WARNING: Cannot call setter method: setDate on bean: [com.bea.it.cib.test.CustomerBean: ID=null,
name=James] with type: com.bea.it.cib.test.CustomerBean as parameter should be of type: java.util.Date
but is: java.lang.String
 UJ in update method
 UJ -  class java.sql.Time
 UJ dest-  class java.sql.Time
 UJ in update method
 UJ -  class java.sql.Timestamp
 UJ dest-  class java.sql.Timestamp
 UJ in update method
 UJ -  class java.math.BigDecimal
 UJ dest-  class java.math.BigDecimal
 UJ in update method
 UJ -  class java.math.BigInteger
 UJ dest-  class java.math.BigInteger
File read ..null
Process terminated with exit code 0
_______________________________


Thanks 
Ujjwala


Mime
View raw message