forrest-svn mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From thors...@apache.org
Subject svn commit: r945269 - in /forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src: cocoon-2.2-block/src/main/resources/COB-INF/ cocoon-2.2-block/src/main/resources/META-INF/cocoon/avalon/ java/org/apache/forrest/dispatcher/im...
Date Mon, 17 May 2010 17:42:05 GMT
Author: thorsten
Date: Mon May 17 17:42:05 2010
New Revision: 945269

URL: http://svn.apache.org/viewvc?rev=945269&view=rev
Log:
FOR-1194 Fixing utf-8 compability by forcing to use UTF-8 in every step

Modified:
    forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/cocoon-2.2-block/src/main/resources/COB-INF/sitemap.xmap
    forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/cocoon-2.2-block/src/main/resources/META-INF/cocoon/avalon/dispatcher-sitemapcomponents.xconf
    forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/java/org/apache/forrest/dispatcher/impl/XSLContract.java
    forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/java/org/apache/forrest/dispatcher/impl/helper/XSLContractHelper.java
    forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/java/org/apache/forrest/dispatcher/transformation/DispatcherTransformer.java
    forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/java/org/apache/forrest/dispatcher/transformation/DispatcherWrapperTransformer.java

Modified: forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/cocoon-2.2-block/src/main/resources/COB-INF/sitemap.xmap
URL: http://svn.apache.org/viewvc/forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/cocoon-2.2-block/src/main/resources/COB-INF/sitemap.xmap?rev=945269&r1=945268&r2=945269&view=diff
==============================================================================
--- forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/cocoon-2.2-block/src/main/resources/COB-INF/sitemap.xmap
(original)
+++ forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/cocoon-2.2-block/src/main/resources/COB-INF/sitemap.xmap
Mon May 17 17:42:05 2010
@@ -22,7 +22,7 @@ xmlns:map="http://apache.org/cocoon/site
     <map:pipeline id="lm">
       <map:match pattern="locationmap.xml">
         <map:generate src="locationmap.xml" />
-        <map:serialize type="xml" />
+        <map:serialize/>
       </map:match>
     </map:pipeline>
     <map:pipeline id="dispatcher">
@@ -61,7 +61,7 @@ xmlns:map="http://apache.org/cocoon/site
         </map:transform>
         <map:transform src="lm://hooks-to-fo.xsl" />
         <map:transform src="lm://strip-dispatcher-remains-fo.xsl" />
-        <map:serialize type="xml" />
+        <map:serialize/>
       </map:match>
       <map:match pattern="**.prepare.dispatcher.css">
         <map:generate src="lm://resolve.structurer.{1}" type="jx">
@@ -93,11 +93,11 @@ xmlns:map="http://apache.org/cocoon/site
       <map:act type="locale">
         <map:match pattern="resolve.structurer.**">
           <map:generate src="lm://resolve.structurer.{1}" />
-          <map:serialize type="xml" />
+          <map:serialize/>
         </map:match>
         <map:match pattern="resolve.contract.*.**">
           <map:generate src="{lm:resolve.contract.{1}.{2}}" />
-          <map:serialize type="xml" />
+          <map:serialize/>
         </map:match>
         <map:match pattern="prepare.contract.*.**">
           <map:generate src="{lm:resolve.contract.{1}.{2}}" />
@@ -105,7 +105,7 @@ xmlns:map="http://apache.org/cocoon/site
           <map:transform type="i18n">
             <map:parameter name="locale" value="{../locale}" />
           </map:transform>
-          <map:serialize type="xml" />
+          <map:serialize/>
         </map:match>
       </map:act>
     </map:pipeline>
@@ -116,7 +116,7 @@ xmlns:map="http://apache.org/cocoon/site
       <map:match pattern="prepare.panels.**">
         <map:generate src="{lm:resolve.panels.{1}}" />
         <map:transform src="{lm:root-strip.xsl}" />
-        <map:serialize type="xml" />
+        <map:serialize/>
       </map:match>
     </map:pipeline>
     <map:pipeline>
@@ -126,7 +126,7 @@ xmlns:map="http://apache.org/cocoon/site
           <map:parameter name="path" value="{1}.html" />
           <map:parameter name="theme" value="{global:dispatcher.theme}" />
         </map:transform>
-        <map:serialize type="xml" />
+        <map:serialize/>
       </map:match>
     </map:pipeline>
     <map:pipeline id="resources">

