From 74b173688844898e1e2d58e16421da3f586f331d Mon Sep 17 00:00:00 2001 From: aheritier Date: Mon, 22 Jan 2007 23:51:47 +0000 Subject: [PATCH] Fix default encoding (UTF-8 for XML) and ensure that the encoding used is the same in the model and in the stream git-svn-id: https://svn.apache.org/repos/asf/maven/maven-1/plugins/trunk@498855 13f79535-47bb-0310-9956-ffa450edef68 --- .../apache/maven/artifact/PomRewriter.java | 27 ++++++++++--------- 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/artifact/src/main/org/apache/maven/artifact/PomRewriter.java b/artifact/src/main/org/apache/maven/artifact/PomRewriter.java index 6337edcd..8aa2eb13 100644 --- a/artifact/src/main/org/apache/maven/artifact/PomRewriter.java +++ b/artifact/src/main/org/apache/maven/artifact/PomRewriter.java @@ -16,14 +16,6 @@ package org.apache.maven.artifact; * limitations under the License. */ -import java.io.File; -import java.io.FileWriter; -import java.io.StringReader; -import java.lang.reflect.Method; -import java.util.HashMap; -import java.util.Iterator; -import java.util.Map; - import org.apache.commons.jelly.JellyContext; import org.apache.maven.MavenException; import org.apache.maven.MavenUtils; @@ -35,6 +27,17 @@ import org.apache.maven.project.io.stax.MavenStaxReader; import org.apache.maven.project.io.stax.MavenStaxWriter; import org.codehaus.plexus.util.IOUtil; +import java.io.BufferedWriter; +import java.io.File; +import java.io.FileOutputStream; +import java.io.OutputStreamWriter; +import java.io.StringReader; +import java.io.Writer; +import java.lang.reflect.Method; +import java.util.HashMap; +import java.util.Iterator; +import java.util.Map; + /** * Rewrite a full model for publishing. Inheritence and expression will have been resolved. * @@ -47,16 +50,16 @@ public class PomRewriter throws MavenException { final Model model = PomRewriter.getRewrittenModel( project.getFile(), project.getContext() ); - - FileWriter w = null; + if ( model.getModelEncoding() == null ) + model.setModelEncoding( "UTF-8" ); + Writer w = null; try { final MavenStaxWriter writer = new MavenStaxWriter(); final File f = File.createTempFile( "maven-artifact-plugin.", null ); f.deleteOnExit(); - w = new FileWriter( f ); + w = new BufferedWriter( new OutputStreamWriter( new FileOutputStream( f ), model.getModelEncoding() ) ); writer.write( w, model ); - return f; } catch ( final Exception e )