2009-09-04 19 views
10

Ho un'app GWT che effettua una chiamata RPC a un server per salvare/creare una nuova entità. Tuttavia, la primavera-Hibernate back-end genera un'eccezione con il seguente messaggio di errore:tentativo di creare evento SaveOrUpdate con entità nulla

attempt to create saveOrUpdate event with null entity 

Non sono sicuro di cosa significhi. Cosa è nulla? Se si tratta di una nuova entità che sto salvando, mi aspetto che il campo id sia null o possibilmente 0 e che quindi lo abbia inserito in ibernazione. Questa aspettativa è corretta?

+0

Potremmo vedere il tuo file di mappatura e la tua entità? – Zoidberg

+0

Zoidberg, Non sembra essere un file di mapping al problema dell'entità. Def sembra essere un problema di serializzazione come Andre riporta in basso. Quindi in GWT avvio un servizio RPC in classe A basata su composito, quindi in un'altra sotto-finestra (penso popup) avvio nuovamente la classe di servizio RPC. Se la classe della sotto finestra è in grado di ottenere tutte le entità di tipo A bene, ma nessun aggiornamento, salvataggio o eliminazione ha esito positivo. – Rafael

risposta

15

null entity potrebbe significare che saveOrUpdate() è in realtà ricevendo null come argomento, vale a dire:

session.saveOrUpdate(null); 

Se si sta utilizzando la serializzazione di passare ad opporsi a una postazione remota (lei ha citato RPC), forse si dovrebbe verificare se la serializzazione funziona correttamente. Qualcosa mi dice che non riuscire a serializzare potrebbe finire con il passaggio di un riferimento nullo.

+0

Andre, Sia l'entità back-end che l'entità client GWT sono serializzate. A proposito, posso creare/salvare correttamente l'entità se eseguo il progetto Eclipse attraverso i bean Spring. Ma quando eseguo lo stesso codice dalla modalità GWT in hosting, ottengo l'eccezione generata. Posso anche creare/salvare altre entità bene. strano. – Rafael

+0

Quindi intendi che questo errore si verifica solo con questa specifica entità? saveOrUpdate() su altri funziona bene? –

+0

Sì. Sto iniziando a pensare che sia un problema con il proxy rpc. Vedi, ho il Widget A dove avvio un servizio RPC. Nel widget A, istanzio un altro widget, il widget B. Quando lo faccio, passo al widget B il servizio RPc dal widget A. – Rafael

Problemi correlati