Hi Brant, 1) This is currently not supported, but there was an approach to achieve this with java.nio.channels.FileChannel#lock from JDK 1.4. It was, however, abandoned as commons tx should remain compatible to JDK1.2. On the other hand such an extension would be pretty simple and could be optional for JDK1.4. It could be part of a 1.1 releases.
2) Should be doable, especially with the helper classes in org.apache.commons.transaction.util.xa. A connection would likely be a dummy that simply returns an XAResource for the distributed transaction. Of couse no *real* two phase commit is supported by the FileResourceManager. I have implemented a JCA connector before and it is pretty simple conceptually, but confusing to implement. If you need support for all kinds of application servers it really is a pain in the *ss. I ended up supporting JBoss only... In short: What you want is not there, yet, but should be doable with reasonable effort. I am a bit short of time, so every contribution is highly welcome. Oliver On Thu, 06 Jan 2005 13:32:08 -0500, Brant Boehmann <[EMAIL PROTECTED]> wrote: > I am in a situation where we have a cluster of app servers. > A requirement has arrived where writing/updating/deleting multiple > files on a file system must occur atomically. > The disk is NFS mounted across all nodes in the cluster. Each node needs > to be able to write to disk in order to achieve load balancing. > > 1) Can anyone comment on how to make the FileResourceManager safely > coordinate with multiple JVMs all accessing the same directory ? > > 2) If #1 is possible, then it would surely be possible to write a JCA > adapter so these disk writes could occur in a distributed transaction > along with a DB write & JMS message publish. > > Any thoughts? > > Brant Boehmann > Software Engineer > Cadre5 > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
