2009-05-21 18 views
6

¿Es posible hacer acceso transaccional XA al sistema de archivos en Java? Quiero manipular archivos dentro de los límites de una transacción y mi transacción debe participar en una transacción distribuida a través de JTA (así que supongo que el sistema de archivos debe tener acceso como un XAResource). No necesito soporte para el acceso de archivos de lectura/escritura de grano fino; tratar cada archivo como un registro es lo suficientemente bueno para mis necesidades.¿Existe una solución de código abierto para el acceso a archivos transaccionales XA en Java?

¿Alguien sabe un proyecto de código abierto que ya hace esto? No tengo ganas de implementar este lío solo para descubrir que ya se ha hecho ...

Escuché algunos rumores de que JBoss Transcations agregará soporte para esto (ver por ejemplo this discussion) pero no pudo encontrar un oficial declaración sobre esto.

Por cierto, si usted necesita el acceso a archivos transaccional, pero no se requiere la operación de participar en una fase 2 se comprometen te recomiendo echar un vistazo a Apache Commons Transaction

Un buen artículo sobre la complejidad del proceso puede ser encontrado en here.

+1

he hecho algunas búsquedas en esto recientemente y lo único que me encontré fue el código de JBoss. – Mark

Respuesta

3

En el momento en que el interno de JBoss Transactions comenzó no había ningún controlador de sistema de archivos compatible con XA para Java. No he verificado más recientemente, pero tampoco he visto noticias sobre trabajos similares. El trabajo que Ioannis hizo durante su pasantía está disponible si desea usarlo, pero no en desarrollo activo en la actualidad. A menos que desee convertirse en colaborador de código abierto :-)

En algún momento en el futuro, cuando tengamos el tiempo y/o la demanda del cliente, podremos transferir esta funcionalidad al producto. Mientras tanto sea en www.jboss.org/jbosstm/fileio/ y la discusión del proyecto original está en www.jboss.org/community/wiki/JBossTSProjects

Jonathan Halliday equipo
JBossTS dev

+0

Gracias Jonathan! Voy a obtener el código JBossTM y lo intentaré ... Por lo que he encontrado, este parece ser el mejor esfuerzo (abierto) realizado hasta ahora. Extraño, creo que mucha gente necesitaba esta funcionalidad. Gracias de nuevo, Ori – Ori

0

En atomikos hicimos esto hace unos 10 años, pero abandonó la idea debido a la falta de demanda.

Podríamos reanudar nuestros esfuerzos si hay suficientes razones para hacerlo.

6

XADisk puede conseguirte lo que estás buscando. Es gratis y de código abierto.

Cuestiones relacionadas