If a server extension fails, the entire XML request of which this is a part fails. The response document generated by Tamino contains information about the nature of the error. If the request was made in an anonymous session, the current transaction is implicitly rolled back. If the function was called from a request that was part of a user's session, the user must evaluate the response document and decide whether or not to perform a rollback.
A server extension function fails:
when it throws an exception (see the section Exceptions for more information);
when programming errors in server extension code lead to exceptions (for example, memory violations for a C++ or Direct server extension or OutOfBoundsExceptions for a Java-based server extension);
in Direct or Java-specific error situations;
if the server extension function attempts to write to the Tamino database using an XML callback and this attempt fails, the call of the whole server extension function fails. The response document contains either a detailed error message coded by the server extension developer or a general error message referring to the error situation.