That was it! Damn copy-paste bites me in the ass again. Thank you VERY much!
On 1/29/07, Larry Meadors <[EMAIL PROTECTED]> wrote:
Are you sure you are calling insert() and not update()? Larry On 1/29/07, Robert Campbell <[EMAIL PROTECTED]> wrote: > I've used iBatis for a while, and selectKey without trouble. For some > reason, however, the following code won't work. It never calls setId() on > the object passed in as a parameter. Basically i'm getting an Oracle error > telling me id can't be null.. so selectKey isn't calling setId() before the > Insert as it should. Any ideas? Thanks everyone! > > <insert id="addUser" parameterClass="credential"> > <selectKey resultClass="java.lang.Long" keyProperty="id" type="pre"> > select gw_sequence.nextval as id from dual > </selectKey> > <![CDATA[ > insert into credentials ( > id, > username, > password, > organization_id > ) values ( > #id#, > #username#, > #password#, > #organizationId# > ) > ]]> > </insert> > > Model: > > .... > > protected Long id; > > /** > * @return Returns the id. > */ > public Long getId() { > log.error("******************* User.getId() returned " + id); > return id; > } > > /** > * @param id > * The id to set. > */ > public void setId(Long id) { > log.error("******************* User.setId() set to " + id); > this.id = id; > } > ... >