I have the following: <insert id="insert" parameterClass="domain.Thing"> insert into thing (thing_id, animal, mineral, vegetable) values ( #thingId#, #animal:BOOLEAN:False#, #mineral:BOOLEAN:False#, #vegetable:BOOLEAN:False# ) </insert>
When iBatis executes the above an exception is thrown: com.ibatis.common.jdbc.exception.NestedSQLException: --- The error occurred in ibatis/business.xml. --- The error occurred while applying a parameter map. --- Check the Business.insert-InlineParameterMap. --- Check the statement (update failed). --- Cause: com.mysql.jdbc.exceptions.MySQLIntegrityConstraintViolationException: Column 'animal' cannot be null at com.ibatis.sqlmap.engine.mapping.statement.MappedStatement.executeUpdate(MappedStatement.java:107) at com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.insert(SqlMapExecutorDelegate.java:393) My understanding here is that if the JavaBean property returns a null value that it is substituted for the value specified in the parameterMap. The Exception tends to discount this interpretation. What am I missing? Thanks in advance Gav