You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@cocoon.apache.org by as...@apache.org on 2006/05/05 16:09:23 UTC

svn commit: r400083 - in /cocoon/trunk/blocks/cocoon-serializers/cocoon-serializers-impl: src/main/java/org/apache/cocoon/components/serializers/XHTMLSerializer.java src/main/resources/META-INF/legacy/sitemap-additions/cocoon-serializers.xmap status.xml

Author: asavory
Date: Fri May  5 07:09:22 2006
New Revision: 400083

URL: http://svn.apache.org/viewcvs?rev=400083&view=rev
Log:
COCOON-1845 add support for omit-xml-declaration to XHTMLSerializer

Modified:
    cocoon/trunk/blocks/cocoon-serializers/cocoon-serializers-impl/src/main/java/org/apache/cocoon/components/serializers/XHTMLSerializer.java
    cocoon/trunk/blocks/cocoon-serializers/cocoon-serializers-impl/src/main/resources/META-INF/legacy/sitemap-additions/cocoon-serializers.xmap
    cocoon/trunk/blocks/cocoon-serializers/cocoon-serializers-impl/status.xml

Modified: cocoon/trunk/blocks/cocoon-serializers/cocoon-serializers-impl/src/main/java/org/apache/cocoon/components/serializers/XHTMLSerializer.java
URL: http://svn.apache.org/viewcvs/cocoon/trunk/blocks/cocoon-serializers/cocoon-serializers-impl/src/main/java/org/apache/cocoon/components/serializers/XHTMLSerializer.java?rev=400083&r1=400082&r2=400083&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-serializers/cocoon-serializers-impl/src/main/java/org/apache/cocoon/components/serializers/XHTMLSerializer.java (original)
+++ cocoon/trunk/blocks/cocoon-serializers/cocoon-serializers-impl/src/main/java/org/apache/cocoon/components/serializers/XHTMLSerializer.java Fri May  5 07:09:22 2006
@@ -81,6 +81,9 @@
 
     /** The <code>DocType</code> instance representing the document. */
     protected DocType doctype_default = null;
+    
+    /** Define whether to put XML declaration in the head of the document. */
+    private String omitXmlDeclaration = null;
 
     /* ====================================================================== */
 
@@ -113,6 +116,8 @@
     throws ConfigurationException {
         super.configure(conf);
 
+        this.omitXmlDeclaration = conf.getChild("omit-xml-declaration").getValue(null);
+
         String doctype = conf.getChild("doctype-default").getValue(null);
         if ("none".equalsIgnoreCase(doctype)) {
             this.doctype_default = null;
@@ -131,6 +136,20 @@
     /* ====================================================================== */
 
     /**
+     * Write the XML document header.
+     * <p>
+     * This method will write out the <code>&lt;?xml version=&quot;1.0&quot
+     * ...&gt;</code> header unless omit-xml-declaration is set.
+     * </p>
+     */
+    protected void head()
+    throws SAXException {
+        if (!"yes".equals(this.omitXmlDeclaration)) {
+            super.head();
+        }
+    }
+
+    /**
      * Receive notification of the beginning of the document body.
      *
      * @param uri The namespace URI of the root element.
@@ -199,4 +218,5 @@
         }
         super.endElementImpl(uri, local, qual);
     }
+    
 }

Modified: cocoon/trunk/blocks/cocoon-serializers/cocoon-serializers-impl/src/main/resources/META-INF/legacy/sitemap-additions/cocoon-serializers.xmap
URL: http://svn.apache.org/viewcvs/cocoon/trunk/blocks/cocoon-serializers/cocoon-serializers-impl/src/main/resources/META-INF/legacy/sitemap-additions/cocoon-serializers.xmap?rev=400083&r1=400082&r2=400083&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-serializers/cocoon-serializers-impl/src/main/resources/META-INF/legacy/sitemap-additions/cocoon-serializers.xmap (original)
+++ cocoon/trunk/blocks/cocoon-serializers/cocoon-serializers-impl/src/main/resources/META-INF/legacy/sitemap-additions/cocoon-serializers.xmap Fri May  5 07:09:22 2006
@@ -31,6 +31,7 @@
                     src="org.apache.cocoon.components.serializers.XHTMLSerializer"
                     mime-type="text/xhtml">
       <encoding>UTF-8</encoding>
+      <omit-xml-declaration>no</omit-xml-declaration>
     </map:serializer>
     <map:serializer name="ehtml"
                     logger="sitemap.serializer.ehtml"

Modified: cocoon/trunk/blocks/cocoon-serializers/cocoon-serializers-impl/status.xml
URL: http://svn.apache.org/viewcvs/cocoon/trunk/blocks/cocoon-serializers/cocoon-serializers-impl/status.xml?rev=400083&r1=400082&r2=400083&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-serializers/cocoon-serializers-impl/status.xml (original)
+++ cocoon/trunk/blocks/cocoon-serializers/cocoon-serializers-impl/status.xml Fri May  5 07:09:22 2006
@@ -65,6 +65,10 @@
  <!-- The following list contains the changes since the latest 2.1.x version. -->
  <changes>
   <release version="@version@" date="@date@">
+    <action dev="AS" type="add" fixes-bug="COCOON-1845" due-to="Maurizio Pillitu" due-to-email="m.pillitu@thebug.it">
+      As with all the AbstractTextSerializer based serializers, the XHTMLSerializer should handle the omit-xml-declaration to not put the XML declaration as first line of the serialized document.
+      This prevents many rendering problems in Internet Explorer. Default behaviour is to send the xml declaration as before.
+    </action>
   </release>
  </changes>