I'm using mod_oradav as a method of exposing data in a CLOB column (although type is irrelevant) as a resource that is can be accessed over the internet through a URL. I have this all set up and working with an Oracle 10g database, the Oracle web server, and version 1.5 of the Oracle Webdav container (a set of tables in my schema that is installed by the supplied scripts).
I have exposed some data from a BLOB column as resources by using: ORDSYS.DAV_PUBLIC.Expose_Blob_Column()
The only issue that I have is that I am able to read the contents of the BLOB column easily, but they are all marked as READ-ONLY. The strange thing is that when I do a save-as from my desktop applications, I am able to save to the WebDAV folder and the resource is actually saved in my database. This resource then becomes read/write in subsequent opens. The problem here is that I don't want the user to save-as, I need them to be able to modify the resource they have opened and then save the changes to the database.
I found that the reason for files that are saved-as being read-write is that the oradav driver actually saved the content locally in the oradav container as a BLOB instead of pushing the value out to my original source table. I also found that if I fudged the metadata in the oradav container I could get my resources to appear as read/write. The only issue is that when you try to save the whole thing falls apart and I get an error saying that the location is invalid (from Microsoft Word 2007). So obviously the massaging of metadata is not recommended.
Does anyone know what can be done to make the resources that are exposed from columns in database tables read/write?
The documentation for this stuff is somewhat lacking, it tells you about getting it set up, but there is little on diagnosing issues. Can anyone help?
Has anyone actually had success in getting their mod_oradav implementation to serve up resources that are read/write? If so, what method did you use to expose the data in your tables? Was there something extra that you need to do to get it working?