Hi! There –
Let me introduce you all with the issue,
The XML document in the Tamino Database is pretty small, with about 2 ordinary elements and 2 elements which has CDATA Sections. Well, depending upon the some ID value I need to update one of the CDATA Section. To add more, these processing would be happening concurrently, for many Tamino Connections, as these updations are issues to a Data Access Objects, whenever a MDB is notified.
These are the list of the problems/issues I faced during the update of the XML document.
1. Under concurrent operations, I am getting an error message something like “(The Requested document(s) could not be locked)” with the error code INOXYE9155. Does anyone has tested Tamino 4.1.1 in a MDB environment with a many database hits, bascially for every onMessage() notification, 2 or 3 database calls are being made. I even tried with TLockMode set to YES for the upadate operations. But I guess, this would degrade the performance of the application.
2. I tried to update a particular inner element of DOM Element, as obtained from TRespone(I am using TaminoAPI4J and the Object Model is TDOMObjectModel). Well, the Element.getElementsByTagNames() doesnt’ seems to be working or not useful in this regard. (In one of the tamino forum its been adviced/suggested to use getElementsByTagName() rather than Node.getChildNodes().
Somemore information, even before someone asks me … “which one is your webserver”, let me tell you, It is Apache configured to use with Tamino 4.1.1
3. If I had to copy/replace the whole of XML document from the database, with a new one. would the meta informatiom like the ino:id, docname associated with the TXMLObject are lost?. I certainly dont’ think this is the right way to replace whole of the Document.
4. So I thought of using the XQuery instead. This is the following query.
update for $data in input()/SSData
let $sData := $data/SData
where $data/SID=71
do replace $sData/text() with
'<![CDATA[
<?xml version="1.0"?>
admin48
admin4887676
admin4884545
]]> '
This DOES updates the database, but the updated CDATA section, does not happens to be a CDATA section but its is more like any other normal String.
Could anyone suggest me in this regard as how to update a CDATA section with XQuery.
Thanks and Regards,
Ravi Chamarthy.
#webMethods#API-Management#webMethods-Tamino-XML-Server-APIs