Modified: forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/cocoon-2.2-block/src/main/resources/META-INF/cocoon/avalon/dispatcher-sitemapcomponents.xconf
URL: http://svn.apache.org/viewvc/forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/cocoon-2.2-block/src/main/resources/META-INF/cocoon/avalon/dispatcher-sitemapcomponents.xconf?rev=945269&r1=945268&r2=945269&view=diff
==============================================================================
--- forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/cocoon-2.2-block/src/main/resources/META-INF/cocoon/avalon/dispatcher-sitemapcomponents.xconf
(original)
+++ forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/cocoon-2.2-block/src/main/resources/META-INF/cocoon/avalon/dispatcher-sitemapcomponents.xconf
Mon May 17 17:42:05 2010
@@ -28,7 +28,7 @@ limitations under the License.
       <cache-at-startup>true</cache-at-startup>
     </map:transformer>
   </map:transformers>
-  <map:serializers default="xhtml">
+  <map:serializers default="xml-utf8">
     <map:serializer logger="sitemap.serializer.xhtml"
     mime-type="text/html; charset=UTF-8" name="xhtml" ppool-max="64"
     src="org.apache.cocoon.serialization.XMLSerializer">
@@ -57,5 +57,9 @@ limitations under the License.
       <encoding>UTF-8</encoding>
       <indent>true</indent>
     </map:serializer>
-  </map:serializers>
+    <map:serializer name="xml-utf8" mime-type="text/xml"
+    src="org.apache.cocoon.serialization.XMLSerializer">
+      <encoding>UTF-8</encoding>
+    </map:serializer>
+   </map:serializers>
 </map:components>

Modified: forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/java/org/apache/forrest/dispatcher/impl/XSLContract.java
URL: http://svn.apache.org/viewvc/forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/java/org/apache/forrest/dispatcher/impl/XSLContract.java?rev=945269&r1=945268&r2=945269&view=diff
==============================================================================
--- forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/java/org/apache/forrest/dispatcher/impl/XSLContract.java
(original)
+++ forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/java/org/apache/forrest/dispatcher/impl/XSLContract.java
Mon May 17 17:42:05 2010
@@ -21,6 +21,8 @@ import java.io.BufferedOutputStream;
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
 import java.io.InputStream;
+import java.io.OutputStreamWriter;
+import java.io.UnsupportedEncodingException;
 import java.util.Map;
 
 import javax.xml.stream.XMLStreamException;
@@ -105,17 +107,23 @@ public class XSLContract extends Loggabl
       }
     }
     ByteArrayOutputStream out = new ByteArrayOutputStream();
+    byte[] bytes = null;
+    String utf8 = "";
     // create a StreamResult and use it for the transformation
-    Result streamResult = new StreamResult(new BufferedOutputStream(out));
     try {
-      helper.transform(dataStream,streamResult);
+        OutputStreamWriter writer = new OutputStreamWriter(out,"UTF-8");
+        Result streamResult = new StreamResult(writer);
+        helper.transform(dataStream,streamResult);
+        utf8 = out.toString("UTF-8");
+        log.debug(utf8);
+        bytes = utf8.getBytes("utf-8");
     } catch (Exception e) {
       String message = "Could not invoke the transformation for "
           + "the contract \""+name+"\". "+"\n"+ e;
       throw new ContractException(message);
     }
