You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2018/07/21 14:00:26 UTC
[isis] 03/03: ISIS-1810: recreating helloworld archetype
This is an automated email from the ASF dual-hosted git repository.
danhaywood pushed a commit to branch release-2.0.0-M1-RC1
in repository https://gitbox.apache.org/repos/asf/isis.git
commit 2b483d00ebb217846ca902f00eadf0855e6a1254
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Sat Jul 21 14:53:49 2018 +0100
ISIS-1810: recreating helloworld archetype
---
example/archetype/helloworld/pom.xml | 141 +++++----
.../appended-resources/supplemental-models.xml | 26 --
.../META-INF/maven/archetype-metadata.xml | 136 ++++----
.../resources/archetype-resources/.gitattributes | 51 ---
.../main/resources/archetype-resources/.gitignore | 41 ---
.../src/main/resources/archetype-resources/pom.xml | 348 ++++++++++-----------
.../application/isis-non-changing.properties | 4 +-
.../java/domainapp/dom/impl/HelloWorldObject.java | 32 +-
.../java/domainapp/dom/impl/HelloWorldObjects.java | 8 +-
.../src/main/java/domainapp/dom/types/Name.java | 27 ++
.../src/main/java/domainapp/dom/types/Notes.java | 28 ++
.../src/main/webapp/META-INF/context.xml | 5 +
.../src/main/webapp/WEB-INF/logging.properties | 4 +-
.../src/main/webapp/WEB-INF/web.xml | 7 +-
...lete.java => HelloWorldObject_delete_Test.java} | 2 +-
....java => HelloWorldObject_updateName_Test.java} | 2 +-
.../resources/projects/basic/archetype.properties | 2 +-
17 files changed, 403 insertions(+), 461 deletions(-)
diff --git a/example/archetype/helloworld/pom.xml b/example/archetype/helloworld/pom.xml
index cebfcba..05ed670 100644
--- a/example/archetype/helloworld/pom.xml
+++ b/example/archetype/helloworld/pom.xml
@@ -18,63 +18,96 @@
under the License.
-->
<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>
- <groupId>org.apache.isis.archetype</groupId>
- <artifactId>helloworld-archetype</artifactId>
- <version>${revision}</version>
- <packaging>maven-archetype</packaging>
- <name>helloworld-archetype</name>
- <build>
- <extensions>
- <extension>
- <groupId>org.apache.maven.archetype</groupId>
- <artifactId>archetype-packaging</artifactId>
- <version>2.2</version>
- </extension>
- </extensions>
- <pluginManagement>
- <plugins>
- <plugin>
- <artifactId>maven-archetype-plugin</artifactId>
- <version>2.2</version>
- </plugin>
- </plugins>
- </pluginManagement>
- </build>
- <description>This module defines a standard parent POM to use for various Incode applications and modules.
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.apache.isis.archetype</groupId>
+ <artifactId>helloworld-archetype</artifactId>
+ <version>2.0.0-M1</version>
+ <packaging>maven-archetype</packaging>
+ <name>helloworld-archetype</name>
+ <build>
+ <extensions>
+ <extension>
+ <groupId>org.apache.maven.archetype</groupId>
+ <artifactId>archetype-packaging</artifactId>
+ <version>3.0.1</version>
+ </extension>
+ </extensions>
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <artifactId>maven-archetype-plugin</artifactId>
+ <version>3.0.1</version>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ </build>
+ <description>This module defines a standard parent POM to use for various Incode applications and modules.
Its primary purpose is to make it easy to use a set up maven mixins (https://github.com/odavid/maven-plugins)
within child POMs. Specifically this means locking down the versions of plugins using pluginManagement.
It does NOT define any mixins for Apache Isis.</description>
- <url>https://github.com/incodehq/incode-build/helloworld</url>
- <developers>
- <developer>
- <id>danhaywood</id>
- <name>Dan Haywood</name>
- <email>dan@haywood-associates.co.uk</email>
- </developer>
- </developers>
- <licenses>
- <license>
- <name>The Apache Software License, Version 2.0</name>
- <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
- <distribution>repo</distribution>
- </license>
- </licenses>
- <scm>
- <connection>scm:git:git@github.com:incodehq/incode-build.git/helloworld</connection>
- <developerConnection>scm:git:git@github.com:incodehq/incode-build.git/helloworld</developerConnection>
- <url>git@github.com:incodehq/incode-build.git/helloworld</url>
- <tag>HEAD</tag>
+ <url>https://github.com/incodehq/incode-build/helloworld</url>
+ <developers>
+ <developer>
+ <id>danhaywood</id>
+ <name>Dan Haywood</name>
+ <email>dan@haywood-associates.co.uk</email>
+ </developer>
+ </developers>
+ <licenses>
+ <license>
+ <name>The Apache Software License, Version 2.0</name>
+ <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
+ <distribution>repo</distribution>
+ </license>
+ </licenses>
+ <scm>
+ <connection>scm:git:git@github.com:incodehq/incode-build.git/helloworld</connection>
+ <developerConnection>scm:git:git@github.com:incodehq/incode-build.git/helloworld</developerConnection>
+ <url>git@github.com:incodehq/incode-build.git/helloworld</url>
</scm>
- <parent>
- <groupId>org.apache.isis.core</groupId>
- <artifactId>isis</artifactId>
- <version>1.16.2</version>
- <relativePath>../../../core/pom.xml</relativePath>
- </parent>
- <properties>
- <revision>2.0.0-M1-SNAPSHOT</revision>
- <archetype.test.skip>true</archetype.test.skip>
- </properties>
+ <parent>
+ <groupId>org.apache</groupId>
+ <artifactId>apache</artifactId>
+ <version>18</version>
+ <relativePath/>
+ </parent>
+ <properties>
+ <archetype.test.skip>true</archetype.test.skip>
+ </properties>
+ <profiles>
+ <profile>
+ <id>gpg</id>
+ <activation>
+ <property>
+ <name>gpg.passphrase</name>
+ </property>
+ </activation>
+ <properties>
+ <gpg.useagent>false</gpg.useagent>
+ </properties>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-gpg-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>sign-release-artifacts</id>
+ <goals>
+ <goal>sign</goal>
+ </goals>
+ <configuration>
+ <gpgArguments>
+ <arg>--pinentry-mode</arg>
+ <arg>loopback</arg>
+ </gpgArguments>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
</project>
diff --git a/example/archetype/helloworld/src/main/appended-resources/supplemental-models.xml b/example/archetype/helloworld/src/main/appended-resources/supplemental-models.xml
deleted file mode 100644
index 01c58d8..0000000
--- a/example/archetype/helloworld/src/main/appended-resources/supplemental-models.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied. See the License for the
- specific language governing permissions and limitations
- under the License.
--->
-<supplementalDataModels
- xmlns="http://maven.apache.org/supplemental-model/1.0.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/supplemental-model/1.0.0
- http://maven.apache.org/xsd/supplemental-model-1.0.0.xsd">
-
-</supplementalDataModels>
diff --git a/example/archetype/helloworld/src/main/resources/META-INF/maven/archetype-metadata.xml b/example/archetype/helloworld/src/main/resources/META-INF/maven/archetype-metadata.xml
index fbec4e4..a3eedd3 100644
--- a/example/archetype/helloworld/src/main/resources/META-INF/maven/archetype-metadata.xml
+++ b/example/archetype/helloworld/src/main/resources/META-INF/maven/archetype-metadata.xml
@@ -1,80 +1,60 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied. See the License for the
- specific language governing permissions and limitations
- under the License.
--->
-<archetype-descriptor xmlns="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0" name="helloworld" xsi:schemaLocation="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0 http://maven.apache.org/xsd/archetype-descriptor-1.0.0.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <fileSets>
- <fileSet filtered="true" encoding="UTF-8">
- <directory>src/main/java</directory>
- <includes>
- <include>**/*.java</include>
- <include>**/*.xml</include>
- <include>**/*.html</include>
- <include>**/*.properties</include>
- </includes>
- </fileSet>
- <fileSet encoding="UTF-8">
- <directory>src/main/java</directory>
- <includes>
- <include>**/*.png</include>
- </includes>
- </fileSet>
- <fileSet filtered="true" encoding="UTF-8">
- <directory>src/main/webapp</directory>
- <includes>
- <include>**/*.xml</include>
- <include>**/*.html</include>
- <include>**/*.properties</include>
- </includes>
- </fileSet>
- <fileSet encoding="UTF-8">
- <directory>src/main/webapp</directory>
- <includes>
- <include>**/*.css</include>
- <include>**/*.ico</include>
- <include>**/*.gif</include>
- <include>**/*.ini</include>
- <include>**/*.md</include>
- <include>**/*.ttf</include>
- <include>**/*.png</include>
- <include>**/*.js</include>
- </includes>
- </fileSet>
- <fileSet filtered="true" encoding="UTF-8">
- <directory>src/test/java</directory>
- <includes>
- <include>**/*.java</include>
- </includes>
- </fileSet>
- <fileSet filtered="true" encoding="UTF-8">
- <directory/>
- <includes>
- <include>logging-dn-enhance.properties</include>
- </includes>
- </fileSet>
- <fileSet encoding="UTF-8">
- <directory/>
- <includes>
- <include>.gitattributes</include>
- <include>.gitignore</include>
- <include>enhance-all.sh</include>
- <include>README.adoc</include>
- </includes>
- </fileSet>
- </fileSets>
+<archetype-descriptor xsi:schemaLocation="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0 http://maven.apache.org/xsd/archetype-descriptor-1.0.0.xsd" name="helloworld"
+ xmlns="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <fileSets>
+ <fileSet filtered="true" encoding="UTF-8">
+ <directory>src/main/java</directory>
+ <includes>
+ <include>**/*.java</include>
+ <include>**/*.xml</include>
+ <include>**/*.html</include>
+ <include>**/*.properties</include>
+ </includes>
+ </fileSet>
+ <fileSet encoding="UTF-8">
+ <directory>src/main/java</directory>
+ <includes>
+ <include>**/*.png</include>
+ </includes>
+ </fileSet>
+ <fileSet filtered="true" encoding="UTF-8">
+ <directory>src/main/webapp</directory>
+ <includes>
+ <include>**/*.xml</include>
+ <include>**/*.html</include>
+ <include>**/*.properties</include>
+ </includes>
+ </fileSet>
+ <fileSet encoding="UTF-8">
+ <directory>src/main/webapp</directory>
+ <includes>
+ <include>**/*.css</include>
+ <include>**/*.ini</include>
+ <include>**/*.png</include>
+ <include>**/*.js</include>
+ </includes>
+ </fileSet>
+ <fileSet filtered="true" encoding="UTF-8">
+ <directory>src/test/java</directory>
+ <includes>
+ <include>**/*.java</include>
+ </includes>
+ </fileSet>
+ <fileSet filtered="true" encoding="UTF-8">
+ <directory></directory>
+ <includes>
+ <include>logging-dn-enhance.properties</include>
+ </includes>
+ </fileSet>
+ <fileSet encoding="UTF-8">
+ <directory></directory>
+ <includes>
+ <include>.gitattributes</include>
+ <include>.gitignore</include>
+ <include>enhance-all.sh</include>
+ <include>README.adoc</include>
+ </includes>
+ </fileSet>
+ </fileSets>
</archetype-descriptor>
diff --git a/example/archetype/helloworld/src/main/resources/archetype-resources/.gitattributes b/example/archetype/helloworld/src/main/resources/archetype-resources/.gitattributes
deleted file mode 100644
index b1eafb6..0000000
--- a/example/archetype/helloworld/src/main/resources/archetype-resources/.gitattributes
+++ /dev/null
@@ -1,51 +0,0 @@
-#
-#
-# text files are normalized (convert crlf => lf)
-# binary files are not normalized (binary is a macro for -text -diff)
-#
-#
-
-
-# Unless otherwise stated, assume text
-
-* text=auto
-
-
-*.java text diff=java
-*.html text diff=html
-*.xhtml text diff=html
-*.xml text
-*.txt text
-
-
-*.jar binary
-*.so binary
-*.dll binary
-
-# images
-*.jpg binary
-*.jpeg binary
-*.png binary
-*.pdn binary
-*.pdn binary
-
-
-*.cs text diff=csharp
-
-*.sln merge=union
-*.csproj merge=union
-*.vbproj merge=union
-*.fsproj merge=union
-*.dbproj merge=union
-
-*.doc diff=astextplain
-*.DOC diff=astextplain
-*.docx diff=astextplain
-*.DOCX diff=astextplain
-*.dot diff=astextplain
-*.DOT diff=astextplain
-*.pdf diff=astextplain
-*.PDF diff=astextplain
-*.rtf diff=astextplain
-*.RTF diff=astextplain
-
diff --git a/example/archetype/helloworld/src/main/resources/archetype-resources/.gitignore b/example/archetype/helloworld/src/main/resources/archetype-resources/.gitignore
deleted file mode 100644
index e859485..0000000
--- a/example/archetype/helloworld/src/main/resources/archetype-resources/.gitignore
+++ /dev/null
@@ -1,41 +0,0 @@
-*~
-*.swp
-*.class
-bin/
-target/
-target-ide/
-logs/
-.settings/
-.project
-.classpath
-.idea
-*.iml
-
-build/
-
-JArchitectOut/
-*.jdproj
-
-neo4j_DB/
-
-# log files
-datanucleus.log
-isis.log
-i18n-po.log
-hs_err_pid*.log
-
-# Package Files #
-*.war
-*.ear
-
-dependency-reduced-pom.xml
-pom.xml.tag
-pom.xml.next
-pom.xml.releaseBackup
-pom.xml.versionsBackup
-
-.clover/
-
-
-rebel.xml
-translations.pot
diff --git a/example/archetype/helloworld/src/main/resources/archetype-resources/pom.xml b/example/archetype/helloworld/src/main/resources/archetype-resources/pom.xml
index 4dc8011..04db3d6 100644
--- a/example/archetype/helloworld/src/main/resources/archetype-resources/pom.xml
+++ b/example/archetype/helloworld/src/main/resources/archetype-resources/pom.xml
@@ -16,184 +16,176 @@
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
---><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>
-
- <parent>
- <groupId>org.incode</groupId>
- <artifactId>incode-build</artifactId>
- <version>2</version>
- </parent>
-
- <groupId>${groupId}</groupId>
- <artifactId>${artifactId}</artifactId>
- <version>${version}</version>
-
- <name>HelloWorld</name>
-
- <packaging>war</packaging>
-
- <properties>
- <isis.version>1.16.2</isis.version>
-
- <compiler-plugin.source>1.8</compiler-plugin.source>
- <compiler-plugin.target>1.8</compiler-plugin.target>
- <compiler-plugin.compilerArgument>-parameters</compiler-plugin.compilerArgument>
-
- <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
- <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
-
- <maven-war-plugin.warName>${project.artifactId}</maven-war-plugin.warName>
- </properties>
-
- <build>
- <resources>
- <resource>
- <directory>src/main/java</directory>
- <includes>
- <include>**</include>
- </includes>
- <excludes>
- <exclude>**/*.java</exclude>
- </excludes>
- </resource>
- </resources>
- <plugins>
- <plugin>
- <groupId>com.github.odavid.maven.plugins</groupId>
- <artifactId>mixin-maven-plugin</artifactId>
- <version>0.1-alpha-39</version>
- <extensions>true</extensions>
- <configuration>
- <mixins>
- <mixin>
- <groupId>com.danhaywood.mavenmixin</groupId>
- <artifactId>standard</artifactId>
- </mixin>
- <mixin>
- <groupId>com.danhaywood.mavenmixin</groupId>
- <artifactId>datanucleusenhance</artifactId>
- </mixin>
- <mixin>
- <groupId>com.danhaywood.mavenmixin</groupId>
- <artifactId>surefire</artifactId>
- </mixin>
- <mixin>
- <groupId>com.danhaywood.mavenmixin</groupId>
- <artifactId>jettywar</artifactId>
- </mixin>
- </mixins>
- </configuration>
- </plugin>
- </plugins>
- </build>
-
- <repositories>
- <repository>
- <id>apache.snapshots</id>
- <name>Apache Snapshots</name>
- <url>https://repository.apache.org/content/repositories/snapshots/</url>
- <releases>
- <enabled>false</enabled>
- </releases>
- <snapshots>
- </snapshots>
- </repository>
- <repository>
- <id>cloudbees.estatio.snapshots</id>
- <url>http://repository-estatio.forge.cloudbees.com/snapshot/</url>
- <name>CloudBees Snapshots (and Interim Releases)</name>
- <releases>
- <updatePolicy>never</updatePolicy>
- <checksumPolicy>fail</checksumPolicy>
- </releases>
- <snapshots>
- <updatePolicy>never</updatePolicy>
- <checksumPolicy>fail</checksumPolicy>
- </snapshots>
- <layout>default</layout>
- </repository>
- <repository>
- <id>sonatype-snapshots</id>
- <url>https://oss.sonatype.org/content/repositories/snapshots</url>
- <snapshots>
- </snapshots>
- </repository>
- </repositories>
-
- <pluginRepositories>
- <pluginRepository>
- <id>cloudbees.estatio.snapshots</id>
- <name>CloudBees Snapshots (and Interim Releases)</name>
- <releases>
- <updatePolicy>never</updatePolicy>
- <checksumPolicy>fail</checksumPolicy>
- </releases>
- <url>http://repository-estatio.forge.cloudbees.com/snapshot/</url>
- <layout>default</layout>
- </pluginRepository>
- </pluginRepositories>
-
- <dependencyManagement>
- <dependencies>
- <dependency>
- <groupId>org.apache.isis.core</groupId>
- <artifactId>isis</artifactId>
- <version>${isis.version}</version>
- <type>pom</type>
- <scope>import</scope>
- </dependency>
- </dependencies>
- </dependencyManagement>
-
+-->
+<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>
+ <parent>
+ <groupId>org.incode</groupId>
+ <artifactId>incode-build</artifactId>
+ <version>7</version>
+ </parent>
+ <groupId>${groupId}</groupId>
+ <artifactId>${artifactId}</artifactId>
+ <version>${version}</version>
+ <name>Apache Isis App - HelloWorld</name>
+ <packaging>war</packaging>
+ <properties>
+ <revision>${version}</revision>
+ <isis.version>2.0.0-M1</isis.version>
+ <compiler-plugin.source>1.8</compiler-plugin.source>
+ <compiler-plugin.target>1.8</compiler-plugin.target>
+ <compiler-plugin.compilerArgument>-parameters</compiler-plugin.compilerArgument>
+ <datanucleus-core.version>5.1.6</datanucleus-core.version>
+ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+ <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+ <maven-war-plugin.warName>${project.artifactId}</maven-war-plugin.warName>
+ </properties>
+ <build>
+ <resources>
+ <resource>
+ <directory>src/main/java</directory>
+ <includes>
+ <include>**</include>
+ </includes>
+ <excludes>
+ <exclude>**/*.java</exclude>
+ </excludes>
+ </resource>
+ </resources>
+ <plugins>
+ <plugin>
+ <groupId>com.github.odavid.maven.plugins</groupId>
+ <artifactId>mixin-maven-plugin</artifactId>
+ <version>0.1-alpha-39</version>
+ <extensions>true</extensions>
+ <configuration>
+ <mixins>
+ <mixin>
+ <groupId>com.danhaywood.mavenmixin</groupId>
+ <artifactId>standard</artifactId>
+ </mixin>
+ <mixin>
+ <groupId>com.danhaywood.mavenmixin</groupId>
+ <artifactId>datanucleusenhance</artifactId>
+ </mixin>
+ <mixin>
+ <groupId>com.danhaywood.mavenmixin</groupId>
+ <artifactId>surefire</artifactId>
+ </mixin>
+ <mixin>
+ <groupId>com.danhaywood.mavenmixin</groupId>
+ <artifactId>jettywar</artifactId>
+ </mixin>
+ </mixins>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>flatten-maven-plugin</artifactId>
+ <version>1.0.0</version>
+ <configuration>
+ <updatePomFile>true</updatePomFile>
+ <pomElements>
+ <dependencyManagement>resolve</dependencyManagement>
+ <dependencies>resolve</dependencies>
+ </pomElements>
+ </configuration>
+ <executions>
+ <execution>
+ <id>flatten</id>
+ <phase>process-resources</phase>
+ <goals>
+ <goal>flatten</goal>
+ </goals>
+ </execution>
+ <execution>
+ <id>flatten.clean</id>
+ <phase>clean</phase>
+ <goals>
+ <goal>clean</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ <dependencyManagement>
<dependencies>
- <dependency>
- <groupId>org.apache.isis.core</groupId>
- <artifactId>isis-core-applib</artifactId>
- </dependency>
-
- <dependency>
- <groupId>org.apache.isis.mavendeps</groupId>
- <artifactId>isis-mavendeps-webapp</artifactId>
- <type>pom</type>
- </dependency>
- <dependency>
- <groupId>org.apache.isis.mavendeps</groupId>
- <artifactId>isis-mavendeps-testing</artifactId>
- <scope>test</scope>
- <type>pom</type>
- </dependency>
-
- <dependency>
- <groupId>org.hsqldb</groupId>
- <artifactId>hsqldb</artifactId>
- </dependency>
-
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis</artifactId>
+ <version>${isis.version}</version>
+ <type>pom</type>
+ <scope>import</scope>
+ </dependency>
</dependencies>
-
- <profiles>
- <profile>
- <id>m2e</id>
- <activation>
- <property>
- <name>m2e.version</name>
- </property>
- </activation>
- <build>
- <directory>target-ide</directory>
- <plugins>
- <!-- eclipse doesn't seem to support maven mixins config, so repeat here -->
- <plugin>
- <artifactId>maven-compiler-plugin</artifactId>
- <configuration>
- <source>${compiler-plugin.source}</source>
- <target>${compiler-plugin.target}</target>
- <compilerArgument />
- </configuration>
- </plugin>
- </plugins>
- </build>
- </profile>
- </profiles>
-
+ </dependencyManagement>
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-applib</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-plugins-codegen-bytebuddy</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-plugins-discovery-reflections</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-plugins-jdo-datanucleus-5</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-plugins-eventbus-guava</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-plugins-jaxrs-resteasy-3</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.hsqldb</groupId>
+ <artifactId>hsqldb</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.hsqldb</groupId>
+ <artifactId>hsqldb</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.isis.mavendeps</groupId>
+ <artifactId>isis-mavendeps-webapp</artifactId>
+ <type>pom</type>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.isis.mavendeps</groupId>
+ <artifactId>isis-mavendeps-testing</artifactId>
+ <scope>test</scope>
+ <type>pom</type>
+ </dependency>
+ </dependencies>
+ <profiles>
+ <profile>
+ <id>m2e</id>
+ <activation>
+ <property>
+ <name>m2e.version</name>
+ </property>
+ </activation>
+ <build>
+ <directory>target-ide</directory>
+ <plugins>
+ <plugin>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <source>${compiler-plugin.source}</source>
+ <target>${compiler-plugin.target}</target>
+ <compilerArgument/>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
</project>
diff --git a/example/archetype/helloworld/src/main/resources/archetype-resources/src/main/java/domainapp/application/isis-non-changing.properties b/example/archetype/helloworld/src/main/resources/archetype-resources/src/main/java/domainapp/application/isis-non-changing.properties
index 5cb1658..b245681 100644
--- a/example/archetype/helloworld/src/main/resources/archetype-resources/src/main/java/domainapp/application/isis-non-changing.properties
+++ b/example/archetype/helloworld/src/main/resources/archetype-resources/src/main/java/domainapp/application/isis-non-changing.properties
@@ -19,9 +19,9 @@ ${symbol_pound} specific language governing permissions and limitations
${symbol_pound} under the License.
-
+${symbol_pound} -- auto wired by plugins --
${symbol_pound}isis.services.eventbus.implementation=guava
-isis.services.eventbus.implementation=axon
+${symbol_pound}isis.services.eventbus.implementation=axon
isis.reflector.validator.allowDeprecated=false
isis.reflector.validator.noParamsOnly=true
diff --git a/example/archetype/helloworld/src/main/resources/archetype-resources/src/main/java/domainapp/dom/impl/HelloWorldObject.java b/example/archetype/helloworld/src/main/resources/archetype-resources/src/main/java/domainapp/dom/impl/HelloWorldObject.java
index 164705b..d32e75b 100644
--- a/example/archetype/helloworld/src/main/resources/archetype-resources/src/main/java/domainapp/dom/impl/HelloWorldObject.java
+++ b/example/archetype/helloworld/src/main/resources/archetype-resources/src/main/java/domainapp/dom/impl/HelloWorldObject.java
@@ -32,17 +32,15 @@ import org.apache.isis.applib.annotation.Auditing;
import org.apache.isis.applib.annotation.CommandReification;
import org.apache.isis.applib.annotation.DomainObject;
import org.apache.isis.applib.annotation.DomainObjectLayout;
-import org.apache.isis.applib.annotation.Editing;
-import org.apache.isis.applib.annotation.Parameter;
-import org.apache.isis.applib.annotation.ParameterLayout;
-import org.apache.isis.applib.annotation.Property;
import org.apache.isis.applib.annotation.Publishing;
import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.applib.annotation.Title;
import org.apache.isis.applib.services.message.MessageService;
import org.apache.isis.applib.services.repository.RepositoryService;
import org.apache.isis.applib.services.title.TitleService;
+import domainapp.dom.types.Name;
+import domainapp.dom.types.Notes;
+
@javax.jdo.annotations.PersistenceCapable(identityType = IdentityType.DATASTORE, schema = "${artifactId}" )
@javax.jdo.annotations.DatastoreIdentity(strategy = IdGeneratorStrategy.IDENTITY, column = "id")
@javax.jdo.annotations.Version(strategy= VersionStrategy.DATE_TIME, column ="version")
@@ -55,25 +53,22 @@ public class HelloWorldObject implements Comparable<HelloWorldObject> {
this.name = name;
}
- @javax.jdo.annotations.Column(allowsNull = "false", length = 40)
- @Property(editing = Editing.DISABLED)
- @Title(prepend = "Object: ")
- private String name;
+ public String title() {
+ return "Object: " + getName();
+ }
+
+ @Name private String name;
public String getName() { return name; }
public void setName(final String name) { this.name = name; }
- @javax.jdo.annotations.Column(allowsNull = "true", length = 4000)
- @Property(editing = Editing.ENABLED)
- private String notes;
+ @Notes private String notes;
public String getNotes() { return notes; }
public void setNotes(final String notes) { this.notes = notes; }
@Action(semantics = SemanticsOf.IDEMPOTENT, command = CommandReification.ENABLED, publishing = Publishing.ENABLED)
public HelloWorldObject updateName(
- @Parameter(maxLength = 40)
- @ParameterLayout(named = "Name")
- final String name) {
+ @Name final String name) {
setName(name);
return this;
}
@@ -102,17 +97,16 @@ public class HelloWorldObject implements Comparable<HelloWorldObject> {
}
- @javax.jdo.annotations.NotPersistent
@javax.inject.Inject
+ @javax.jdo.annotations.NotPersistent
RepositoryService repositoryService;
- @javax.jdo.annotations.NotPersistent
@javax.inject.Inject
+ @javax.jdo.annotations.NotPersistent
TitleService titleService;
- @javax.jdo.annotations.NotPersistent
@javax.inject.Inject
+ @javax.jdo.annotations.NotPersistent
MessageService messageService;
-
}
\ No newline at end of file
diff --git a/example/archetype/helloworld/src/main/resources/archetype-resources/src/main/java/domainapp/dom/impl/HelloWorldObjects.java b/example/archetype/helloworld/src/main/resources/archetype-resources/src/main/java/domainapp/dom/impl/HelloWorldObjects.java
index 24da58a..6fbcefc 100644
--- a/example/archetype/helloworld/src/main/resources/archetype-resources/src/main/java/domainapp/dom/impl/HelloWorldObjects.java
+++ b/example/archetype/helloworld/src/main/resources/archetype-resources/src/main/java/domainapp/dom/impl/HelloWorldObjects.java
@@ -23,7 +23,7 @@ package domainapp.dom.impl;
import java.util.List;
-import org.datanucleus.query.typesafe.TypesafeQuery;
+import javax.jdo.JDOQLTypedQuery;
import org.apache.isis.applib.annotation.Action;
import org.apache.isis.applib.annotation.DomainService;
@@ -33,7 +33,7 @@ import org.apache.isis.applib.annotation.Parameter;
import org.apache.isis.applib.annotation.ParameterLayout;
import org.apache.isis.applib.annotation.RestrictTo;
import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.applib.services.jdosupport.IsisJdoSupport;
+import org.apache.isis.applib.services.jdosupport.IsisJdoSupport_v3_2;
import org.apache.isis.applib.services.repository.RepositoryService;
@DomainService(
@@ -54,7 +54,7 @@ public class HelloWorldObjects {
@Action(semantics = SemanticsOf.SAFE)
@MemberOrder(sequence = "2")
public List<HelloWorldObject> findByName(final String name) {
- TypesafeQuery<HelloWorldObject> q = isisJdoSupport.newTypesafeQuery(HelloWorldObject.class);
+ JDOQLTypedQuery<HelloWorldObject> q = isisJdoSupport.newTypesafeQuery(HelloWorldObject.class);
final QHelloWorldObject cand = QHelloWorldObject.candidate();
q = q.filter(
cand.name.indexOf(q.stringParameter("name")).ne(-1)
@@ -73,6 +73,6 @@ public class HelloWorldObjects {
RepositoryService repositoryService;
@javax.inject.Inject
- IsisJdoSupport isisJdoSupport;
+ IsisJdoSupport_v3_2 isisJdoSupport;
}
diff --git a/example/archetype/helloworld/src/main/resources/archetype-resources/src/main/java/domainapp/dom/types/Name.java b/example/archetype/helloworld/src/main/resources/archetype-resources/src/main/java/domainapp/dom/types/Name.java
new file mode 100644
index 0000000..dcab576
--- /dev/null
+++ b/example/archetype/helloworld/src/main/resources/archetype-resources/src/main/java/domainapp/dom/types/Name.java
@@ -0,0 +1,27 @@
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+package domainapp.dom.types;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+import javax.jdo.annotations.Column;
+
+import org.apache.isis.applib.annotation.Editing;
+import org.apache.isis.applib.annotation.Parameter;
+import org.apache.isis.applib.annotation.ParameterLayout;
+import org.apache.isis.applib.annotation.Property;
+
+@Column(length = Name.MAX_LEN, allowsNull = "false")
+@Property(editing = Editing.DISABLED, maxLength = Name.MAX_LEN)
+@Parameter(maxLength = Name.MAX_LEN)
+@ParameterLayout(named = "Name")
+@Target({ ElementType.METHOD, ElementType.FIELD, ElementType.PARAMETER, ElementType.ANNOTATION_TYPE })
+@Retention(RetentionPolicy.RUNTIME)
+public @interface Name {
+
+ int MAX_LEN = 40;
+}
diff --git a/example/archetype/helloworld/src/main/resources/archetype-resources/src/main/java/domainapp/dom/types/Notes.java b/example/archetype/helloworld/src/main/resources/archetype-resources/src/main/java/domainapp/dom/types/Notes.java
new file mode 100644
index 0000000..cb07e9a
--- /dev/null
+++ b/example/archetype/helloworld/src/main/resources/archetype-resources/src/main/java/domainapp/dom/types/Notes.java
@@ -0,0 +1,28 @@
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+package domainapp.dom.types;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+import javax.jdo.annotations.Column;
+
+import org.apache.isis.applib.annotation.Editing;
+import org.apache.isis.applib.annotation.Parameter;
+import org.apache.isis.applib.annotation.ParameterLayout;
+import org.apache.isis.applib.annotation.Property;
+
+@Column(length = Notes.MAX_LEN, allowsNull = "true")
+@Property(editing = Editing.ENABLED, maxLength = Notes.MAX_LEN)
+@Parameter(maxLength = Notes.MAX_LEN)
+@ParameterLayout(named = "Notes")
+@Target({ ElementType.METHOD, ElementType.FIELD, ElementType.PARAMETER, ElementType.ANNOTATION_TYPE })
+@Retention(RetentionPolicy.RUNTIME)
+public @interface Notes {
+
+ int MAX_LEN = 4000;
+
+}
diff --git a/example/archetype/helloworld/src/main/resources/archetype-resources/src/main/webapp/META-INF/context.xml b/example/archetype/helloworld/src/main/resources/archetype-resources/src/main/webapp/META-INF/context.xml
new file mode 100644
index 0000000..563f720
--- /dev/null
+++ b/example/archetype/helloworld/src/main/resources/archetype-resources/src/main/webapp/META-INF/context.xml
@@ -0,0 +1,5 @@
+#set( $symbol_pound = '#' )
+#set( $symbol_dollar = '$' )
+#set( $symbol_escape = '\' )
+<?xml version="1.0" encoding="UTF-8"?>
+<Context path=""/>
diff --git a/example/archetype/helloworld/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/logging.properties b/example/archetype/helloworld/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/logging.properties
index c2ca289..a26a781 100644
--- a/example/archetype/helloworld/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/logging.properties
+++ b/example/archetype/helloworld/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/logging.properties
@@ -234,5 +234,5 @@ log4j.additivity.dom.simple.SimpleObject=false
${symbol_pound} ERROR to suppress the WARNings we get as of 1.15.0
-log4j.logger.org.apache.wicket.page.XmlPartialPageUpdate=ERROR,Console
-log4j.additivity.org.apache.wicket.page.XmlPartialPageUpdate=false
+log4j.logger.org.apache.wicket.page.PartialPageUpdate=ERROR,Console
+log4j.additivity.org.apache.wicket.page.PartialPageUpdate=false
diff --git a/example/archetype/helloworld/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/web.xml b/example/archetype/helloworld/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/web.xml
index ab65538..7f8568c 100644
--- a/example/archetype/helloworld/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/web.xml
+++ b/example/archetype/helloworld/src/main/resources/archetype-resources/src/main/webapp/WEB-INF/web.xml
@@ -20,9 +20,10 @@
specific language governing permissions and limitations
under the License.
-->
-<web-app id="WebApp_ID" version="2.4"
- xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
+<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://xmlns.jcp.org/xml/ns/javaee"
+ xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
+ id="WebApp_ID" version="3.1">
<display-name>Hello World</display-name>
diff --git a/example/archetype/helloworld/src/main/resources/archetype-resources/src/test/java/domainapp/dom/impl/HelloWorldObjectTest_delete.java b/example/archetype/helloworld/src/main/resources/archetype-resources/src/test/java/domainapp/dom/impl/HelloWorldObject_delete_Test.java
similarity index 98%
rename from example/archetype/helloworld/src/main/resources/archetype-resources/src/test/java/domainapp/dom/impl/HelloWorldObjectTest_delete.java
rename to example/archetype/helloworld/src/main/resources/archetype-resources/src/test/java/domainapp/dom/impl/HelloWorldObject_delete_Test.java
index da9d6f2..a4c2ea2 100644
--- a/example/archetype/helloworld/src/main/resources/archetype-resources/src/test/java/domainapp/dom/impl/HelloWorldObjectTest_delete.java
+++ b/example/archetype/helloworld/src/main/resources/archetype-resources/src/test/java/domainapp/dom/impl/HelloWorldObject_delete_Test.java
@@ -33,7 +33,7 @@ import org.apache.isis.core.unittestsupport.jmocking.JUnitRuleMockery2;
import static org.hamcrest.CoreMatchers.containsString;
-public class HelloWorldObjectTest_delete {
+public class HelloWorldObject_delete_Test {
@Rule
public JUnitRuleMockery2 context = JUnitRuleMockery2.createFor(JUnitRuleMockery2.Mode.INTERFACES_AND_CLASSES);
diff --git a/example/archetype/helloworld/src/main/resources/archetype-resources/src/test/java/domainapp/dom/impl/HelloWorldObjectTest_updateName.java b/example/archetype/helloworld/src/main/resources/archetype-resources/src/test/java/domainapp/dom/impl/HelloWorldObject_updateName_Test.java
similarity index 96%
rename from example/archetype/helloworld/src/main/resources/archetype-resources/src/test/java/domainapp/dom/impl/HelloWorldObjectTest_updateName.java
rename to example/archetype/helloworld/src/main/resources/archetype-resources/src/test/java/domainapp/dom/impl/HelloWorldObject_updateName_Test.java
index 4f5a1f2..c95f528 100644
--- a/example/archetype/helloworld/src/main/resources/archetype-resources/src/test/java/domainapp/dom/impl/HelloWorldObjectTest_updateName.java
+++ b/example/archetype/helloworld/src/main/resources/archetype-resources/src/test/java/domainapp/dom/impl/HelloWorldObject_updateName_Test.java
@@ -25,7 +25,7 @@ import org.junit.Test;
import static org.assertj.core.api.Assertions.assertThat;
-public class HelloWorldObjectTest_updateName {
+public class HelloWorldObject_updateName_Test {
@Test
public void happy_case() throws Exception {
diff --git a/example/archetype/helloworld/src/test/resources/projects/basic/archetype.properties b/example/archetype/helloworld/src/test/resources/projects/basic/archetype.properties
index e562d52..52aa686 100644
--- a/example/archetype/helloworld/src/test/resources/projects/basic/archetype.properties
+++ b/example/archetype/helloworld/src/test/resources/projects/basic/archetype.properties
@@ -1,4 +1,4 @@
-#Wed Feb 28 22:38:12 GMT 2018
+#Sat Jul 21 14:53:45 BST 2018
package=it.pkg
version=0.1-SNAPSHOT
groupId=archetype.it