>The only way to make that "clean" is to push the translation effort
>into your ActionForm and nest your real beans in the ActionForm. you
>would then have a String value that you convert and set into your
>nested bean. The other option is to write a different BeanUtils
>Converter implementation for numerics and register it
>(http://jakarta.apache.org/commons/beanutils/api/org/apache/commons/beanutils/ConvertUtils.html#register(org.apache.commons.beanutils.Converter,%20java.lang.Class).
I like this second approach because I presume that in this case, all INTEGER
columns will be set to NULL if no value is provided. I just don't see why an
empty INTEGER column should be 0.
But how would I approach this problem? First rewrite the Jakarata commons
converter, and then recompile the iBatis classes with these commons classes?
>
>I would personally avoid cluttering up your domain bean with faux
>setters and getters.
>
>Brandon
>
>On 5/2/05, Darek Dober <[EMAIL PROTECTED]> wrote:
>> Hi, I hava a table 'users' with column dept_id (id of department in
>>departments
>>table) This column is optional. That means the operator doesn't have to
>>assign
>>inserted user to any department. If I have bean: public class UserBean
>>{ Integer departmentId; .... } struts will make automatic
>>conversion of type. So departmentId will be set
>>to 0, if I don't set any of department. That's a cheat, because, I don't
>>want to to have a department with id equals to 0, it should be NULL. On
>>the other hand, when I implement departmentId as String, struts act
>>correctly. But while inserting record to the database, I get an error sth
>>like this: database column dept_id is type of bigint, inserted value is
>>type of
>varchar.
>> I have the solution: departmentId is type of String, but for ibatis I
>>have
>>the other metod getDepartmentIdAsInteger which return Integer or null if
>>value is empty. It works, but i don't like this. Is there any cleaner
>>solution for this. I looked into jpetstore, but there
>>were columns of type varchar. Rest of them was mendatory. I cannot use
>>columns of type varchar as foreign keys. Usage: .... VALUES(
>> #departmentId:INTEGER#,
>>.... doesn't help if departmentId is String Any ideas? Darek
|