0

Spring MVC Web アプリケーションがあります。Hibernate と AJAX を使用したい。Item と CatalogItem の 2 つのエンティティがあります。エンティティ CatalogItem には、項目へのいくつかのフィールドと参照が含まれています。

AJAX を使用して CatalogItem を作成することは可能ですか? 単純なオブジェクトでは問題はありませんが、ネストされた..次のようなものが必要です:jQueryからのPOSTリクエスト:

$.ajax({
    'type': 'POST',
    'url': myurl,
    'contentType': 'application/json',
    'data': JSON.stringify({'count':10,'deliveryTime':'2012-12-12T12:12:12',
    'itemId':{'name':'name','price':100,'description':'qwerty'}}),
    'dataType': 'json',
    'success': function(){
        //
    }
});

春のコントローラーで:

@RequestMapping(value = "/add", method = RequestMethod.POST)
public void addItem(@RequestBody CatalogItem catalogItem) {
    catalogDAO.addCatalogItem(catalogItem);
}

しかし、これはうまくいきません。投げる

[Request processing failed; nested exception is org.hibernate.PropertyValueException: not-null property references a null or transient value: entities.CatalogItem.itemId] with root cause
org.hibernate.PropertyValueException: not-null property references a null or transient value: entities.CatalogItem.itemId

手伝って頂けますか?

4

1 に答える 1

2

最初にアイテムを保存せずに CatalogItem を保存しようとしています。

あなたのマッピングを見なければ、そうではないと言うのは難しいです.

カスケードに関する Hibernate のドキュメントを読んでください。

于 2012-05-23T20:36:28.637 に答える