You should retry with nonpersistent messages (and no XA transactions - the point being to achieve zero disk access).There's no need to modify the app to try this out. You can force all messages to non persistent via the "delivery mode override" configurable on the destination. I don't recall if this setting is dynamic -- if not, you'll need reboot the servers for it to take effect.
write a small test app that performs tiny writes and syncs to disk a few times a second and run it on the server.If your running the WebLogic file store with the default synchronous write policy of "Direct", then the store is likely using its native unbuffered I/O driver. The closest you can get to this mode with with pure Java is to open a RandomAccessFile in "rwd" mode.