When I tried to modify the snytax for selectKey (which is inside of an
insert tag of course) from page 4 of DevGuide.pdf:

<selectKey resultClass="int" keyProperty="id" >
        SELECT @@IDENTITY AS ID
</selectKey>

to:

<selectKey resultClass="int" keyProperty="PageID" >
        SELECT @@IDENTITY AS PageID
</selectKey>

I get a ProbeException:

[ProbeException: There is no Set property named '' in class 'Page']
   IBatisNet.Common.Utilities.Objects.ObjectProbe.SetProperty(Object
obj, String propertyName, Object propertyValue) +449
  
IBatisNet.Common.Utilities.Objects.ObjectProbe.SetPropertyValue(Object
obj, String propertyName, Object propertyValue) +516
  
IBatisNet.DataMapper.MappedStatements.MappedStatement.ExecuteInsert(IDalSession
session, Object parameterObject) +287
   IBatisNet.DataMapper.SqlMapper.Insert(String statementName, Object
parameterObject) +196

After looking through some of the test cases, I discovered I needed
something more like this:

<!-- 
The column named 'value' is used to set the PageID of the
passed in Page object as well as return an int
-->
<selectKey property="PageID" type="post" resultClass="int">
SELECT CAST(@@IDENTITY as int) as value
</selectKey>

Was I doing something wrong to make my first attempt fail?

Thanks,
Ron

Reply via email to