hi,
I'm having some problems with a disappearing namespace
both seem related to when the xml is generated through a cocoon://something in the sitemap
Anyone else have had this problem, and perhaps know how to fix this?
The system that fails: FreeBSD 4.10-STABLE cocoon-2.1.5.1 running in Tomcat 4.1 xalan-2.6.0
On my laptop I dont have this problem. (winXP, Tomcat 5.0 or Jetty/4.2.19, Cocoon 2.1.5.1, xalan 2.6.0)
Here below are 2 seperate manifestations
1) I have a custom Transformer to create a FreeChart picture, (chart-jpeg serializer is JFCSerializer http://www.sidimar.ipzs.it/fins010/serializer-ref.html)
sitemap snippet :
<map:match pattern="**/enquete-report-chart-data/*">
<map:generate src="cocoon:/{1}/enquete-definition" />
<map:transform type="report">
<map:parameter name="question" value="{2}" />
</map:transform>
<map:serialize type="xml" />
</map:match>
<map:match pattern="**/enquete-report-chart/*">
<map:generate src="cocoon:/{1}/enquete-definition" />
<map:transform type="report">
<map:parameter name="question" value="{2}" />
</map:transform>
<map:serialize type="chart-jpeg" />
</map:match>
code snippet :
public class ReportTransformer extends AbstractDOMTransformer implements Composable {
protected Document transform(Document doc) {
this.getLogger().error(doc.getNamespaceURI());
//the line above returns null for the namespace Document newdoc = null;
Connection connection = null; try {
connection = datasource.getConnection();Node qnode = XPathAPI.selectSingleNode(doc, "q:enquete/q:questions/q:[EMAIL PROTECTED] = '" + question + "']", doc);
// the line above gives the following error : Prefix must resolve to a namespace
...
2) In a custom generator which generates a cform selection-list xml
the resulting xml lacks the namespace definition.
I could work around this one by explicity adding the namespace attribute to the starting element
sitemap snippet :
<map:match pattern="form/lookup/*">
<map:generate type="lookup">
<map:parameter name="type" value="{1}" />
</map:generate>
<map:serialize type="xml" />
</map:match>code snippet :
public class LookupGenerator extends AbstractComposableGenerator {private static final String NAMESPACE_URI_FORMDEFINITION = "http://apache.org/cocoon/forms/1.0#definition";
public generate()
...
contentHandler.startDocument();
AttributesImpl attributes = new AttributesImpl();
//WORKAROUND: explicitly added namespace attribute
attributes.addAttribute(NAMESPACE_URI_FORMDEFINITION, "xmlns:fd", "xmlns:fd", "CDATA", NAMESPACE_URI_FORMDEFINITION);
// the following adds <fd:selection-list xmlns:fs="http://apache.org/cocoon/forms/1.0#definition">
contentHandler.startElement(NAMESPACE_URI_FORMDEFINITION, "selection-list", "fd:selection-list", attributes);
...
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
