Weld SVN: r6676 - archetypes/javaee6-webapp/trunk/src/main/webapp.
by weld-commits@lists.jboss.org
Author: sboscarine
Date: 2010-07-17 00:09:07 -0400 (Sat, 17 Jul 2010)
New Revision: 6676
Modified:
archetypes/javaee6-webapp/trunk/src/main/webapp/index.jsf
Log:
Updated comments
Modified: archetypes/javaee6-webapp/trunk/src/main/webapp/index.jsf
===================================================================
--- archetypes/javaee6-webapp/trunk/src/main/webapp/index.jsf 2010-07-17 04:06:42 UTC (rev 6675)
+++ archetypes/javaee6-webapp/trunk/src/main/webapp/index.jsf 2010-07-17 04:09:07 UTC (rev 6676)
@@ -1,6 +1,8 @@
The contents of this file will not be displayed!
-Having this file is trick to get JBoss AS to redirect to the path index.jsf
+Having this file is a trick to get JBoss AS to redirect to the path index.jsf
when the root application URL is requested (or any subdirectory).
See https://jira.jboss.org/browse/JBAS-8224
+
+If you are using other containers, such as Glassfish, this file will be ignored and you may delete at will.
\ No newline at end of file
15 years, 9 months
Weld SVN: r6675 - archetypes/javaee6-webapp/trunk/src/main/webapp/WEB-INF.
by weld-commits@lists.jboss.org
Author: sboscarine
Date: 2010-07-17 00:06:42 -0400 (Sat, 17 Jul 2010)
New Revision: 6675
Modified:
archetypes/javaee6-webapp/trunk/src/main/webapp/WEB-INF/web.xml
Log:
added comment back.
Modified: archetypes/javaee6-webapp/trunk/src/main/webapp/WEB-INF/web.xml
===================================================================
--- archetypes/javaee6-webapp/trunk/src/main/webapp/WEB-INF/web.xml 2010-07-16 23:31:23 UTC (rev 6674)
+++ archetypes/javaee6-webapp/trunk/src/main/webapp/WEB-INF/web.xml 2010-07-17 04:06:42 UTC (rev 6675)
@@ -23,11 +23,9 @@
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.jsf</url-pattern>
</servlet-mapping>
-
+
+ <!-- This section is option. -->
<welcome-file-list>
- <welcome-file>index.jsp</welcome-file>
- <welcome-file>index.html</welcome-file>
<welcome-file>index.jsf</welcome-file>
</welcome-file-list>
-
</web-app>
15 years, 9 months
Weld SVN: r6670 - in archetypes/javaee6-webapp/tags: 1.0.1.Beta1 and 28 other directories.
by weld-commits@lists.jboss.org
Author: dan.j.allen
Date: 2010-07-16 19:16:25 -0400 (Fri, 16 Jul 2010)
New Revision: 6670
Added:
archetypes/javaee6-webapp/tags/1.0.1.Beta1/
archetypes/javaee6-webapp/tags/1.0.1.Beta1/pom.xml
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/META-INF/
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/META-INF/maven/
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/META-INF/maven/archetype-metadata.xml
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/pom.xml
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/readme.txt
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/java/
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/java/JaxRsConfig.java
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/java/Member.java
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/java/MemberListProducer.java
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/java/MemberRegistration.java
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/java/MemberRepository.java
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/java/MemberRepositoryProducer.java
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/java/MemberResource.java
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/resources-jbossas/
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/resources-jbossas/default-ds.xml
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/resources/
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/resources/META-INF/
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/resources/META-INF/persistence.xml
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/resources/import.sql
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/META-INF/
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/META-INF/MANIFEST.MF
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/META-INF/context.xml
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/beans.xml
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/faces-config.xml
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/templates/
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/templates/default.xhtml
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/web.xml
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/index.jsf
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/index.xhtml
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/resources/
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/resources/css/
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/resources/css/screen.css
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/resources/gfx/
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/resources/gfx/banner.png
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/resources/gfx/weld.png
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/test/
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/test/java/
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/test/java/MemberRegistrationTest.java
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/test/resources-glassfish-embedded/
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/test/resources-glassfish-embedded/sun-resources.xml
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/test/resources-glassfish-embedded/test-persistence.xml
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/test/resources-jbossas/
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/test/resources-jbossas/jndi.properties
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/test/resources-jbossas/test-persistence.xml
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/test/resources/
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/test/resources/arquillian.xml
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/test/
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/test/resources/
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/test/resources/projects/
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/test/resources/projects/basic/
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/test/resources/projects/basic/archetype.properties
archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/test/resources/projects/basic/goal.txt
Log:
1.0.1.Beta1 tag
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/pom.xml
===================================================================
--- archetypes/javaee6-webapp/tags/1.0.1.Beta1/pom.xml (rev 0)
+++ archetypes/javaee6-webapp/tags/1.0.1.Beta1/pom.xml 2010-07-16 23:16:25 UTC (rev 6670)
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.jboss.weld</groupId>
+ <artifactId>weld-parent</artifactId>
+ <version>12</version>
+ </parent>
+
+ <groupId>org.jboss.weld.archetypes</groupId>
+ <artifactId>jboss-javaee6-webapp</artifactId>
+ <version>1.0.1.Beta1</version>
+ <packaging>maven-archetype</packaging>
+
+ <name>JBoss Java EE 6 Webapp</name>
+
+ <description>An archetype that generates a starter Java EE 6 webapp project</description>
+
+ <url>http://seamframework.org/Documentation/WeldQuickstartForMavenUsers</url>
+
+ <developers>
+ <developer>
+ <name>Steven Boscarine</name>
+ <roles>
+ <role>Weld archetypes lead</role>
+ </roles>
+ <email>stevenboscarine(a)gmail.com</email>
+ <organization>Community Volunteer</organization>
+ <organizationUrl>http://chip.org/</organizationUrl>
+ <url>http://www.beacon16.com/</url>
+ </developer>
+ <developer>
+ <name>Dan Allen</name>
+ <roles>
+ <role>Weld archetypes lead</role>
+ </roles>
+ <email>dan.j.allen(a)gmail.com</email>
+ <organization>JBoss, by Red Hat</organization>
+ <organizationUrl>http://redhat.com/jboss</organizationUrl>
+ <url>http://community.jboss.org/people/dan.j.allen</url>
+ </developer>
+ <developer>
+ <name>Pete Muir</name>
+ <roles>
+ <role>Weld project lead</role>
+ </roles>
+ <email>pete.muir(a)jboss.org</email>
+ <organization>Red Hat Inc.</organization>
+ <organizationUrl>http://redhat.com/jboss</organizationUrl>
+ <url>http://in.relation.to/Bloggers/Pete</url>
+ </developer>
+ </developers>
+
+ <build>
+ <extensions>
+ <extension>
+ <groupId>org.apache.maven.archetype</groupId>
+ <artifactId>archetype-packaging</artifactId>
+ <version>2.0-alpha-5</version>
+ </extension>
+ </extensions>
+
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <artifactId>maven-archetype-plugin</artifactId>
+ <version>2.0-alpha-5</version>
+ <extensions>true</extensions>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ </build>
+
+ <scm>
+ <!--
+ <connection>scm:svn:http://anonsvn.jboss.org/repos/weld/archetypes/trunk/javaee6-weba...</connection>
+ <developerConnection>scm:svn:https://svn.jboss.org/repos/weld/archetypes/trunk/javaee6-webapp-...</developerConnection>
+ <url>http://fisheye.jboss.org/browse/weld/archetypes/trunk/javaee6-webapp-src/...</url>
+ -->
+ <connection>scm:svn:http://anonsvn.jboss.org/repos/weld/archetypes/tags/javaee6-webap...</connection>
+ <developerConnection>scm:svn:https://svn.jboss.org/repos/weld/archetypes/tags/javaee6-webapp-1...</developerConnection>
+ <url>http://fisheye.jboss.org/browse/weld/archetypes/tags/javaee6-webapp-1.0.1...</url>
+ </scm>
+</project>
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/META-INF/maven/archetype-metadata.xml
===================================================================
--- archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/META-INF/maven/archetype-metadata.xml (rev 0)
+++ archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/META-INF/maven/archetype-metadata.xml 2010-07-16 23:16:25 UTC (rev 6670)
@@ -0,0 +1,80 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<archetype-descriptor xsi:schemaLocation="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descript... http://maven.apache.org/xsd/archetype-descriptor-1.0.0.xsd" name="jboss-javaee6-webapp-src"
+ xmlns="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descript..."
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <requiredProperties>
+ <requiredProperty key="name">
+ <defaultValue>Java EE 6 project</defaultValue>
+ </requiredProperty>
+ </requiredProperties>
+ <fileSets>
+ <fileSet filtered="true" packaged="true" encoding="UTF-8">
+ <directory>src/main/java</directory>
+ <includes>
+ <include>**/*.java</include>
+ </includes>
+ </fileSet>
+ <fileSet encoding="UTF-8">
+ <directory>src/main/webapp</directory>
+ <includes>
+ <include>**/*.MF</include>
+ <include>**/*.png</include>
+ <include>**/*.xhtml</include>
+ <include>**/*.xml</include>
+ <include>**/*.css</include>
+ <include>**/*.jsf</include>
+ </includes>
+ </fileSet>
+ <fileSet encoding="UTF-8">
+ <directory>src/main/resources</directory>
+ <includes>
+ <include>**/*.sql</include>
+ <include>**/*.xml</include>
+ </includes>
+ </fileSet>
+ <fileSet encoding="UTF-8">
+ <directory>src/main/resources-jbossas</directory>
+ <includes>
+ <include>**/*.xml</include>
+ </includes>
+ </fileSet>
+ <fileSet filtered="true" packaged="true" encoding="UTF-8">
+ <directory>src/test/java</directory>
+ <includes>
+ <include>**/*.java</include>
+ </includes>
+ </fileSet>
+ <fileSet encoding="UTF-8">
+ <directory>src/test/resources</directory>
+ <includes>
+ <include>**/*.xml</include>
+ </includes>
+ </fileSet>
+ <fileSet encoding="UTF-8">
+ <directory>src/test/resources-glassfish-embedded</directory>
+ <includes>
+ <include>**/*.xml</include>
+ </includes>
+ </fileSet>
+ <fileSet encoding="UTF-8">
+ <directory>src/test/resources-jbossas</directory>
+ <includes>
+ <include>**/*.xml</include>
+ <include>**/*.properties</include>
+ </includes>
+ </fileSet>
+ <fileSet filtered="true" encoding="UTF-8">
+ <directory></directory>
+ <includes>
+ <include>readme.txt</include>
+ </includes>
+ </fileSet>
+ <fileSet encoding="UTF-8">
+ <directory></directory>
+ <includes>
+ <include>archetype-pom.xml</include>
+ <include>build.sh</include>
+ </includes>
+ </fileSet>
+ </fileSets>
+</archetype-descriptor>
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/pom.xml
===================================================================
--- archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/pom.xml (rev 0)
+++ archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/pom.xml 2010-07-16 23:16:25 UTC (rev 6670)
@@ -0,0 +1,324 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>${groupId}</groupId>
+ <artifactId>${artifactId}</artifactId>
+ <version>${version}</version>
+ <packaging>war</packaging>
+
+ <name>${name}</name>
+ <description>A starter Java EE 6 webapp project generated from the jboss-javaee6-webapp archetype</description>
+
+ <properties>
+ <!-- Explicitly declaring the source encoding eliminates the following message: -->
+ <!-- [WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent! -->
+ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+ <!-- Timestamp format for the maven.build.timestamp property -->
+ <!-- You can reference property in pom.xml or filtered resources (must enable third-party plugin if using Maven < 2.1) -->
+ <maven.build.timestamp.format>yyyyMMdd'T'HHmmss</maven.build.timestamp.format>
+ <!-- Set the jboss.home property in an active profile of the $HOME/.m2/settings.xml to specify the JBoss AS directory the "Maven way" -->
+ <!-- By default, we assign it to the value of the JBOSS_HOME envrionment variable -->
+ <jboss.home>${env.JBOSS_HOME}</jboss.home>
+ <jboss.domain>default</jboss.domain>
+ <arquillian.version>1.0.0-SNAPSHOT</arquillian.version>
+ <jboss-javaee6-spec.version>1.0.0.Beta5</jboss-javaee6-spec.version>
+ </properties>
+
+ <repositories>
+ <!-- The JBoss Community public repository is a composite repository of several major repositories -->
+ <!-- see http://community.jboss.org/wiki/MavenGettingStarted-Users -->
+ <!-- At the time of writing, Arquillian and the JBoss Spec POMs are only in the JBoss Community public repository (not Maven central) -->
+ <repository>
+ <id>jboss-public-repository</id>
+ <name>JBoss Repository</name>
+ <url>https://repository.jboss.org/nexus/content/groups/public</url>
+ <!-- These optional flags are designed to speed up your builds by reducing remote server calls -->
+ <releases>
+ <updatePolicy>never</updatePolicy>
+ </releases>
+ <snapshots>
+ <updatePolicy>daily</updatePolicy>
+ </snapshots>
+ </repository>
+ </repositories>
+
+ <pluginRepositories>
+ <pluginRepository>
+ <id>jboss-public-repository</id>
+ <name>JBoss Repository</name>
+ <url>https://repository.jboss.org/nexus/content/groups/public</url>
+ <!-- These optional flags are designed to speed up your builds by reducing remote server calls -->
+ <releases>
+ <updatePolicy>never</updatePolicy>
+ </releases>
+ <snapshots>
+ <!-- Set to true to fix error in which Maven cannot find org.apache.maven.plugins:maven-archetype-plugin:maven-plugin:2.0-alpha-6-SNAPSHOT -->
+ <updatePolicy>daily</updatePolicy>
+ </snapshots>
+ </pluginRepository>
+ </pluginRepositories>
+
+ <dependencies>
+
+ <dependency>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-jpamodelgen</artifactId>
+ <version>1.0.0.Final</version>
+ <scope>provided</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>org.hibernate.javax.persistence</groupId>
+ <artifactId>hibernate-jpa-2.0-api</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <!-- Weld Extensions provides convenient, portable CDI extensions such as an injectable logger -->
+ <dependency>
+ <groupId>org.jboss.weld</groupId>
+ <artifactId>weld-extensions</artifactId>
+ <version>1.0.0.Alpha2</version>
+ </dependency>
+
+ <!-- Need to use the injectable logger in Weld Extensions -->
+ <!-- Switch scope to provided if server provides slf4j; JBoss AS provides it; GlassFish provides it if you have the Hibernate JPA provider installed -->
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ <version>1.5.10</version>
+ <scope>compile</scope>
+ </dependency>
+
+ <!-- Remove if server provides slf4j; JBoss AS provides it; GlassFish provides it if you have the Hibernate JPA provider installed -->
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-simple</artifactId>
+ <version>1.5.10</version>
+ <scope>runtime</scope>
+ </dependency>
+
+ <!-- JSR-303 (Bean Validation) Implementation -->
+ <!-- Provides portable constraints such as @Email -->
+ <!-- Hibernate Validator is the only JSR-303 implementation at the moment, so we can assume it's provided -->
+ <dependency>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-validator</artifactId>
+ <version>4.0.0.GA</version>
+ <scope>provided</scope>
+ </dependency>
+
+ <!-- Needed for running tests (you may also use TestNG) -->
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>4.8.1</version>
+ <scope>test</scope>
+ </dependency>
+
+ <!-- Optional, but highly recommended -->
+ <!-- Arquillian allows you to test enterprise code such as EJBs and Transactional(JTA) JPA from JUnit/TestNG -->
+ <dependency>
+ <groupId>org.jboss.arquillian</groupId>
+ <artifactId>arquillian-junit</artifactId>
+ <version>${arquillian.version}</version>
+ <scope>test</scope>
+ </dependency>
+
+ </dependencies>
+
+ <build>
+ <finalName>${project.artifactId}</finalName>
+ <plugins>
+ <!-- Compiler plugin enforces Java 1.6 compatibility and controls execution of annotation processors -->
+ <plugin>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <version>2.3.1</version>
+ <configuration>
+ <source>1.6</source>
+ <target>1.6</target>
+ <compilerArgument>-proc:none</compilerArgument>
+ </configuration>
+ <executions>
+ <execution>
+ <id>run-annotation-processors-only</id>
+ <phase>generate-sources</phase>
+ <configuration>
+ <compilerArgument>-proc:only</compilerArgument>
+ <!-- If your app has multiple packages, use this include filter to execute the processor only on the package containing your entities -->
+ <!--
+ <includes>
+ <include>**/model/*.java</include>
+ </includes>
+ -->
+ </configuration>
+ <goals>
+ <goal>compile</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <!-- Build helper plugin adds the sources generated by the JPA 2 annotation processor to the compile path -->
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>build-helper-maven-plugin</artifactId>
+ <version>1.5</version>
+ <executions>
+ <execution>
+ <phase>process-sources</phase>
+ <configuration>
+ <sources>
+ <source>${project.build.directory}/generated-sources/annotations</source>
+ </sources>
+ </configuration>
+ <goals>
+ <goal>add-source</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+
+ <profiles>
+ <profile>
+ <!-- The default profile skips all tests, though you can tune it to run just unit tests based on a custom pattern -->
+ <!-- Seperate profiles are provided for running all tests, including Arquillian tests that execute in the specified container -->
+ <id>default</id>
+ <activation>
+ <activeByDefault>true</activeByDefault>
+ </activation>
+ <dependencies>
+ <!-- Java EE 6 Specification POM -->
+ <!-- This one dependency imports all APIs available for a Java EE 6.0 application -->
+ <dependency>
+ <groupId>org.jboss.spec</groupId>
+ <artifactId>jboss-javaee-6.0</artifactId>
+ <version>${jboss-javaee6-spec.version}</version>
+ <type>pom</type>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>2.4.3</version>
+ <configuration>
+ <skip>true</skip>
+ </configuration>
+ </plugin>
+ <!-- Optional JBoss deployer plugin will deploy your war to a local JBoss AS container if you've declared $JBOSS_HOME in your OS -->
+ <!-- To use, set the JBOSS_HOME environment variable (or jboss.home in $HOME/.m2/settings.xml) and run 'mvn package jboss:hard-deploy' -->
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>jboss-maven-plugin</artifactId>
+ <version>1.4.1-SNAPSHOT</version>
+ <configuration>
+ <jbossHome>${jboss.home}</jbossHome>
+ <serverName>${jboss.domain}</serverName>
+ <fileNames>
+ <fileName>${project.build.directory}/${project.build.finalName}.war</fileName>
+ <!-- JNDI Datasource that connects to in-memory HSQLDB to demonstrate JPA -->
+ <fileName>src/main/resources-jbossas/default-ds.xml</fileName>
+ <fileName>${project.build.directory}/${project.build.finalName}.war</fileName>
+ </fileNames>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+
+ <profile>
+ <!-- An optional Arquillian testing profile that executes tests in GlassFish Embedded -->
+ <!-- Run with 'mvn test -Pglassfish-embedded-3' -->
+ <id>glassfish-embedded-3</id>
+ <dependencies>
+ <dependency>
+ <groupId>org.jboss.arquillian.container</groupId>
+ <artifactId>arquillian-glassfish-embedded-3</artifactId>
+ <version>${arquillian.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <!-- This imports the Java EE 6 runtime provided by GlassFish Embedded -->
+ <dependency>
+ <groupId>org.glassfish.extras</groupId>
+ <artifactId>glassfish-embedded-all</artifactId>
+ <version>3.0.1-b19</version>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
+ <build>
+ <testResources>
+ <testResource>
+ <directory>src/test/resources</directory>
+ </testResource>
+ <!-- Overrides default configuration to use alternate persistence.xml with eclipselink settings and declare a Glassfish Datasource -->
+ <!-- Used by Arquillian -->
+ <testResource>
+ <directory>src/test/resources-glassfish-embedded</directory>
+ </testResource>
+ </testResources>
+ <plugins>
+ <plugin>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <!-- don't use version 2.5 as it creates seperate test suites per class -->
+ <version>2.4.3</version>
+ <configuration>
+ <systemProperties>
+ <!-- This optional property fixes an annoyance with Glassfish that puts derby.log in the project root -->
+ <property>
+ <name>derby.stream.error.file</name>
+ <!-- If you save the log in target it is less likely to get committed in your project -->
+ <value>target/derby.log</value>
+ </property>
+ </systemProperties>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ <profile>
+ <!-- An optional Arquillian testing profile that executes tests in a remote JBoss AS instance -->
+ <!-- Run with 'mvn test -Pjbossas-remote-6' -->
+ <id>jbossas-remote-6</id>
+ <dependencies>
+ <dependency>
+ <groupId>org.jboss.arquillian.container</groupId>
+ <artifactId>arquillian-jbossas-remote-6</artifactId>
+ <version>${arquillian.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <!-- Java EE 6 Specification POM -->
+ <!-- This one dependency imports all APIs available for a Java EE 6.0 application -->
+ <dependency>
+ <groupId>org.jboss.spec</groupId>
+ <artifactId>jboss-javaee-6.0</artifactId>
+ <version>${jboss-javaee6-spec.version}</version>
+ <type>pom</type>
+ <scope>provided</scope>
+ </dependency>
+ <!-- need for org.jnp.interfaces.NamingContextFactory -->
+ <dependency>
+ <groupId>org.jboss.jbossas</groupId>
+ <artifactId>jboss-as-client</artifactId>
+ <version>6.0.0.20100429-M3</version>
+ <type>pom</type>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+ <build>
+ <testResources>
+ <testResource>
+ <directory>src/test/resources</directory>
+ </testResource>
+ <!-- Overrides default configuration to use alternate persistence.xml with Hibernate settings and declare a JBoss AS Datasource -->
+ <!-- Used by Arquillian -->
+ <testResource>
+ <directory>src/test/resources-jbossas</directory>
+ </testResource>
+ </testResources>
+ </build>
+ </profile>
+ </profiles>
+</project>
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/readme.txt
===================================================================
--- archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/readme.txt (rev 0)
+++ archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/readme.txt 2010-07-16 23:16:25 UTC (rev 6670)
@@ -0,0 +1,189 @@
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+
+ ${artifactId}
+
+ Source archetype: jboss-javaee6-webapp
+
+ What is it?
+ ===========
+
+ This is your project! It's a sample, deployable Maven 2 project to help you
+ get your foot in the door developing with Java EE 6. This project is setup to
+ allow you to create a compliant Java EE 6 application using JSF 2.0, CDI 1.0,
+ EJB 3.1, JPA 2.0 and Bean Validation 1.0) that can run on a certified
+ application server (Complete or Web Profile). It includes a persistence unit
+ and some sample persistence and transaction code to help you get your feet wet
+ with database access in enterprise Java.
+
+ System requirements
+ ===================
+
+ All you need to run this project is Java 5.0 (Java SDK 1.5) or greator and
+ Maven 2.0.10 or greater. This application is setup to be run on a Java EE 6
+ application server. We've tested it on GlassFish 3 and JBoss AS 6.0.
+
+ Please note that Maven 2 project needs to use the JBoss Nexus Maven repository
+ because there are certain Java EE API JARs that are not yet publised to the
+ Maven Central Repository (see https://jira.jboss.org/jira/browse/WELD-222)
+ The testing framework used by the project, Arquillian, is also only available
+ in the JBoss repository.
+
+ Deploying the application
+ =========================
+
+ To deploy the application, first produce the archive to deploy:
+
+ mvn package
+
+ If you want To deploy the application on JBoss AS (standalone), make sure that
+ your JBOSS_HOME environment variable points to a JBoss AS 6.0 installation.
+
+ Alternatively, you can set the location of JBoss AS using the following
+ profile defintion in the .m2/settings.xml file in your home directory:
+
+<?xml version="1.0" encoding="UTF-8"?>
+<settings
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
+
+ <profiles>
+ <profile>
+ <id>environment</id>
+ <activation>
+ <activeByDefault>true</activeByDefault>
+ </activation>
+ <properties>
+ <jboss.home>/path/to/jboss-as-6.0.0.M3</jboss.home>
+ </properties>
+ </profile>
+ </profiles>
+
+</settings>
+
+ Once you've set either the JBOSS_HOME environment variable or the jboss.home
+ Maven property, you can deploy to JBoss AS by executing the following command:
+
+ mvn package jboss:hard-deploy
+
+ This will deploy two artifacts, target/${artifactId}.war and
+ default-ds.xml. The latter installs a data source named jdbc/__default,
+ so both JBoss AS and GlassFish have a data source with the same name.
+
+ You can also set jboss.home on the commandline:
+
+ mvn package jboss:hard-deploy -Djboss.home=/path/to/jboss-as-6.0.0.M3
+
+ Start JBoss AS. The application will be running at the following URL:
+
+ http://localhost:8080/${artifactId}/home.jsf
+
+ Note: If you are using JBoss AS 6.0.0.M3, you may encounter the exception
+ described in https://jira.jboss.org/browse/WELD-448 if you attempt to access
+ to root context path (i.e., /).
+
+ To undeploy from JBoss AS, run this command:
+
+ mvn jboss:hard-undeploy
+
+ There are several ways to deploy the archive to GlassFish. The recommended
+ approach is to open the project in NetBeans 6.8, right-click on the project
+ and select "Run" from the context menu. That starts JavaDB, GlassFish and
+ deploys the application. NetBeans then provides incremental deployment of web
+ resources.
+
+ You can also start GlassFish from the commandline. Change to the glassfish/bin
+ directory in the GlassFish install root and run these three commands (leading
+ ./ not required on Windows):
+
+ ./asadmin start-database
+ ./asadmin start-domain domain1
+
+ Now you can either deploy the target/${artifactId}.war through the
+ web-based GlassFish admininstration console, or you can again use asadmin:
+
+ ./asadmin deploy /path/to/project/target/${artifactId}.war
+
+ To undeploy the application, run:
+
+ ./asadmin undeploy ${artifactId}
+
+ Running the Arquillian tests
+ ============================
+
+ By default, tests are configured to be skipped. The reason is that the sample
+ test is an Arquillian test, which requires the use of a container. You can
+ activate this test by selecting one of the two container configurations
+ provided, JBoss AS 6 (remote) or GlassFish 3 (embedded).
+
+ To run the test in GlassFish Embedded, simply run the test goal with the
+ following profile activated:
+
+ mvn clean test -Pglassfish-embedded-3
+
+ (The clean goal is only required when you switch between containers)
+
+ To run the test in JBoss AS 6, first start a JBoss AS 6 instance. Then, run the
+ test goal with the following profile activated:
+
+ mvn clean test -Pjbossas-remote-6
+
+ Consult the Arquillian reference documentation to register profiles for any
+ supported container.
+
+ http://docs.jboss.org/arquillian/reference/latest/en-US/html/containers.h...
+
+ Importing the project into an IDE
+ =================================
+
+ If you created the project using the Maven 2 archetype wizard in your IDE
+ (Eclipse, NetBeans or IntelliJ IDEA), then there is nothing to do. You should
+ already have an IDE project.
+
+ If you created the project from the commandline using archetype:generate, then
+ you need to bring the project into your IDE. If you are using NetBeans 6.8 or
+ IntelliJ IDEA 9, then all you have to do is open the project as an existing
+ project. Both of these IDEs recognize Maven 2 projects natively.
+
+ To import into Eclipse, you first need to install the m2eclipse plugin. To get
+ started, add the m2eclipse update site (http://m2eclipse.sonatype.org/update/)
+ to Eclipse (or use the Help > Eclipse Marketplace...) and install the
+ m2eclipse plugin and required dependencies. Once that's installed, you'll be
+ ready to import the project into Eclipse.
+
+ Select File > Import... and select "Existing Maven Projects" and navigate to
+ your project directory. Click Finish and m2eclipse will take it from there.
+
+ Once in the IDE, you can execute the Maven commands through the IDE controls
+ to deploy the application to a container.
+
+ NOTE: If the project shows a compile error after import, it's likely that the
+ generated sources are not on the Eclipse project classpath. Right click the
+ project and select:
+
+ Maven > Update Project Configuration
+
+ Downloading the sources and Javadocs
+ ====================================
+
+ If you want to be able to debug into the source code or look at the Javadocs
+ of any library in the project, you can run either of the following two
+ commands to pull them into your local repository. The IDE should then detect
+ them.
+
+ mvn dependency:sources
+ mvn dependency:resolve -Dclassifier=javadoc
+
+ Resources
+ =========
+
+ Weld archetypes:
+ - Quickstart: http://seamframework.org/Documentation/WeldQuickstartForMavenUsers
+ - Issue tracker: https://jira.jboss.org/jira/browse/WELDRAD
+ - Source code: http://anonsvn.jboss.org/repos/weld/archetypes
+ - Forums: http://seamframework.org/Community/WeldUsers
+ JSR-299 overview: http://seamframework.org/Weld
+ JSF community site: http://www.javaserverfaces.org
+
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/java/JaxRsConfig.java
===================================================================
--- archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/java/JaxRsConfig.java (rev 0)
+++ archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/java/JaxRsConfig.java 2010-07-16 23:16:25 UTC (rev 6670)
@@ -0,0 +1,10 @@
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+package ${package};
+
+import javax.ws.rs.ApplicationPath;
+import javax.ws.rs.core.Application;
+
+@ApplicationPath("/rest")
+public class JaxRsConfig extends Application {}
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/java/Member.java
===================================================================
--- archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/java/Member.java (rev 0)
+++ archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/java/Member.java 2010-07-16 23:16:25 UTC (rev 6670)
@@ -0,0 +1,86 @@
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+package ${package};
+
+import java.io.Serializable;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.Table;
+import javax.persistence.UniqueConstraint;
+import javax.validation.constraints.Digits;
+import javax.validation.constraints.NotNull;
+import javax.validation.constraints.Pattern;
+import javax.validation.constraints.Size;
+import javax.xml.bind.annotation.XmlRootElement;
+import org.hibernate.validator.constraints.Email;
+import org.hibernate.validator.constraints.NotEmpty;
+
+@Entity
+@XmlRootElement
+@Table(uniqueConstraints = @UniqueConstraint(columnNames = "email"))
+public class Member implements Serializable
+{
+ private Long id;
+ private String name;
+ private String email;
+ private String phoneNumber;
+
+ @Id
+ @GeneratedValue
+ public Long getId()
+ {
+ return id;
+ }
+
+ public void setId(Long id)
+ {
+ this.id = id;
+ }
+
+ @NotNull
+ @Size(min = 1, max = 25)
+ @Pattern(regexp = "[A-Za-z ]*", message = "must contain only letters and spaces")
+ public String getName()
+ {
+ return name;
+ }
+
+ public void setName(String name)
+ {
+ this.name = name;
+ }
+
+ @NotNull
+ @NotEmpty
+ @Email
+ public String getEmail()
+ {
+ return email;
+ }
+
+ public void setEmail(String email)
+ {
+ this.email = email;
+ }
+
+ @NotNull
+ @Size(min = 10, max = 12)
+ @Digits(fraction = 0, integer = 12)
+ @Column(name = "phone_number")
+ public String getPhoneNumber()
+ {
+ return phoneNumber;
+ }
+
+ public void setPhoneNumber(String phoneNumber)
+ {
+ this.phoneNumber = phoneNumber;
+ }
+
+ /** Default value included to remove warning. Remove or modify at will. */
+ private static final long serialVersionUID = 1L;
+}
\ No newline at end of file
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/java/MemberListProducer.java
===================================================================
--- archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/java/MemberListProducer.java (rev 0)
+++ archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/java/MemberListProducer.java 2010-07-16 23:16:25 UTC (rev 6670)
@@ -0,0 +1,50 @@
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+package ${package};
+
+import java.util.List;
+import javax.annotation.PostConstruct;
+import javax.enterprise.context.RequestScoped;
+import javax.enterprise.event.Observes;
+import javax.enterprise.event.Reception;
+
+import javax.enterprise.inject.Produces;
+import javax.inject.Inject;
+import javax.inject.Named;
+import javax.persistence.EntityManager;
+import javax.persistence.criteria.CriteriaBuilder;
+import javax.persistence.criteria.CriteriaQuery;
+import javax.persistence.criteria.Root;
+
+@RequestScoped
+public class MemberListProducer
+{
+ @Inject
+ @MemberRepository
+ private EntityManager em;
+
+ private List<Member> members;
+
+ @Produces
+ @Named
+ public List<Member> getMembers()
+ {
+ return members;
+ }
+
+ public void onMemberListChanged(@Observes(notifyObserver = Reception.IF_EXISTS) final Member member)
+ {
+ fetch();
+ }
+
+ @PostConstruct
+ public void fetch()
+ {
+ CriteriaBuilder cb = em.getCriteriaBuilder();
+ CriteriaQuery<Member> criteria = cb.createQuery(Member.class);
+ Root<Member> widget = criteria.from(Member.class);
+ criteria.select(widget).orderBy(cb.asc(widget.get(Member_.name)));
+ members = em.createQuery(criteria).getResultList();
+ }
+}
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/java/MemberRegistration.java
===================================================================
--- archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/java/MemberRegistration.java (rev 0)
+++ archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/java/MemberRegistration.java 2010-07-16 23:16:25 UTC (rev 6670)
@@ -0,0 +1,57 @@
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+package ${package};
+
+import javax.annotation.PostConstruct;
+import javax.enterprise.event.Event;
+import javax.enterprise.inject.Model;
+import javax.enterprise.inject.Produces;
+import javax.inject.Inject;
+import javax.inject.Named;
+import javax.persistence.EntityManager;
+import javax.transaction.UserTransaction;
+import org.slf4j.Logger;
+
+//@Stateful // enable when JBoss AS M4 is out
+@Model
+public class MemberRegistration
+{
+ @Inject
+ private Logger log;
+
+ @Inject
+ @MemberRepository
+ private EntityManager em;
+
+ @Inject
+ private UserTransaction utx;
+
+ private Member newMember;
+
+ @Produces
+ @Named
+ public Member getNewMember()
+ {
+ return newMember;
+ }
+ @Inject
+ private Event<Member> memberEventSrc;
+
+ public void register() throws Exception
+ {
+ log.info("Registering " + newMember.getName());
+ utx.begin();
+ em.joinTransaction();
+ em.persist(newMember);
+ utx.commit();
+ memberEventSrc.fire(newMember);
+ initNewMember();
+ }
+
+ @PostConstruct
+ public void initNewMember()
+ {
+ newMember = new Member();
+ }
+}
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/java/MemberRepository.java
===================================================================
--- archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/java/MemberRepository.java (rev 0)
+++ archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/java/MemberRepository.java 2010-07-16 23:16:25 UTC (rev 6670)
@@ -0,0 +1,19 @@
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+package ${package};
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+import javax.inject.Qualifier;
+
+/**
+ * A qualifier used to differentiate between multiple data repositories
+ */
+@Qualifier
+(a)Target({ElementType.FIELD, ElementType.METHOD, ElementType.PARAMETER})
+(a)Retention(RetentionPolicy.RUNTIME)
+public @interface MemberRepository {}
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/java/MemberRepositoryProducer.java
===================================================================
--- archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/java/MemberRepositoryProducer.java (rev 0)
+++ archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/java/MemberRepositoryProducer.java 2010-07-16 23:16:25 UTC (rev 6670)
@@ -0,0 +1,16 @@
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+package ${package};
+
+import javax.enterprise.inject.Produces;
+import javax.persistence.EntityManager;
+import javax.persistence.PersistenceContext;
+
+public class MemberRepositoryProducer
+{
+ @Produces
+ @MemberRepository
+ @PersistenceContext
+ private EntityManager em;
+}
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/java/MemberResource.java
===================================================================
--- archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/java/MemberResource.java (rev 0)
+++ archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/java/MemberResource.java 2010-07-16 23:16:25 UTC (rev 6670)
@@ -0,0 +1,33 @@
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+package ${package};
+
+import java.util.List;
+import javax.enterprise.context.RequestScoped;
+import javax.inject.Inject;
+import javax.persistence.EntityManager;
+import javax.ws.rs.GET;
+import javax.ws.rs.Path;
+import javax.ws.rs.PathParam;
+
+@Path("/members")
+@RequestScoped
+public class MemberResource
+{
+ @Inject @MemberRepository
+ private EntityManager em;
+
+ @GET
+ public List<Member> getMembers()
+ {
+ return em.createQuery("select m from Member m order by m.name").getResultList();
+ }
+
+ @GET
+ @Path("/{id:[1-9][0-9]*}")
+ public Member getMember(@PathParam("id") long id)
+ {
+ return em.find(Member.class, id);
+ }
+}
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/resources/META-INF/persistence.xml
===================================================================
--- archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/resources/META-INF/persistence.xml (rev 0)
+++ archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/resources/META-INF/persistence.xml 2010-07-16 23:16:25 UTC (rev 6670)
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<persistence version="2.0"
+ xmlns="http://java.sun.com/xml/ns/persistence"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="
+ http://java.sun.com/xml/ns/persistence
+ http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
+ <persistence-unit name="primary">
+ <!-- You can force a non-default JPA provider using one of these declarations -->
+ <!--
+ <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
+ <provider>org.hibernate.ejb.HibernatePersistence</provider>
+ -->
+
+ <!-- jdbc/__default is the default data source in GlassFish -->
+ <!-- The same data source is added to JBoss AS by deploying the project file default-ds.xml -->
+ <jta-data-source>jdbc/__default</jta-data-source>
+ <properties>
+ <!-- Properties for Hibernate (default provider for JBoss AS) -->
+ <property name="hibernate.hbm2ddl.auto" value="create-drop"/>
+ <property name="hibernate.show_sql" value="true"/>
+ <property name="hibernate.format_sql" value="false"/>
+
+ <!-- Properties for EclipseLink (default provider for GlassFish) -->
+ <property name="eclipselink.ddl-generation" value="drop-and-create-tables"/>
+ <property name="eclipselink.logging.level" value="FINE"/>
+ </properties>
+ </persistence-unit>
+</persistence>
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/resources/import.sql
===================================================================
--- archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/resources/import.sql (rev 0)
+++ archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/resources/import.sql 2010-07-16 23:16:25 UTC (rev 6670)
@@ -0,0 +1 @@
+insert into Member (name, email, phone_number) values ('John Smith', 'john(a)mailinator.com', '2125551212')
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/resources-jbossas/default-ds.xml
===================================================================
--- archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/resources-jbossas/default-ds.xml (rev 0)
+++ archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/resources-jbossas/default-ds.xml 2010-07-16 23:16:25 UTC (rev 6670)
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE datasources PUBLIC "-//JBoss//DTD JBOSS JCA Config 1.5//EN"
+ "http://www.jboss.org/j2ee/dtd/jboss-ds_1_5.dtd">
+<datasources>
+ <local-tx-datasource>
+ <jndi-name>jdbc/__default</jndi-name>
+ <use-java-context>false</use-java-context>
+ <connection-url>jdbc:hsqldb:.</connection-url>
+ <driver-class>org.hsqldb.jdbcDriver</driver-class>
+ <user-name>sa</user-name>
+ <password></password>
+ <min-pool-size>5</min-pool-size>
+ <max-pool-size>20</max-pool-size>
+ </local-tx-datasource>
+</datasources>
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/META-INF/MANIFEST.MF
===================================================================
--- archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/META-INF/MANIFEST.MF (rev 0)
+++ archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/META-INF/MANIFEST.MF 2010-07-16 23:16:25 UTC (rev 6670)
@@ -0,0 +1,3 @@
+Manifest-Version: 1.0
+Class-Path:
+
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/META-INF/context.xml
===================================================================
--- archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/META-INF/context.xml (rev 0)
+++ archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/META-INF/context.xml 2010-07-16 23:16:25 UTC (rev 6670)
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- This optional file is used by JBoss AS to get around an issue involving serialization of sessions between container restarts -->
+<Context>
+ <!-- disable storage of sessions across restarts by setting the pathname to an empty value -->
+ <Manager pathname=""/>
+</Context>
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/beans.xml
===================================================================
--- archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/beans.xml (rev 0)
+++ archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/beans.xml 2010-07-16 23:16:25 UTC (rev 6670)
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- This file can be an empty text file -->
+<!-- We're declaring the schema to save you time if you do have to configure this in the future -->
+<beans xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="
+ http://java.sun.com/xml/ns/javaee
+ http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
+ <alternatives/>
+ <decorators/>
+ <interceptors/>
+</beans>
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/faces-config.xml
===================================================================
--- archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/faces-config.xml (rev 0)
+++ archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/faces-config.xml 2010-07-16 23:16:25 UTC (rev 6670)
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- This file is not required if you don't need any extra configuration. -->
+<faces-config version="2.0"
+ xmlns="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="
+ http://java.sun.com/xml/ns/javaee
+ http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd">
+
+ <!-- Write your navigation rules here. You are encouraged to use CDI for creating @Named managed beans. -->
+
+</faces-config>
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/templates/default.xhtml
===================================================================
--- archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/templates/default.xhtml (rev 0)
+++ archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/templates/default.xhtml 2010-07-16 23:16:25 UTC (rev 6670)
@@ -0,0 +1,52 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+ xmlns:h="http://java.sun.com/jsf/html"
+ xmlns:ui="http://java.sun.com/jsf/facelets">
+ <h:head>
+ <title>Java EE 6 Starter Application</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <h:outputStylesheet name="css/screen.css"/>
+ </h:head>
+ <h:body>
+ <div id="container">
+ <div id="content">
+ <div id="sidebar">
+ <h3>Find out more</h3>
+ <p>
+ Explore JavaServer Faces.
+ </p>
+ <ul>
+ <li><a href="http://www.javaserverfaces.org">JSF community site</a></li>
+ </ul>
+ <p>
+ Learn more about Java EE 6 and the extensions provided by Weld and Seam.
+ </p>
+ <ul>
+ <li><a href="http://seamframework.org/Weld">Overview</a></li>
+ <li><a href="http://seamframework.org">Project site</a></li>
+ <li><a href="http://seamframework.org/Documentation/SeamDocumentation#H-WeldReferenceD...">Documentation</a></li>
+ <li><a href="http://seamframework.org/Community/Forums">User forums</a></li>
+ <li><a href="http://seamframework.org/Community/MailingLists">Mailing lists</a></li>
+ <li><a href="https://jira.jboss.org/browse/WELDRAD">Issue tracker</a></li>
+ </ul>
+ <p>
+ If you have an add-on, please <a href="http://seamframework.org/Community/Forums">let us know</a> and
+ consider <a href="http://seamframework.org/Community/Contribute">contributing</a> it back to the
+ community!
+ </p>
+ </div>
+ <ui:insert name="content">
+ [Template content will be inserted here]
+ </ui:insert>
+ </div>
+ <div id="footer">
+ <h:graphicImage value="/resources/gfx/weld.png" alt="Weld logo"/>
+ <p>
+ This project was generated from a Maven archetype maintained by the Weld team.<br/>
+ Weld is the reference implementation of CDI, released under the Apache License, Version 2.0.<br/>
+ </p>
+ </div>
+ </div>
+ </h:body>
+</html>
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/web.xml
===================================================================
--- archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/web.xml (rev 0)
+++ archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/web.xml 2010-07-16 23:16:25 UTC (rev 6670)
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="
+ http://java.sun.com/xml/ns/javaee
+ http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
+
+ <!-- This is an optional parameter, but it makes troubleshooting errors much easier -->
+ <!-- You should delete it before final deployment -->
+ <context-param>
+ <param-name>javax.faces.PROJECT_STAGE</param-name>
+ <param-value>Development</param-value>
+ </context-param>
+
+ <!-- Activate the JSF 2.0 servlet -->
+ <servlet>
+ <servlet-name>Faces Servlet</servlet-name>
+ <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
+ <load-on-startup>1</load-on-startup>
+ </servlet>
+
+ <!-- Tell the context which URLs to process with JSF -->
+ <servlet-mapping>
+ <servlet-name>Faces Servlet</servlet-name>
+ <url-pattern>*.jsf</url-pattern>
+ </servlet-mapping>
+
+ <welcome-file-list>
+ <welcome-file>index.jsp</welcome-file>
+ <welcome-file>index.html</welcome-file>
+ <welcome-file>index.jsf</welcome-file>
+ </welcome-file-list>
+
+</web-app>
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/index.jsf
===================================================================
--- archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/index.jsf (rev 0)
+++ archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/index.jsf 2010-07-16 23:16:25 UTC (rev 6670)
@@ -0,0 +1,6 @@
+The contents of this file will not be displayed!
+
+Having this file is trick to get JBoss AS to redirect to the path index.jsf
+when the root application URL is requested (or any subdirectory).
+
+See https://jira.jboss.org/browse/JBAS-8224
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/index.xhtml
===================================================================
--- archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/index.xhtml (rev 0)
+++ archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/index.xhtml 2010-07-16 23:16:25 UTC (rev 6670)
@@ -0,0 +1,79 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui:composition xmlns="http://www.w3.org/1999/xhtml"
+ xmlns:ui="http://java.sun.com/jsf/facelets"
+ xmlns:f="http://java.sun.com/jsf/core"
+ xmlns:h="http://java.sun.com/jsf/html"
+ template="/WEB-INF/templates/default.xhtml">
+ <ui:define name="content">
+ <h1>Welcome to Java EE 6!</h1>
+
+ <p>You have successfully deployed a Java EE 6 web application.</p>
+
+ <h:form id="reg">
+ <h2>Register (Bean Validation example)</h2>
+ <p>Enforces annotation-based constraints defined on the model class.</p>
+ <table>
+ <tr>
+ <th style="text-align: right;">
+ <h:outputLabel for="name" value="Name:"/>
+ </th>
+ <td>
+ <h:inputText id="name" value="#{newMember.name}"/>
+ <h:message for="name" errorClass="invalid"/>
+ </td>
+ </tr>
+ <tr>
+ <th style="text-align: right;">
+ <h:outputLabel for="email" value="Email:"/>
+ </th>
+ <td>
+ <h:inputText id="email" value="#{newMember.email}"/>
+ <h:message for="email" errorClass="invalid"/>
+ </td>
+ </tr>
+ <tr>
+ <th style="text-align: right;">
+ <h:outputLabel for="phoneNumber" value="Phone #:"/>
+ </th>
+ <td>
+ <h:inputText id="phoneNumber" value="#{newMember.phoneNumber}"/>
+ <h:message for="phoneNumber" errorClass="invalid"/>
+ </td>
+ </tr>
+ </table>
+ <p>
+ <h:commandButton id="register" action="#{memberRegistration.register}" value="Register"/>
+ <h:outputText value=" Registered!" rendered="#{facesContext.postback and empty facesContext.messageList}" style="color: green;"/>
+ </p>
+ </h:form>
+ <h2>Members</h2>
+ <h:panelGroup rendered="#{empty members}">
+ <em>No registered members.</em>
+ </h:panelGroup>
+ <h:dataTable var="_member" value="#{members}" rendered="#{not empty members}">
+ <h:column>
+ <f:facet name="header">Id</f:facet>
+ #{_member.id}
+ </h:column>
+ <h:column>
+ <f:facet name="header">Name</f:facet>
+ #{_member.name}
+ </h:column>
+ <h:column>
+ <f:facet name="header">Email</f:facet>
+ #{_member.email}
+ </h:column>
+ <h:column>
+ <f:facet name="header">Phone #</f:facet>
+ #{_member.phoneNumber}
+ </h:column>
+ <h:column>
+ <f:facet name="header">REST URL</f:facet>
+ <a href="#{request.contextPath}/rest/members/#{_member.id}">/rest/members/#{_members.id}</a>
+ </h:column>
+ <f:facet name="footer">
+ REST URL for all members: <a href="#{request.contextPath}/rest/members">/rest/members</a>
+ </f:facet>
+ </h:dataTable>
+ </ui:define>
+</ui:composition>
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/resources/css/screen.css
===================================================================
--- archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/resources/css/screen.css (rev 0)
+++ archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/resources/css/screen.css 2010-07-16 23:16:25 UTC (rev 6670)
@@ -0,0 +1,40 @@
+body {
+ margin: 0;
+ padding: 0;
+ background-color: #EAECEE;
+ font-family: Verdana, sans-serif;
+ font-size: 0.9em;
+}
+#container {
+ margin: 0 auto;
+ padding: 0 20px 10px 20px;
+ border: 1px solid #666666;
+ width: 865px; /* subtract 40px from banner width for padding */
+ background: #FFFFFF url(#{request.contextPath}/resources/gfx/banner.png) no-repeat;
+ padding-top: 110px;
+}
+#sidebar {
+ font-size: 0.9em;
+ width: 225px;
+ float: right;
+ border: 1px solid #666666;
+ background: #EAECEE;
+ padding: 0 15px 5px 15px;
+}
+#sidebar ul {
+ padding-left: 30px;
+}
+#footer {
+ clear: both;
+ text-align: center;
+ color: #666666;
+ font-size: 0.85em;
+ padding: 3em 0 0 0;
+}
+code {
+ font-size: 1.1em;
+}
+span.invalid {
+ padding-left: 3px;
+ color: red;
+}
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/resources/gfx/banner.png
===================================================================
(Binary files differ)
Property changes on: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/resources/gfx/banner.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/resources/gfx/weld.png
===================================================================
(Binary files differ)
Property changes on: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/main/webapp/resources/gfx/weld.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/test/java/MemberRegistrationTest.java
===================================================================
--- archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/test/java/MemberRegistrationTest.java (rev 0)
+++ archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/test/java/MemberRegistrationTest.java 2010-07-16 23:16:25 UTC (rev 6670)
@@ -0,0 +1,54 @@
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+package ${package};
+
+import javax.enterprise.inject.Produces;
+import javax.enterprise.inject.spi.InjectionPoint;
+import static org.junit.Assert.*;
+import javax.inject.Inject;
+import org.jboss.arquillian.api.Deployment;
+import org.jboss.arquillian.junit.Arquillian;
+import org.jboss.shrinkwrap.api.ShrinkWrap;
+import org.jboss.shrinkwrap.api.Archive;
+import org.jboss.shrinkwrap.api.spec.WebArchive;
+import org.jboss.shrinkwrap.api.asset.ByteArrayAsset;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+(a)RunWith(Arquillian.class)
+public class MemberRegistrationTest
+{
+ @Deployment
+ public static Archive<?> createTestArchive() {
+ return ShrinkWrap.create(WebArchive.class, "test.war")
+ .addClasses(Member.class, MemberRegistration.class, MemberRepository.class, MemberRepositoryProducer.class)
+ .addPackage(Logger.class.getPackage())
+ .addWebResource("test-persistence.xml", "classes/META-INF/persistence.xml")
+ .addWebResource(new ByteArrayAsset(new byte[0]), "beans.xml");
+ }
+
+ @Inject MemberRegistration memberRegistration;
+
+ @Inject Logger log;
+
+ @Test
+ public void testRegister() throws Exception
+ {
+ Member newMember = memberRegistration.getNewMember();
+ newMember.setName("Jane Doe");
+ newMember.setEmail("jane(a)mailinator.com");
+ newMember.setPhoneNumber("2125551234");
+ memberRegistration.register();
+ assertNotNull(newMember.getId());
+ log.info(newMember.getName() + " was persisted with id " + newMember.getId());
+ }
+
+ @Produces
+ public Logger produceLog(InjectionPoint injectionPoint)
+ {
+ return LoggerFactory.getLogger(injectionPoint.getMember().getDeclaringClass());
+ }
+}
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/test/resources/arquillian.xml
===================================================================
--- archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/test/resources/arquillian.xml (rev 0)
+++ archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/test/resources/arquillian.xml 2010-07-16 23:16:25 UTC (rev 6670)
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<arquillian xmlns="http://jboss.com/arquillian"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:jbasmanaged="urn:arq:org.jboss.arquillian.container.jbossas.managed_6"
+ xmlns:gfembed="urn:arq:org.jboss.arquillian.container.glassfish.embedded_3"
+ xmlns:gfremote="urn:arq:org.jboss.arquillian.container.glassfish.remote_3">
+
+ <!-- Uncomment to have test archives exported to the file system for inspection -->
+ <!--
+ <engine>
+ <deploymentExportPath>/tmp/</deploymentExportPath>
+ </engine>
+ -->
+
+ <jbasmanaged:container>
+ <jbasmanaged:jbossHome>/home/dallen/opt/jboss-as-tests</jbasmanaged:jbossHome>
+ </jbasmanaged:container>
+
+ <gfembed:container>
+ <gfembed:bindHttpPort>7070</gfembed:bindHttpPort>
+ <gfembed:sunResourcesXml>src/test/resources-glassfish-embedded/sun-resources.xml</gfembed:sunResourcesXml>
+ </gfembed:container>
+
+ <gfremote:container>
+ <gfremote:remoteServerHttpPort>7070</gfremote:remoteServerHttpPort>
+ </gfremote:container>
+
+</arquillian>
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/test/resources-glassfish-embedded/sun-resources.xml
===================================================================
--- archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/test/resources-glassfish-embedded/sun-resources.xml (rev 0)
+++ archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/test/resources-glassfish-embedded/sun-resources.xml 2010-07-16 23:16:25 UTC (rev 6670)
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE resources PUBLIC "-//Sun Microsystems, Inc.//DTD Application Server 9.0 Resource Definitions //EN"
+ "http://www.sun.com/software/appserver/dtds/sun-resources_1_4.dtd">
+<resources>
+ <jdbc-resource pool-name="ArquillianEmbeddedDerbyPool"
+ jndi-name="jdbc/arquillian"/>
+ <jdbc-connection-pool name="ArquillianEmbeddedDerbyPool"
+ res-type="javax.sql.DataSource"
+ datasource-classname="org.apache.derby.jdbc.EmbeddedDataSource"
+ is-isolation-level-guaranteed="false">
+ <property name="databaseName" value="target/databases/derby"/>
+ <property name="createDatabase" value="create"/>
+ </jdbc-connection-pool>
+</resources>
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/test/resources-glassfish-embedded/test-persistence.xml
===================================================================
--- archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/test/resources-glassfish-embedded/test-persistence.xml (rev 0)
+++ archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/test/resources-glassfish-embedded/test-persistence.xml 2010-07-16 23:16:25 UTC (rev 6670)
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<persistence version="2.0"
+ xmlns="http://java.sun.com/xml/ns/persistence"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="
+ http://java.sun.com/xml/ns/persistence
+ http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
+ <persistence-unit name="primary">
+ <jta-data-source>jdbc/arquillian</jta-data-source>
+ <properties>
+ <!-- Properties for EclipseLink (default provider for GlassFish) -->
+ <property name="eclipselink.ddl-generation" value="drop-and-create-tables"/>
+ <property name="eclipselink.logging.level" value="FINE"/>
+ </properties>
+ </persistence-unit>
+</persistence>
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/test/resources-jbossas/jndi.properties
===================================================================
--- archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/test/resources-jbossas/jndi.properties (rev 0)
+++ archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/test/resources-jbossas/jndi.properties 2010-07-16 23:16:25 UTC (rev 6670)
@@ -0,0 +1,3 @@
+java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
+java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces
+java.naming.provider.url=jnp://localhost:1099
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/test/resources-jbossas/test-persistence.xml
===================================================================
--- archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/test/resources-jbossas/test-persistence.xml (rev 0)
+++ archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/main/resources/archetype-resources/src/test/resources-jbossas/test-persistence.xml 2010-07-16 23:16:25 UTC (rev 6670)
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<persistence version="2.0"
+ xmlns="http://java.sun.com/xml/ns/persistence"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="
+ http://java.sun.com/xml/ns/persistence
+ http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
+ <persistence-unit name="primary">
+ <jta-data-source>java:/DefaultDS</jta-data-source>
+ <properties>
+ <!-- Properties for Hibernate (default provider for JBoss AS) -->
+ <property name="hibernate.hbm2ddl.auto" value="create-drop"/>
+ <property name="hibernate.show_sql" value="true"/>
+ <property name="hibernate.format_sql" value="false"/>
+ </properties>
+ </persistence-unit>
+</persistence>
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/test/resources/projects/basic/archetype.properties
===================================================================
--- archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/test/resources/projects/basic/archetype.properties (rev 0)
+++ archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/test/resources/projects/basic/archetype.properties 2010-07-16 23:16:25 UTC (rev 6670)
@@ -0,0 +1,5 @@
+#Fri Jul 16 19:14:05 EDT 2010
+version=0.1-SNAPSHOT
+name=Java EE 6 project
+groupId=archetype.it
+artifactId=basic
Added: archetypes/javaee6-webapp/tags/1.0.1.Beta1/src/test/resources/projects/basic/goal.txt
===================================================================
15 years, 9 months
Weld SVN: r6668 - archetypes/javaee6-webapp/trunk.
by weld-commits@lists.jboss.org
Author: dan.j.allen
Date: 2010-07-16 19:06:49 -0400 (Fri, 16 Jul 2010)
New Revision: 6668
Modified:
archetypes/javaee6-webapp/trunk/pom.xml
archetypes/javaee6-webapp/trunk/readme.txt
Log:
add slf4j api and impl
notes about arquillian profiles
more information about deploying app
more information about importing app into IDE
Modified: archetypes/javaee6-webapp/trunk/pom.xml
===================================================================
--- archetypes/javaee6-webapp/trunk/pom.xml 2010-07-16 23:05:45 UTC (rev 6667)
+++ archetypes/javaee6-webapp/trunk/pom.xml 2010-07-16 23:06:49 UTC (rev 6668)
@@ -86,14 +86,22 @@
</dependency>
<!-- Need to use the injectable logger in Weld Extensions -->
- <!-- Both JBoss AS and GlassFish provide this API -->
+ <!-- Switch scope to provided if server provides slf4j; JBoss AS provides it; GlassFish provides it if you have the Hibernate JPA provider installed -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.5.10</version>
- <scope>provided</scope>
+ <scope>compile</scope>
</dependency>
+ <!-- Remove if server provides slf4j; JBoss AS provides it; GlassFish provides it if you have the Hibernate JPA provider installed -->
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-simple</artifactId>
+ <version>1.5.10</version>
+ <scope>runtime</scope>
+ </dependency>
+
<!-- JSR-303 (Bean Validation) Implementation -->
<!-- Provides portable constraints such as @Email -->
<!-- Hibernate Validator is the only JSR-303 implementation at the moment, so we can assume it's provided -->
@@ -141,6 +149,12 @@
<phase>generate-sources</phase>
<configuration>
<compilerArgument>-proc:only</compilerArgument>
+ <!-- If your app has multiple packages, use this include filter to execute the processor only on the package containing your entities -->
+ <!--
+ <includes>
+ <include>**/model/*.java</include>
+ </includes>
+ -->
</configuration>
<goals>
<goal>compile</goal>
@@ -172,14 +186,14 @@
<profiles>
<profile>
- <!-- The default profile skips all tests, though you can tune it to run just unit tests -->
- <!-- Seperate profiles are provided for running all tests, including Arquillian tests, which execute in the specified container -->
+ <!-- The default profile skips all tests, though you can tune it to run just unit tests based on a custom pattern -->
+ <!-- Seperate profiles are provided for running all tests, including Arquillian tests that execute in the specified container -->
<id>default</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<dependencies>
- <!-- Java EE Specification POM -->
+ <!-- Java EE 6 Specification POM -->
<!-- This one dependency imports all APIs available for a Java EE 6.0 application -->
<dependency>
<groupId>org.jboss.spec</groupId>
@@ -220,7 +234,7 @@
</profile>
<profile>
- <!-- An Arquillian testing profile that executes tests in GlassFish Embedded -->
+ <!-- An optional Arquillian testing profile that executes tests in GlassFish Embedded -->
<!-- Run with 'mvn test -Pglassfish-embedded-3' -->
<id>glassfish-embedded-3</id>
<dependencies>
@@ -269,7 +283,7 @@
</build>
</profile>
<profile>
- <!-- An Arquillian testing profile that executes tests in a remote JBoss AS instance -->
+ <!-- An optional Arquillian testing profile that executes tests in a remote JBoss AS instance -->
<!-- Run with 'mvn test -Pjbossas-remote-6' -->
<id>jbossas-remote-6</id>
<dependencies>
@@ -279,7 +293,7 @@
<version>${arquillian.version}</version>
<scope>test</scope>
</dependency>
- <!-- Java EE Specification POM -->
+ <!-- Java EE 6 Specification POM -->
<!-- This one dependency imports all APIs available for a Java EE 6.0 application -->
<dependency>
<groupId>org.jboss.spec</groupId>
Modified: archetypes/javaee6-webapp/trunk/readme.txt
===================================================================
--- archetypes/javaee6-webapp/trunk/readme.txt 2010-07-16 23:05:45 UTC (rev 6667)
+++ archetypes/javaee6-webapp/trunk/readme.txt 2010-07-16 23:06:49 UTC (rev 6668)
@@ -9,10 +9,10 @@
This is your project! It's a sample, deployable Maven 2 project to help you
get your foot in the door developing with Java EE 6. This project is setup to
allow you to create a compliant Java EE 6 application using JSF 2.0, CDI 1.0,
- EJB 3.1 and JPA 2.0) that can run on a certified application server (Complete
- or Web Profile). It includes a persistence unit and some sample persistence
- and transaction code to help you get your feet wet with database access in
- enterprise Java.
+ EJB 3.1, JPA 2.0 and Bean Validation 1.0) that can run on a certified
+ application server (Complete or Web Profile). It includes a persistence unit
+ and some sample persistence and transaction code to help you get your feet wet
+ with database access in enterprise Java.
System requirements
===================
@@ -30,9 +30,13 @@
Deploying the application
=========================
- To deploy the application to JBoss AS (standalone), first make sure that the
- JBOSS_HOME environment variable points to a JBoss AS 6.0 installation.
+ To deploy the application, first produce the archive to deploy:
+ mvn package
+
+ If you want To deploy the application on JBoss AS (standalone), make sure that
+ your JBOSS_HOME environment variable points to a JBoss AS 6.0 installation.
+
Alternatively, you can set the location of JBoss AS using the following
profile defintion in the .m2/settings.xml file in your home directory:
@@ -62,7 +66,8 @@
mvn package jboss:hard-deploy
This will deploy two artifacts, target/jboss-javaee6-webapp-src.war and
- default-ds.xml. The latter installs a data source named jdbc/__default.
+ default-ds.xml. The latter installs a data source named jdbc/__default,
+ so both JBoss AS and GlassFish have a data source with the same name.
You can also set jboss.home on the commandline:
@@ -80,26 +85,28 @@
mvn jboss:hard-undeploy
- If you want to deploy to GlassFish, first produce the archive to deploy:
-
- mvn package
-
There are several ways to deploy the archive to GlassFish. The recommended
approach is to open the project in NetBeans 6.8, right-click on the project
and select "Run" from the context menu. That starts JavaDB, GlassFish and
- deploys the application.
+ deploys the application. NetBeans then provides incremental deployment of web
+ resources.
You can also start GlassFish from the commandline. Change to the glassfish/bin
- directory in the GlassFish install root and run these three commands:
+ directory in the GlassFish install root and run these three commands (leading
+ ./ not required on Windows):
- asadmin start-database
- asadmin start-domain domain1
+ ./asadmin start-database
+ ./asadmin start-domain domain1
Now you can either deploy the target/jboss-javaee6-webapp-src.war through the
web-based GlassFish admininstration console, or you can again use asadmin:
- asadmin /path/to/project/target/jboss-javaee6-webapp-src.war
+ ./asadmin deploy /path/to/project/target/jboss-javaee6-webapp-src.war
+ To undeploy the application, run:
+
+ ./asadmin undeploy jboss-javaee6-webapp-src
+
Running the Arquillian tests
============================
@@ -139,15 +146,22 @@
To import into Eclipse, you first need to install the m2eclipse plugin. To get
started, add the m2eclipse update site (http://m2eclipse.sonatype.org/update/)
- to Eclipse and install the m2eclipse plugin and required dependencies. Once
- that is installed, you'll be ready to import the project into Eclipse.
+ to Eclipse (or use the Help > Eclipse Marketplace...) and install the
+ m2eclipse plugin and required dependencies. Once that's installed, you'll be
+ ready to import the project into Eclipse.
- Select File > Import... and select "Import... > Maven Projects" and select
- your project directory. m2eclipse should take it from there.
+ Select File > Import... and select "Existing Maven Projects" and navigate to
+ your project directory. Click Finish and m2eclipse will take it from there.
Once in the IDE, you can execute the Maven commands through the IDE controls
to deploy the application to a container.
+ NOTE: If the project shows a compile error after import, it's likely that the
+ generated sources are not on the Eclipse project classpath. Right click the
+ project and select:
+
+ Maven > Update Project Configuration
+
Downloading the sources and Javadocs
====================================
15 years, 9 months
Weld SVN: r6667 - in archetypes/javaee6-webapp/trunk/src/main/webapp: WEB-INF and 1 other directory.
by weld-commits@lists.jboss.org
Author: dan.j.allen
Date: 2010-07-16 19:05:45 -0400 (Fri, 16 Jul 2010)
New Revision: 6667
Added:
archetypes/javaee6-webapp/trunk/src/main/webapp/index.jsf
archetypes/javaee6-webapp/trunk/src/main/webapp/index.xhtml
Removed:
archetypes/javaee6-webapp/trunk/src/main/webapp/home.xhtml
archetypes/javaee6-webapp/trunk/src/main/webapp/index.jsp
Modified:
archetypes/javaee6-webapp/trunk/src/main/webapp/WEB-INF/web.xml
Log:
use welcome file to forward to index.jsf instead of using a redirect in index.jsp
Modified: archetypes/javaee6-webapp/trunk/src/main/webapp/WEB-INF/web.xml
===================================================================
--- archetypes/javaee6-webapp/trunk/src/main/webapp/WEB-INF/web.xml 2010-07-16 23:00:44 UTC (rev 6666)
+++ archetypes/javaee6-webapp/trunk/src/main/webapp/WEB-INF/web.xml 2010-07-16 23:05:45 UTC (rev 6667)
@@ -24,9 +24,10 @@
<url-pattern>*.jsf</url-pattern>
</servlet-mapping>
- <!-- This section is option. -->
<welcome-file-list>
+ <welcome-file>index.jsp</welcome-file>
+ <welcome-file>index.html</welcome-file>
<welcome-file>index.jsf</welcome-file>
- <welcome-file>index.jsp</welcome-file>
</welcome-file-list>
+
</web-app>
Deleted: archetypes/javaee6-webapp/trunk/src/main/webapp/home.xhtml
===================================================================
--- archetypes/javaee6-webapp/trunk/src/main/webapp/home.xhtml 2010-07-16 23:00:44 UTC (rev 6666)
+++ archetypes/javaee6-webapp/trunk/src/main/webapp/home.xhtml 2010-07-16 23:05:45 UTC (rev 6667)
@@ -1,69 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<ui:composition xmlns="http://www.w3.org/1999/xhtml"
- xmlns:ui="http://java.sun.com/jsf/facelets"
- xmlns:f="http://java.sun.com/jsf/core"
- xmlns:h="http://java.sun.com/jsf/html"
- template="/WEB-INF/templates/default.xhtml">
- <ui:define name="content">
- <h1>Welcome to Java EE 6!</h1>
-
- <p>You have successfully deployed a Java EE 6 web application.</p>
-
- <h:form id="reg">
- <h2>Register (Bean Validation example)</h2>
- <p>Enforces annotation-based constraints defined on the model class.</p>
- <table>
- <tr>
- <th style="text-align: right;">
- <h:outputLabel for="name" value="Name:"/>
- </th>
- <td>
- <h:inputText id="name" value="#{newMember.name}"/>
- <h:message for="name" errorClass="invalid"/>
- </td>
- </tr>
- <tr>
- <th style="text-align: right;">
- <h:outputLabel for="email" value="Email:"/>
- </th>
- <td>
- <h:inputText id="email" value="#{newMember.email}"/>
- <h:message for="email" errorClass="invalid"/>
- </td>
- </tr>
- <tr>
- <th style="text-align: right;">
- <h:outputLabel for="phoneNumber" value="Phone #:"/>
- </th>
- <td>
- <h:inputText id="phoneNumber" value="#{newMember.phoneNumber}"/>
- <h:message for="phoneNumber" errorClass="invalid"/>
- </td>
- </tr>
- </table>
- <p>
- <h:commandButton id="register" action="#{memberRegistration.register}" value="Register"/>
- <h:outputText value=" Registered!" rendered="#{facesContext.postback and empty facesContext.messageList}" style="color: green;"/>
- </p>
- </h:form>
- <h2>Members</h2>
- <h:dataTable var="_member" value="#{members}">
- <h:column>
- <f:facet name="header">Id</f:facet>
- #{_member.id}
- </h:column>
- <h:column>
- <f:facet name="header">Name</f:facet>
- #{_member.name}
- </h:column>
- <h:column>
- <f:facet name="header">Email</f:facet>
- #{_member.email}
- </h:column>
- <h:column>
- <f:facet name="header">Phone #</f:facet>
- #{_member.phoneNumber}
- </h:column>
- </h:dataTable>
- </ui:define>
-</ui:composition>
Added: archetypes/javaee6-webapp/trunk/src/main/webapp/index.jsf
===================================================================
--- archetypes/javaee6-webapp/trunk/src/main/webapp/index.jsf (rev 0)
+++ archetypes/javaee6-webapp/trunk/src/main/webapp/index.jsf 2010-07-16 23:05:45 UTC (rev 6667)
@@ -0,0 +1,6 @@
+The contents of this file will not be displayed!
+
+Having this file is trick to get JBoss AS to redirect to the path index.jsf
+when the root application URL is requested (or any subdirectory).
+
+See https://jira.jboss.org/browse/JBAS-8224
Deleted: archetypes/javaee6-webapp/trunk/src/main/webapp/index.jsp
===================================================================
--- archetypes/javaee6-webapp/trunk/src/main/webapp/index.jsp 2010-07-16 23:00:44 UTC (rev 6666)
+++ archetypes/javaee6-webapp/trunk/src/main/webapp/index.jsp 2010-07-16 23:05:45 UTC (rev 6667)
@@ -1 +0,0 @@
-<% response.sendRedirect("home.jsf"); %>
Copied: archetypes/javaee6-webapp/trunk/src/main/webapp/index.xhtml (from rev 6623, archetypes/javaee6-webapp/trunk/src/main/webapp/home.xhtml)
===================================================================
--- archetypes/javaee6-webapp/trunk/src/main/webapp/index.xhtml (rev 0)
+++ archetypes/javaee6-webapp/trunk/src/main/webapp/index.xhtml 2010-07-16 23:05:45 UTC (rev 6667)
@@ -0,0 +1,79 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui:composition xmlns="http://www.w3.org/1999/xhtml"
+ xmlns:ui="http://java.sun.com/jsf/facelets"
+ xmlns:f="http://java.sun.com/jsf/core"
+ xmlns:h="http://java.sun.com/jsf/html"
+ template="/WEB-INF/templates/default.xhtml">
+ <ui:define name="content">
+ <h1>Welcome to Java EE 6!</h1>
+
+ <p>You have successfully deployed a Java EE 6 web application.</p>
+
+ <h:form id="reg">
+ <h2>Register (Bean Validation example)</h2>
+ <p>Enforces annotation-based constraints defined on the model class.</p>
+ <table>
+ <tr>
+ <th style="text-align: right;">
+ <h:outputLabel for="name" value="Name:"/>
+ </th>
+ <td>
+ <h:inputText id="name" value="#{newMember.name}"/>
+ <h:message for="name" errorClass="invalid"/>
+ </td>
+ </tr>
+ <tr>
+ <th style="text-align: right;">
+ <h:outputLabel for="email" value="Email:"/>
+ </th>
+ <td>
+ <h:inputText id="email" value="#{newMember.email}"/>
+ <h:message for="email" errorClass="invalid"/>
+ </td>
+ </tr>
+ <tr>
+ <th style="text-align: right;">
+ <h:outputLabel for="phoneNumber" value="Phone #:"/>
+ </th>
+ <td>
+ <h:inputText id="phoneNumber" value="#{newMember.phoneNumber}"/>
+ <h:message for="phoneNumber" errorClass="invalid"/>
+ </td>
+ </tr>
+ </table>
+ <p>
+ <h:commandButton id="register" action="#{memberRegistration.register}" value="Register"/>
+ <h:outputText value=" Registered!" rendered="#{facesContext.postback and empty facesContext.messageList}" style="color: green;"/>
+ </p>
+ </h:form>
+ <h2>Members</h2>
+ <h:panelGroup rendered="#{empty members}">
+ <em>No registered members.</em>
+ </h:panelGroup>
+ <h:dataTable var="_member" value="#{members}" rendered="#{not empty members}">
+ <h:column>
+ <f:facet name="header">Id</f:facet>
+ #{_member.id}
+ </h:column>
+ <h:column>
+ <f:facet name="header">Name</f:facet>
+ #{_member.name}
+ </h:column>
+ <h:column>
+ <f:facet name="header">Email</f:facet>
+ #{_member.email}
+ </h:column>
+ <h:column>
+ <f:facet name="header">Phone #</f:facet>
+ #{_member.phoneNumber}
+ </h:column>
+ <h:column>
+ <f:facet name="header">REST URL</f:facet>
+ <a href="#{request.contextPath}/rest/members/#{_member.id}">/rest/members/#{_members.id}</a>
+ </h:column>
+ <f:facet name="footer">
+ REST URL for all members: <a href="#{request.contextPath}/rest/members">/rest/members</a>
+ </f:facet>
+ </h:dataTable>
+ </ui:define>
+</ui:composition>
15 years, 9 months