5

Sto utilizzando appengine con Objectify per accedere alla mia origine dati. Uso Spring per il mio livello aziendale. Per giocare con i dati, utilizzo lo objectify-appengine-spring factory.Transazioni primaverili con Objectify e Appengine

Vorrei utilizzare le transazioni locali basate su annotazione. Conoscete un'implementazione esistente che potrei collegare direttamente come un fagiolo di primavera?

Mi piacerebbe davvero evitare il dolore di implementare il mio provider di transazioni con gli utenti di thread.

risposta

2

Controllare LushLife's ObjectifyTransactionManagerhere o here.

configurazione XML Primavera necessario (si può trovare here o here):

<!-- ObjectifyManager --> 
<bean id="objectifyManager" class="ex.objectify.spring.ObjectifyManager"> 
     <property name="basePackage" value="gso.model" /> 
</bean> 

<!-- ObjectifyFactoryBean --> 
<bean id="objectifyFactory" class="ex.objectify.spring.ObjectifyFactoryBean"> 
     <property name="manager" ref="objectifyManager" /> 
</bean> 

<!-- Custom TransactionManager implementation --> 
<bean id="transactionManager" class="ex.objectify.spring.ObjectifyTransactionManager"> 
     <property name="manager" ref="objectifyManager" /> 
</bean> 

<!-- Necesary to enable use of @Transactional in your services --> 
<tx:annotation-driven /> 

Non dimenticare di annotare i vostri metodi o classi transazionali con @Transactional.

Speciale ringraziamento all'autore di questo project.

+0

Oh! Interessante;) Puoi pubblicare un esempio della configurazione (xml) e l'uso del gestore delle transazioni? –

+0

Stavo cercando come integrare spring & objectify e ho trovato questo TransactionManager (non è mio!). È possibile vedere il codice sorgente del progetto di navigazione che viene utilizzato come qualsiasi altro, utilizzando l'approccio di supporto Spring tradizionale '@ Transactional'. Aggiornerò la mia risposta con queste informazioni – jelies

+0

Grazie per la risposta: D –

0

Suppongo che la soluzione funzioni solo per Objectify3.

Qualsiasi soluzione in cui è possibile utilizzare gli attributi di transazione (OBBLIGATORIO, RICHIESTA ecc.) Nelle transazioni AOP di primavera + Objectify4 - XML ​​o annotazione?

Inoltre, documentazione API per Objectify4 cita ancora l'uso del ObjectifyFactory metodo beginTransaction() che immagino non è più disponibile. Crea confusione per i principianti. Sarebbe più utile se i documenti sono aggiornati per riflettere il comportamento più recente. Spero di non mancare nulla.