-    log.debug(out.toString());
-    return new BufferedInputStream(new ByteArrayInputStream(out.toByteArray()));
+    
+    return new BufferedInputStream(new ByteArrayInputStream(bytes));
   }
 
   /* (non-Javadoc)

Modified: forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/java/org/apache/forrest/dispatcher/impl/helper/XSLContractHelper.java
URL: http://svn.apache.org/viewvc/forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/java/org/apache/forrest/dispatcher/impl/helper/XSLContractHelper.java?rev=945269&r1=945268&r2=945269&view=diff
==============================================================================
--- forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/java/org/apache/forrest/dispatcher/impl/helper/XSLContractHelper.java
(original)
+++ forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/java/org/apache/forrest/dispatcher/impl/helper/XSLContractHelper.java
Mon May 17 17:42:05 2010
@@ -20,6 +20,7 @@ import java.io.BufferedInputStream;
 import java.io.ByteArrayInputStream;
 import java.io.IOException;
 import java.io.InputStream;
+import java.io.InputStreamReader;
 import java.io.PrintWriter;
 import java.util.Iterator;
 import java.util.Map;
@@ -124,6 +125,7 @@ public class XSLContractHelper extends L
       SAXException, IOException {
     // prepare transformation
     transformer = transFact.newTransformer(xslSource);
+    transformer.setOutputProperty(OutputKeys.ENCODING, "UTF-8");
     transformer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "yes");
     transformer.setOutputProperty(OutputKeys.INDENT, "yes");
     transformer.setOutputProperty(OutputKeys.METHOD, "xml");
@@ -220,8 +222,8 @@ public class XSLContractHelper extends L
     }
     // Setting the necessary attributes of the contract 
     // xsl
-    contract.setXslSource(new StreamSource(new ByteArrayInputStream(handler
-        .getBytes())));
+    byte[] bytes = handler.getBytes();
+    contract.setXslSource(new StreamSource(new ByteArrayInputStream(bytes)));
     /* DEBUG_CODE: 
      * The following is useful to see what is going on
      * 
@@ -254,7 +256,9 @@ public class XSLContractHelper extends L
       throws ContractException {
     //Source dataSource = new StreamSource(dataStream);
     try {
-      SAXSource saxSource = new SAXSource(xmlReader,new InputSource(dataStream));
+      InputSource inputSource = new InputSource(new InputStreamReader(dataStream, "UTF-8"));
+      inputSource.setEncoding("UTF-8");
+      SAXSource saxSource = new SAXSource(xmlReader,inputSource);
       transformer.transform(saxSource, streamResult);
     } catch (Exception e) {
       String message = "The xsl transformation has thrown an exception. for "

Modified: forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/java/org/apache/forrest/dispatcher/transformation/DispatcherTransformer.java
URL: http://svn.apache.org/viewvc/forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/java/org/apache/forrest/dispatcher/transformation/DispatcherTransformer.java?rev=945269&r1=945268&r2=945269&view=diff
==============================================================================
--- forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/java/org/apache/forrest/dispatcher/transformation/DispatcherTransformer.java
(original)
+++ forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/java/org/apache/forrest/dispatcher/transformation/DispatcherTransformer.java
Mon May 17 17:42:05 2010
@@ -20,6 +20,7 @@ import java.io.BufferedInputStream;
 import java.io.File;
 import java.io.IOException;
 import java.io.InputStream;
+import java.io.InputStreamReader;
 import java.io.Serializable;
 import java.io.StringReader;
 import java.util.HashMap;
@@ -490,7 +491,7 @@ public class DispatcherTransformer exten
               throw new SAXException(e);
             }
             if (null != property) {
-              localParams.put(currentProperty, property.getBytes());
+              localParams.put(currentProperty, property.getBytes("UTF-8"));
             }
           }
         }
@@ -695,7 +696,7 @@ public class DispatcherTransformer exten
         root.serialize(out);
       }
 
-      InputSource is = new InputSource(new StringReader(out.toString()));
+      InputSource is = new InputSource(new StringReader(out.toString("UTF-8")));
       // adding the result to the consumer
       parser.parse(is, super.xmlConsumer);
     } catch (Exception e) {
@@ -1099,8 +1100,9 @@ public class DispatcherTransformer exten
    */
   private static InputSource getInputSource(final Source source)
       throws IOException, SourceException {
-    final InputSource newObject = new InputSource(source.getInputStream());
-    newObject.setSystemId(source.getURI());
-    return newObject;
+    final InputSource inputSource = new InputSource(new InputStreamReader(source.getInputStream(),
"UTF-8"));
+    inputSource.setEncoding("UTF-8");
+    inputSource.setSystemId(source.getURI());
+    return inputSource;
   }
 }

Modified: forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/java/org/apache/forrest/dispatcher/transformation/DispatcherWrapperTransformer.java
URL: http://svn.apache.org/viewvc/forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/java/org/apache/forrest/dispatcher/transformation/DispatcherWrapperTransformer.java?rev=945269&r1=945268&r2=945269&view=diff
==============================================================================
--- forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/java/org/apache/forrest/dispatcher/transformation/DispatcherWrapperTransformer.java
(original)
+++ forrest/trunk/whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/src/java/org/apache/forrest/dispatcher/transformation/DispatcherWrapperTransformer.java
Mon May 17 17:42:05 2010
@@ -374,7 +374,7 @@ public class DispatcherWrapperTransforme
       }
       // get the result of the structurer as stream
       InputStream result = structurer.execute(new BufferedInputStream(
-          new ByteArrayInputStream(document.getBytes())), requestedFormat);
+          new ByteArrayInputStream(document.getBytes("UTF-8"))), requestedFormat);
       // requesting a parser
       parser = (SAXParser) manager.lookup(SAXParser.ROLE);
       // adding the result to the consumer



Mime
View raw message