I'm trying to find a possibility to pass multiple CLOB between client and server. Obviously, I started with an examination of apex.ajax.clob which is widely used to pass CLOB but which has got the restriction of only being able to pass one CLOB at a time due to the fact that the collection that gets populated is called CLOB_CONTENT.
But when looking at the JS-Source under i/libraries/apex/apex_4_2.js, I found that the mentioned collection name is passed to a PL/SQL Process called APXWGT as a parameter. Therefore I copied the code of apex.ajax.clob and made the collection name accessible from the outside, hoping that if I pass in an arbitrary collection name, this then gets read or written.
As a matter of fact, this did not solve the issue, APXWGT would not find any other collection than a collection named CLOB_CONTENT.
Is anybody aware of this limitation? Why do I pass in a collection name, if it is hardcoded in the PL/SQL-Process or is there another misunderstanding on my side that prevents me from reading a collection named different than CLOB_CONTENT? I checked that the clob I'm going to read from the database has been succesfully written to WWV_FLOW_COLLECTIONS$ and the content has been written to WWV_FLOW_COLLECTION_MEMBERS$. I also checked that the JS-process that calls APXWGT does it with the correct parameters (collection names fit, the rest is exactly the same as with the original code). The call doesn't return any value though.
I'm aware of Matt Nolans blog on this issue but I personally find his approach quite cumbersome for something so basic like reading three or four larger strings in parallel using AJAX. Can anybody share some insight on this?