Notifying Generator
The notifying generator creates XML content describing an error condition.
When an error occurs in a pipeline with a defined error handler, the
sitemap manager activates the notifying generator, feeding it the cause of
the error.
-
Name : <notifier>
-
Class: org.apache.cocoon.sitemap.NotifyingGenerator
-
Cacheable: No.
-
Mode: Sitemap internal
DTD
XML generated by notifying generator uses the
namespace http://apache.org/cocoon/error/2.0 and
the error prefix.
Usually the error condition is described by a throwable object.
The information of this throwable object is used by the
error generator to produce the xml content.
The various elements of the xml content include the following.
-
The element
notify is the root element, having
attributes type and sender .
The attribute type has fixed value error .
The attribute sender describes the sender of the
error notification object.
-
The element
title stores the title of the eror notification.
In the current implementation, it has fixed value Cocoon error .
-
The
source element stores the class name of the throwable object
of the error notification.
-
The
message element stores the getMessage() result
of the throwable object of the error notification, and may be empty.
-
The
description element stores the toString() result
of the throwable object of the error notification.
-
Optional
extra elements stores nested exceptions
of the throwable object of the error notification.
| | |
|
<!ELEMENT notify (title, source, message, description, extra*)>
<!ATTLIST notiy
type CDATA #REQUIRED
sender CDATA #REQUIRED
>
<!ELEMENT title #PCDATA>
<!ELEMENT source #PCDATA>
<!ELEMENT message #PCDATA>
<!ELEMENT description #PCDATA>
<!ELEMENT extra #PCDATA>
<!ATTLIST extra description #CDATA>
<!ELEMENT statusinfo (group|value)*>
| |
| | |
Example
The following example outputs the xml content of
an error generator:
| | |
|
<?xml version="1.0"
xmlns:error="http://apache.org/cocoon/error/2.0
encoding="UTF-8"?>
<error:notify
error:type="error"
error:sender="org.apache.cocoon.servlet.CocoonServlet">
<error:title>Cocoon error</error:title>
<error:source>java.lang.NullPointerException</error:source>
<error:message></error:message>
<error:description></error:description>
<error:extra description=""></error:extra>
</error:notify>
| |
| | |
|