Hi all,
in my trigger (on insert, update and delete events) I perform an update (via xquery) of existing documents in the same collection and of the same doctype of the current document. But an error message was returned:
Database access failure (7126, INOSXE7126, Server extension failed, INOSXE7023: Function ‘Ead.InsertDoc’ failed, because XML callback failed with error ‘8504’)
where:
INOXME8504 XML maximum request duration exceeded
but it is really a maximum request duration exceeded problem? I suppose it’s a lock problem.
Every help and suggestion is appreciated.
Thanks in advance,
Pam
PS: the xquery performing code is
public String TaminoXQuery(String expression)
throws TServerNotAvailableException
{
String resultXML = “”;
try
{
TResponse response = null;
conn = getConnection(); // conn is my TConnection
TLocalTransaction transaction = conn.useLocalTransactionMode();
// collection is my collection
TXMLObjectAccessor xmlObjectAccessor = conn.newXMLObjectAccessor(TAccessLocation.newInstance(collection), TDOMObjectModel.getInstance());
TXQuery xquery = TXQuery.newInstance(expression);
try
{
response = xmlObjectAccessor.xquery(xquery);
}
catch(TAccessorException accessorException)
{
transaction.rollback();
conn.useAutoCommitMode();
conn.close();
throw accessorException;
}
StringWriter stringWriter = new StringWriter();
while(response.getXMLObjectIterator().hasNext())
try
{
response.getXMLObjectIterator().next().writeTo(stringWriter);
}
catch(Exception e)
{
e.printStackTrace();
}
try
{
resultXML = new String(stringWriter.toString().getBytes(“UTF-8”));
}
catch(UnsupportedEncodingException e1)
{
e1.printStackTrace();
}
transaction.commit();
conn.useAutoCommitMode();
conn.close();
return resultXML;
}
catch(Exception e)
{
return resultXML;
}
}
#API-Management#webMethods#Tamino