You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by ev...@apache.org on 2005/07/04 08:04:30 UTC
svn commit: r209016 - in /maven/components/trunk/sandbox/maven-ear-plugin:
./ src/main/java/org/apache/maven/plugin/ear/
Author: evenisse
Date: Sun Jul 3 23:04:27 2005
New Revision: 209016
URL: http://svn.apache.org/viewcvs?rev=209016&view=rev
Log:
Adding supports for encoding doctype/xschema declaration and the new provided scope.
Modified:
maven/components/trunk/sandbox/maven-ear-plugin/pom.xml
maven/components/trunk/sandbox/maven-ear-plugin/src/main/java/org/apache/maven/plugin/ear/AbstractEarMojo.java
maven/components/trunk/sandbox/maven-ear-plugin/src/main/java/org/apache/maven/plugin/ear/ApplicationXmlWriter.java
maven/components/trunk/sandbox/maven-ear-plugin/src/main/java/org/apache/maven/plugin/ear/EarMojo.java
maven/components/trunk/sandbox/maven-ear-plugin/src/main/java/org/apache/maven/plugin/ear/GenerateApplicationXmlMojo.java
Modified: maven/components/trunk/sandbox/maven-ear-plugin/pom.xml
URL: http://svn.apache.org/viewcvs/maven/components/trunk/sandbox/maven-ear-plugin/pom.xml?rev=209016&r1=209015&r2=209016&view=diff
==============================================================================
--- maven/components/trunk/sandbox/maven-ear-plugin/pom.xml (original)
+++ maven/components/trunk/sandbox/maven-ear-plugin/pom.xml Sun Jul 3 23:04:27 2005
@@ -8,12 +8,12 @@
<artifactId>maven-ear-plugin</artifactId>
<packaging>maven-plugin</packaging>
<name>Maven Ear plugin</name>
- <version>2.0-alpha-1-SNAPSHOT</version>
+ <version>2.0-beta-1-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>org.apache.maven</groupId>
<artifactId>maven-archiver</artifactId>
- <version>2.0-alpha-2</version>
+ <version>2.0-alpha-3</version>
</dependency>
<dependency>
<groupId>org.apache.maven</groupId>
@@ -23,7 +23,7 @@
<dependency>
<groupId>plexus</groupId>
<artifactId>plexus-utils</artifactId>
- <version>1.0-alpha-3</version>
+ <version>1.0.1-SNAPSHOT</version>
</dependency>
</dependencies>
</model>
Modified: maven/components/trunk/sandbox/maven-ear-plugin/src/main/java/org/apache/maven/plugin/ear/AbstractEarMojo.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/sandbox/maven-ear-plugin/src/main/java/org/apache/maven/plugin/ear/AbstractEarMojo.java?rev=209016&r1=209015&r2=209016&view=diff
==============================================================================
--- maven/components/trunk/sandbox/maven-ear-plugin/src/main/java/org/apache/maven/plugin/ear/AbstractEarMojo.java (original)
+++ maven/components/trunk/sandbox/maven-ear-plugin/src/main/java/org/apache/maven/plugin/ear/AbstractEarMojo.java Sun Jul 3 23:04:27 2005
@@ -72,7 +72,8 @@
for ( Iterator iter = artifacts.iterator(); iter.hasNext(); )
{
Artifact artifact = (Artifact) iter.next();
- if ( !Artifact.SCOPE_TEST.equals( artifact.getScope() ) )
+ if ( !Artifact.SCOPE_TEST.equals( artifact.getScope()) ||
+ !Artifact.SCOPE_PROVIDED.equals( artifact.getScope()) )
{
EarModule module = EarModuleFactory.newEarModule( artifact );
modules.add( module );
Modified: maven/components/trunk/sandbox/maven-ear-plugin/src/main/java/org/apache/maven/plugin/ear/ApplicationXmlWriter.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/sandbox/maven-ear-plugin/src/main/java/org/apache/maven/plugin/ear/ApplicationXmlWriter.java?rev=209016&r1=209015&r2=209016&view=diff
==============================================================================
--- maven/components/trunk/sandbox/maven-ear-plugin/src/main/java/org/apache/maven/plugin/ear/ApplicationXmlWriter.java (original)
+++ maven/components/trunk/sandbox/maven-ear-plugin/src/main/java/org/apache/maven/plugin/ear/ApplicationXmlWriter.java Sun Jul 3 23:04:27 2005
@@ -37,12 +37,21 @@
*/
public final class ApplicationXmlWriter
{
+ public static final String DOCTYPE_1_3 = "application PUBLIC\n" +
+ "\t\"-//Sun Microsystems, Inc.//DTD J2EE Application 1.3//EN\"\n" +
+ "\t\"http://java.sun.com/dtd/application_1_3.dtd\"";
+
+ private static final String APPLICATION_ELEMENT = "application";
+
private final String version;
- public ApplicationXmlWriter( String version )
+ private final String encoding;
+
+ public ApplicationXmlWriter( String version, String encoding )
{
this.version = version;
+ this.encoding = encoding;
}
public void write( File destinationFile, List earModules, String displayName, String description )
@@ -59,10 +68,15 @@
ex );
}
- // @todo Add DTD or XSchema reference based on version attribute
-
- XMLWriter writer = new PrettyPrintXMLWriter( w );
- writer.startElement( "application" );
+ XMLWriter writer = null;
+ if ( GenerateApplicationXmlMojo.VERSION_1_3.equals( version ) )
+ {
+ writer = initializeRootElementOneDotThree( w );
+ }
+ else if ( GenerateApplicationXmlMojo.VERSION_1_4.equals( version ) )
+ {
+ writer = initializeRootElementOneDotFour( w );
+ }
if ( displayName != null )
{
@@ -104,5 +118,24 @@
{
// TODO: warn
}
+ }
+
+ private XMLWriter initializeRootElementOneDotThree( FileWriter w )
+ {
+ XMLWriter writer = new PrettyPrintXMLWriter( w, encoding, DOCTYPE_1_3 );
+ writer.startElement( APPLICATION_ELEMENT );
+ return writer;
+ }
+
+ private XMLWriter initializeRootElementOneDotFour( FileWriter w )
+ {
+ XMLWriter writer = new PrettyPrintXMLWriter( w, encoding, null );
+ writer.startElement( APPLICATION_ELEMENT );
+ writer.addAttribute( "xmlns", "http://java.sun.com/xml/ns/j2ee" );
+ writer.addAttribute( "xmlns:xsi", "http://www.w3.org/2001/XMLSchema-instance" );
+ writer.addAttribute( "xsi:schemaLocation",
+ "http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/application_1_4.xsd" );
+ writer.addAttribute( "version", "1.4" );
+ return writer;
}
}
Modified: maven/components/trunk/sandbox/maven-ear-plugin/src/main/java/org/apache/maven/plugin/ear/EarMojo.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/sandbox/maven-ear-plugin/src/main/java/org/apache/maven/plugin/ear/EarMojo.java?rev=209016&r1=209015&r2=209016&view=diff
==============================================================================
--- maven/components/trunk/sandbox/maven-ear-plugin/src/main/java/org/apache/maven/plugin/ear/EarMojo.java (original)
+++ maven/components/trunk/sandbox/maven-ear-plugin/src/main/java/org/apache/maven/plugin/ear/EarMojo.java Sun Jul 3 23:04:27 2005
@@ -29,7 +29,7 @@
import java.util.List;
/**
- * The Ear Mojo.
+ * Builds J2EE Enteprise Archive (EAR) files.
*
* @author <a href="stephane.nicoll@gmail.com">Stephane Nicoll</a>
* @version $Id $
@@ -77,7 +77,7 @@
*
* @parameter alias="earName" expression="${project.build.finalName}"
* @required
- * @readonly
+ * @readonly
*/
private String finalName;
Modified: maven/components/trunk/sandbox/maven-ear-plugin/src/main/java/org/apache/maven/plugin/ear/GenerateApplicationXmlMojo.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/sandbox/maven-ear-plugin/src/main/java/org/apache/maven/plugin/ear/GenerateApplicationXmlMojo.java?rev=209016&r1=209015&r2=209016&view=diff
==============================================================================
--- maven/components/trunk/sandbox/maven-ear-plugin/src/main/java/org/apache/maven/plugin/ear/GenerateApplicationXmlMojo.java (original)
+++ maven/components/trunk/sandbox/maven-ear-plugin/src/main/java/org/apache/maven/plugin/ear/GenerateApplicationXmlMojo.java Sun Jul 3 23:04:27 2005
@@ -23,8 +23,7 @@
import java.io.IOException;
/**
- * A <tt>Mojo</tt> used to build the <tt>application.xml</tt> file
- * if necessary.
+ * A Mojo used to build the application.xml file.
*
* @author <a href="stephane.nicoll@gmail.com">Stephane Nicoll</a>
* @version $Id $
@@ -44,14 +43,15 @@
public static final String UTF_8 = "UTF-8";
/**
- * Inserts the doctype header depending on the specified version.
+ * The version of the application.xml to generate. Valid values
+ * are 1.3 and 1.4.
*
* @parameter expression="${maven.ear.appxml.version}"
*/
private String version = VERSION_1_3;
/**
- * Display name of the application to be used when <tt>application.xml</tt>
+ * Display name of the application to be used when application.xml
* file is autogenerated.
*
* @parameter expression="${project.artifactId}"
@@ -59,22 +59,22 @@
private String displayName = null;
/**
- * The description in generated <tt>application.xml</tt>.
+ * Description of the application to be used when application.xml
+ * file is autogenerated.
*
* @parameter
*/
private String description = null;
/**
- * Character encoding for the auto-generated <tt>application.xml</tt> file.
+ * Character encoding for the auto-generated application.xml file.
*
* @parameter
- * @TODO handle this field
*/
private String encoding = UTF_8;
/**
- * Directory where the <tt>application.xml</tt> file will be auto-generated.
+ * Directory where the application.xml file will be auto-generated.
*
* @parameter expression="${project.build.directory}"
*/
@@ -90,6 +90,11 @@
getLog().debug( "encoding[" + encoding + "]" );
getLog().debug( "generatedDescriptorLocation[" + generatedDescriptorLocation + "]" );
+ if ( !version.equals( VERSION_1_3 ) && version.equals( VERSION_1_4 ) )
+ {
+ throw new MojoExecutionException( "Invalid version[" + version + "]" );
+ }
+
// Generate deployment descriptor
try
{
@@ -124,7 +129,7 @@
descriptor.createNewFile();
}
- ApplicationXmlWriter writer = new ApplicationXmlWriter( version );
+ ApplicationXmlWriter writer = new ApplicationXmlWriter( version, encoding );
try
{
writer.write( descriptor, getModules(), displayName, description );
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org