Well the problem obviously lies here:
I assume that you want to make the join with bid entries where the bid date is null.
Code:
<many-to-one name="currentBidder" property-ref="currentBidder" fetch="join">
<column name="itemkey" />
<formula>'1'</formula>
</many-to-one>
But how should hibernate know that you want to compare 1 with bid.currentRecord. So it assumes you want to join using the id and since the id only consists of 1 column the 2nd column is null.
I don't know if there is a sleek way to put that in the many-to-one definition. But you can use a hql statement selecting the current bidder.
Code:
select b from item i join i.bid b where b.biddate is null