Hello everyone!
I have a problem with my mapping. i use a mapping document with ejb 3 because i want to map a stored procedure result set. i've done this often because i have to integrate many procedures. it always worked fine. but now it's the first one i use here with more than one row in the result set. the problem is that in the list that i get all items are references to the first item in the list. the number of items returned is correct. please help me i don't know what i've missed! Or ist this not possible in that way?
Hibernate version:
3.1
Mapping documents:
Code:
<class name="com.xxx.PDCStockTransferQuantity">
<id name="productionOrderId" type="integer" column="prod_order_id"/>
<property name="productionOrderNo" type="string" column="prod_order_no"/>
<property name="stockTransferType" type="integer" column="stock_transfer_type"/>
<property name="prodBomPosition" type="integer" column="prod_bom_position"/>
<property name="prodBomId" type="integer" column="prod_bom_id"/>
<property name="articleMaterialId" type="integer" column="article_material_id"/>
<property name="articleMaterialNo" type="string" column="article_material_no"/>
<property name="articleMaterialDesc" type="string" column="article_material_desc"/>
<property name="unitDesc" type="string" column="unit_desc"/>
<property name="targetQuantity" type="big_decimal" column="target_quantity"/>
<property name="actualQuantity" type="big_decimal" column="actual_quantity"/>
<property name="postingQuantity" type="big_decimal" column="posting_quantity"/>
<property name="goodQuantity" type="big_decimal" column="good_quantity"/>
<property name="scrapQuantity" type="big_decimal" column="scrap_quantity"/>
<property name="stockKeeping" type="integer" column="stock_keeping"/>
<property name="distOrderPostId" type="integer" column="dist_order_pos_id"/>
<property name="storageLocationId" type="integer" column="storage_location_id"/>
</class>
<sql-query name="PDCSTOCKTRANQUANT" callable="true">
<return class="com.xxx.PDCStockTransferQuantity">
<return-property name="productionOrderId" column="prod_order_id"/>
<return-property name="productionOrderNo" column="prod_order_no"/>
<return-property name="stockTransferType" column="stock_transfer_type"/>
<return-property name="prodBomPosition" column="prod_bom_position"/>
<return-property name="prodBomId" column="prod_bom_id"/>
<return-property name="articleMaterialId" column="article_material_id"/>
<return-property name="articleMaterialNo" column="article_material_no"/>
<return-property name="articleMaterialDesc" column="article_material_desc"/>
<return-property name="unitDesc" column="unit_desc"/>
<return-property name="targetQuantity" column="target_quantity"/>
<return-property name="actualQuantity" column="actual_quantity"/>
<return-property name="postingQuantity" column="posting_quantity"/>
<return-property name="goodQuantity" column="good_quantity"/>
<return-property name="scrapQuantity" column="scrap_quantity"/>
<return-property name="stockKeeping" column="stock_keeping"/>
<return-property name="distOrderPostId" column="dist_order_pos_id"/>
<return-property name="storageLocationId" column="storage_location_id"/>
</return>
{ call stp_PDCGetStockTransferAmount(:pdcNo,:prodAmountGood,:scrapQuantity,:reworkQuantity,:confirmationType) }
</sql-query>
Code in Session Bean MethodCode:
List pdcstock = null;
pdcstock = em.createNamedQuery("PDCSTOCKTRANQUANT")
.setParameter("pdcNo",pdcNo)
.setParameter("prodAmountGood",prodAmountGood)
.setParameter("scrapQuantity",scrapQuantity)
.setParameter("reworkQuantity",reworkQuantity)
.setParameter("confirmationType",confirmationType)
.getResultList();
Name and version of the database you are using:
Sybase ASA 9