diff --git a/README.md b/README.md index 597f3f78..c01636f4 100644 --- a/README.md +++ b/README.md @@ -7,8 +7,9 @@ This project is released under the [Apache License, Version 2.0](http://www.apac ## News -- 2015-10-19: SDK 2.1.1 released to Maven Central. Docs for [Community](http://docs.alfresco.com/community/concepts/alfresco-sdk-intro.html), [Enterprise](http://docs.alfresco.com/5.0/concepts/alfresco-sdk-intro.html), [Release notes](https://artifacts.alfresco.com/nexus/content/repositories/alfresco-docs/alfresco-sdk-aggregator/latest/github-report.html) -- 2015-05-20: SDK 2.1.0 released to Maven Central. Docs for [Community](http://docs.alfresco.com/community/concepts/alfresco-sdk-intro.html), [Enterprise](http://docs.alfresco.com/5.0/concepts/alfresco-sdk-intro.html), [Release notes](https://artifacts.alfresco.com/nexus/content/repositories/alfresco-docs/alfresco-sdk-aggregator/latest/github-report.html) +- 2016-02-20: SDK 2.2.0 released to Maven Central. Docs for [Community](http://docs.alfresco.com/community/concepts/alfresco-sdk-intro.html), [Enterprise](http://docs.alfresco.com/5.1/concepts/alfresco-sdk-intro.html), [Release notes](https://artifacts.alfresco.com/nexus/content/repositories/alfresco-docs/alfresco-sdk-aggregator/latest/github-report.html) +- 2015-10-19: SDK 2.1.1 released to Maven Central. Docs for [Community](http://docs.alfresco.com/community/concepts/alfresco-sdk-intro.html), [Enterprise](http://docs.alfresco.com/5.0/concepts/alfresco-sdk-intro.html) +- 2015-05-20: SDK 2.1.0 released to Maven Central. Docs for [Community](http://docs.alfresco.com/community/concepts/alfresco-sdk-intro.html), [Enterprise](http://docs.alfresco.com/5.0/concepts/alfresco-sdk-intro.html) - 2014-12-23: SDK 2.0.0 release to Maven Central. [Docs](http://docs.alfresco.com/sdk2.0/concepts/alfresco-sdk-intro.html), [Release Notes](https://artifacts.alfresco.com/nexus/content/repositories/alfresco-docs/alfresco-sdk-aggregator/archive/2.0.0/github-report.htm) - 2014-08-22: First SNAPSHOT of SDK 2.0.0 in the [OSS Sonatype Repository](https://oss.sonatype.org/content/repositories/snapshots/org/alfresco/maven/alfresco-sdk-parent/2.0.0-SNAPSHOT/)! - 2014-07: Project fully migrated from [Google Code](https://code.google.com/p/maven-alfresco-archetypes). @@ -16,20 +17,23 @@ This project is released under the [Apache License, Version 2.0](http://www.apac ## User Getting Started ### Latest Documentation -To get started with Alfresco SDK 2.1.1 (latest) visit the offical Alfresco Documentation for: +To get started with Alfresco SDK 2.2.0 (latest) visit the offical Alfresco Documentation for: -- [Alfresco Community 5.0.d and above](http://docs.alfresco.com/community/concepts/alfresco-sdk-intro.html) -- [Alfresco Enterprise 5.0.1 and above](http://docs.alfresco.com/5.0/concepts/alfresco-sdk-intro.html) +- [Alfresco Community 5.1 and above](http://docs.alfresco.com/community/concepts/alfresco-sdk-intro.html) +- [Alfresco Enterprise 5.1 and above](http://docs.alfresco.com/5.1/concepts/alfresco-sdk-intro.html) #### Previous versions Documentation -- Documentation for [Alfresco SDK 2.0](http://docs.alfresco.com/sdk2.0/concepts/alfresco-sdk-intro.html) (compatible with Alfresco 5.0.d Community and 5.0.0 Enterprise) +- Documentation for [Alfresco SDK 2.1](http://docs.alfresco.com/sdk2.1/concepts/alfresco-sdk-intro.html) (compatible with Alfresco 5.0.d Community and 5.0.1 Enterprise) +- Documentation for [Alfresco SDK 2.0](http://docs.alfresco.com/sdk2.0/concepts/alfresco-sdk-intro.html) (compatible with Alfresco 5.0.c Community and 5.0.0 Enterprise) - Documentation for [Alfresco SDK 1.1.1](http://docs.alfresco.com/4.2/concepts/dev-extensions-maven-sdk-intro.html) (compatible with Alfresco 4.2) ### Samples -Sample extension projects that use the SDK, maintained by @ohej in the [Alfresco SDK Samples project](https://github.com/Alfresco/alfresco-sdk-samples/). +Sample extension projects that use the SDK: + - [Alfresco SDK Samples for 5.1 (JARs)](https://github.com/Alfresco/alfresco-sdk-samples/tree/alfresco-51/all-in-one). + - [Alfresco SDK Samples for 5.0 (AMPs)](https://github.com/Alfresco/alfresco-sdk-samples/tree/alfresco-50/all-in-one). ### Command reference -A list of supported features and commands, explanation of Maven profiles and commands is kept in the [Alfresco Official Docs](http://docs.alfresco.com/5.0/concepts/alfresco-sdk-cmd-reference.html). +A list of supported features and commands is kept in the [Alfresco Official Docs](http://docs.alfresco.com/5.1/concepts/alfresco-sdk-cmd-reference.html). ### Want to get up to speed quickly in Eclipse? Check out this video! diff --git a/archetypes/activiti-jar-archetype/pom.xml b/archetypes/activiti-jar-archetype/pom.xml new file mode 100644 index 00000000..cdde384c --- /dev/null +++ b/archetypes/activiti-jar-archetype/pom.xml @@ -0,0 +1,62 @@ + + + 4.0.0 + + org.alfresco.maven.archetype + activiti-jar-archetype + + maven-archetype + Alfresco SDK - Activiti JAR Archetype + Sample project with full support for lifecycle and rapid development of Activiti JARs + + + org.alfresco.maven + alfresco-sdk-aggregator + 3.0.0-SNAPSHOT + ../../pom.xml + + + + + + src/main/resources + + archetype-resources/pom.xml + archetype-resources/run.sh + archetype-resources/run.bat + archetype-resources/debug.sh + archetype-resources/debug.bat + META-INF/maven/archetype-metadata.xml + + true + + + src/main/resources + + archetype-resources/pom.xml + archetype-resources/run.sh + archetype-resources/run.bat + archetype-resources/debug.sh + archetype-resources/debug.bat + META-INF/maven/archetype-metadata.xml + + false + + + + + + org.apache.maven.plugins + maven-resources-plugin + ${maven.resource.version} + + false + + @@ + + + + + + + diff --git a/archetypes/activiti-jar-archetype/src/main/resources/META-INF/maven/archetype-metadata.xml b/archetypes/activiti-jar-archetype/src/main/resources/META-INF/maven/archetype-metadata.xml new file mode 100644 index 00000000..c7cdb8c3 --- /dev/null +++ b/archetypes/activiti-jar-archetype/src/main/resources/META-INF/maven/archetype-metadata.xml @@ -0,0 +1,68 @@ + + + + + 1.0-SNAPSHOT + + + + + + src/main/java + + **/*.java + + + + src/test/java + + **/*.java + + + + src/main/resources + + **/bpmn-models/** + + + + src/main/resources + + **/bpmn-models/** + + + + src/test/resources + + log4j-dev.properties + + + + src/test/resources + + log4j-dev.properties + + + + src/test/license + + ** + + + + + + debug.sh + debug.bat + run.sh + run.bat + README.md + + + + +R \ No newline at end of file diff --git a/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/README.md b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/README.md new file mode 100644 index 00000000..b283c7cf --- /dev/null +++ b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/README.md @@ -0,0 +1,21 @@ +# Alfresco Activiti JAR Module - SDK 3 + +To run use `mvn clean install alfresco:run` or `./run.sh` and verify that it + + * Runs the embedded Tomcat + H2 DB + * Runs Activiti Explorer + * Optionally runs Activiti REST + * Packages both a JAR with customization + +# Few things to notice + + * No parent pom + * WAR assembly is handled by the Alfresco Maven Plugin configuration + * Standard JAR packaging and layout + * Works seamlessly with Eclipse and IntelliJ IDEA + * JRebel for hot reloading, JRebel maven plugin for generating rebel.xml, agent usage: `MAVEN_OPTS=-Xms256m -Xmx1G -agentpath:/home/martin/apps/jrebel/lib/libjrebel64.so` + * [Configurable Run mojo](https://github.com/Alfresco/alfresco-sdk/blob/sdk-3.0/plugins/alfresco-maven-plugin/src/main/java/org/alfresco/maven/plugin/RunMojo.java) in the `alfresco-maven-plugin` + * No unit testing/functional tests just yet + + + diff --git a/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/debug.bat b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/debug.bat new file mode 100644 index 00000000..dfd3a528 --- /dev/null +++ b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/debug.bat @@ -0,0 +1,9 @@ +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: +:: Dev environment startup script for Alfresco Community :: +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: +@echo off + +set MAVEN_OPTS=-Xms1G -Xmx2G + +mvnDebug clean install alfresco:run + diff --git a/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/debug.sh b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/debug.sh new file mode 100755 index 00000000..86defd48 --- /dev/null +++ b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/debug.sh @@ -0,0 +1,3 @@ +#!/bin/bash + +MAVEN_OPTS="-Xms1G -Xmx2G" mvnDebug clean install alfresco:run diff --git a/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/pom.xml b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/pom.xml new file mode 100644 index 00000000..e94f7ac2 --- /dev/null +++ b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/pom.xml @@ -0,0 +1,295 @@ + + + 4.0.0 + ${groupId} + ${artifactId} + ${version} + ${artifactId} Activiti Jar Module - SDK 3 + Activiti JAR Module that produces a JAR file with Java extensions such as service task delegates. It also produces an application ZIP with workflow definition, forms etc that can be deployed via /activiti-app - SDK 3 + jar + + + + @@alfresco.sdk.parent.version@@ + + UTF-8 + + + ${project.basedir}/activiti_data_dev + + + com.activiti + activiti-app + activiti-admin + + + 1.5.1 + + + 1.1.6 + + + 1.7 + 1.7 + + + + + + ${activiti.groupId} + activiti-app-logic + ${activiti.version} + + + + org.slf4j + slf4j-log4j12 + + + + + + + junit + junit + 4.11 + test + + + + + + + + + + org.apache.maven.plugins + maven-antrun-plugin + 1.3 + + + create-app-zip + package + + run + + + + + + + + + + + + + + + + + org.alfresco.maven.plugin + alfresco-maven-plugin + ${alfresco.sdk.version} + + + true + + + true + + + false + + + community + false + false + false + + + + + + ${project.groupId} + ${project.artifactId} + ${project.version} + + + + + + + + org.zeroturnaround + jrebel-maven-plugin + ${jrebel.version} + + + generate-rebel-xml + process-resources + + generate + + + + + + + all + + + + + + + + + true + + + + + org.apache.maven.plugins + maven-resources-plugin + 3.0.1 + + UTF-8 + + ftl + acp + svg + pdf + doc + docx + xls + xlsx + ppt + pptx + bin + lic + swf + zip + msg + jar + ttf + eot + woff + woff2 + css + ico + psd + js + + + + + + + + + src/main/resources + true + + + apps/** + + + + + + + src/test/resources + true + + + + src/test/license + false + + + + + + + + + alfresco-public + https://artifacts.alfresco.com/nexus/content/groups/public + + + alfresco-public-snapshots + https://artifacts.alfresco.com/nexus/content/groups/public-snapshots + + true + daily + + + + + alfresco-private-repository + https://artifacts.alfresco.com/nexus/content/groups/private + + + + + activiti-public + https://artifacts.alfresco.com/nexus/content/repositories/activiti-releases/ + + + activiti-public-snapshots + https://artifacts.alfresco.com/nexus/content/groups/public-snapshots + + true + daily + + + + + activiti-private-repository + https://artifacts.alfresco.com/nexus/content/repositories/activiti-enterprise-releases + + + + + alfresco-plugin-public + https://artifacts.alfresco.com/nexus/content/groups/public + + + alfresco-plugin-public-snapshots + https://artifacts.alfresco.com/nexus/content/groups/public-snapshots + + true + daily + + + + + diff --git a/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/run.bat b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/run.bat new file mode 100644 index 00000000..9271b1f3 --- /dev/null +++ b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/run.bat @@ -0,0 +1,8 @@ +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: +:: Dev environment startup script for Alfresco Community :: +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: +@echo off + +set MAVEN_OPTS=-Xms1G -Xmx2G + +mvn clean install alfresco:run diff --git a/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/run.sh b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/run.sh new file mode 100755 index 00000000..35150700 --- /dev/null +++ b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/run.sh @@ -0,0 +1,3 @@ +#!/bin/bash + +MAVEN_OPTS="-Xms1G -Xmx2G" mvn clean install alfresco:run diff --git a/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/main/java/tasks/service/HelloWorldServiceTask.java b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/main/java/tasks/service/HelloWorldServiceTask.java new file mode 100644 index 00000000..28e1586f --- /dev/null +++ b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/main/java/tasks/service/HelloWorldServiceTask.java @@ -0,0 +1,38 @@ +#set( $symbol_pound = '#' ) +#set( $symbol_dollar = '$' ) +#set( $symbol_escape = '\' ) +/* +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. +*/ +package ${package}.tasks.service; + +import org.activiti.engine.delegate.DelegateExecution; +import org.activiti.engine.delegate.JavaDelegate; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * A sample service task Java implementation + * + * @author martin.bergljung@alfresco.com + */ +public class HelloWorldServiceTask implements JavaDelegate { + private static Logger logger = LoggerFactory.getLogger(HelloWorldServiceTask.class); + + public void execute(DelegateExecution execution) throws Exception { + logger.debug("Hello World from the Java Service Task!"); + } +} \ No newline at end of file diff --git a/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/main/resources/apps/helloworld/Hello World.json b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/main/resources/apps/helloworld/Hello World.json new file mode 100644 index 00000000..d7e91a24 --- /dev/null +++ b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/main/resources/apps/helloworld/Hello World.json @@ -0,0 +1,20 @@ +{ + "models": [ + { + "id": 2005, + "name": "Hello World", + "version": 1, + "modelType": 0, + "description": "The Hello World business process that is part of the Alfresco SDK 3.0 Activiti JAR Module Maven archetype", + "stencilSetId": 0, + "createdByFullName": " Administrator", + "createdBy": 1, + "lastUpdatedByFullName": " Administrator", + "lastUpdatedBy": 1, + "lastUpdated": "2016-09-29T12:38:13.716+0000" + } + ], + "theme": "theme-1", + "icon": "glyphicon-cog", + "publishIdentityInfo": [] +} \ No newline at end of file diff --git a/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/main/resources/apps/helloworld/bpmn-models/Hello World-2005.bpmn20.xml b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/main/resources/apps/helloworld/bpmn-models/Hello World-2005.bpmn20.xml new file mode 100644 index 00000000..c26166d8 --- /dev/null +++ b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/main/resources/apps/helloworld/bpmn-models/Hello World-2005.bpmn20.xml @@ -0,0 +1,141 @@ +#set( $symbol_pound = '#' ) +#set( $symbol_dollar = '$' ) +#set( $symbol_escape = '\' ) + + + + The Hello World business process that is part of the Alfresco SDK 3.0 Activiti JAR Module Maven + archetype + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/main/resources/apps/helloworld/bpmn-models/Hello World-2005.json b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/main/resources/apps/helloworld/bpmn-models/Hello World-2005.json new file mode 100644 index 00000000..eb99f2eb --- /dev/null +++ b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/main/resources/apps/helloworld/bpmn-models/Hello World-2005.json @@ -0,0 +1,403 @@ +#set( $symbol_pound = '#' ) +#set( $symbol_dollar = '$' ) +#set( $symbol_escape = '\' ) +{ + "resourceId": 2005, + "properties": { + "process_id": "HelloWorld", + "name": "Hello World", + "documentation": "The Hello World business process that is part of the Alfresco SDK 3.0 Activiti JAR Module Maven archetype", + "process_author": "", + "process_version": "", + "process_namespace": "http://www.activiti.org/processdef", + "executionlisteners": "", + "eventlisteners": "", + "signaldefinitions": "", + "messagedefinitions": "", + "executionvariables": "", + "metadata": "" + }, + "stencil": { + "id": "BPMNDiagram" + }, + "childShapes": [ + { + "resourceId": "startEvent1", + "properties": { + "overrideid": "startHelloWorld", + "name": "", + "documentation": "", + "executionlisteners": "", + "initiator": "", + "formkeydefinition": "", + "formreference": { + "id": 2006, + "name": "Hello World Start", + "referenceId": 2005, + "variablesmapping": [] + }, + "fieldstovariables": "", + "formproperties": "" + }, + "stencil": { + "id": "StartNoneEvent" + }, + "childShapes": [], + "outgoing": [ + { + "resourceId": "sid-4A014247-BF0C-436D-B3CE-EA297F2A18FA" + } + ], + "bounds": { + "lowerRight": { + "x": 120, + "y": 220 + }, + "upperLeft": { + "x": 90, + "y": 190 + } + }, + "dockers": [] + }, + { + "resourceId": "sid-B4E2D526-60B7-47B9-856C-FC824DA15708", + "properties": { + "overrideid": "decideGreeting", + "name": "Decide greeting", + "documentation": "", + "asynchronousdefinition": "false", + "exclusivedefinition": "false", + "executionlisteners": "", + "multiinstance_type": "None", + "multiinstance_cardinality": "", + "multiinstance_collection": "", + "multiinstance_variable": "", + "multiinstance_condition": "", + "isforcompensation": "false", + "decisiontaskdecisiontablereference": { + "id": 2007, + "name": "Decide What Greeting", + "referenceId": 2005, + "variablesmapping": [] + } + }, + "stencil": { + "id": "DecisionTask" + }, + "childShapes": [], + "outgoing": [ + { + "resourceId": "sid-E8B736FE-874D-4EDF-85A6-8B602F1503FD" + } + ], + "bounds": { + "lowerRight": { + "x": 310, + "y": 245 + }, + "upperLeft": { + "x": 210, + "y": 165 + } + }, + "dockers": [] + }, + { + "resourceId": "sid-4A014247-BF0C-436D-B3CE-EA297F2A18FA", + "properties": { + "overrideid": "", + "name": "", + "documentation": "", + "conditionsequenceflow": "", + "executionlisteners": "", + "defaultflow": "false" + }, + "stencil": { + "id": "SequenceFlow" + }, + "childShapes": [], + "outgoing": [ + { + "resourceId": "sid-B4E2D526-60B7-47B9-856C-FC824DA15708" + } + ], + "bounds": { + "lowerRight": { + "x": 209.3515625, + "y": 205 + }, + "upperLeft": { + "x": 120.53125, + "y": 205 + } + }, + "dockers": [ + { + "x": 15, + "y": 15 + }, + { + "x": 50, + "y": 40 + } + ], + "target": { + "resourceId": "sid-B4E2D526-60B7-47B9-856C-FC824DA15708" + } + }, + { + "resourceId": "sid-68AE120D-AB55-4ED2-AFD5-845139236AD3", + "properties": { + "scriptformat": "JavaScript", + "scripttext": "print(\"Hello World from JavaScript task:\");\nvar userId = initiator;\nprint(dayGreeting + \" \" + userInfoBean.getUser(userId).getFullName());\nprint(\"You entered '\" + greeting + \"' as a greeting text.\");\n", + "executionvariables": "", + "overrideid": "", + "name": "Print Greeting from JS", + "documentation": "", + "asynchronousdefinition": "false", + "exclusivedefinition": "false", + "executionlisteners": "", + "multiinstance_type": "None", + "multiinstance_cardinality": "", + "multiinstance_collection": "", + "multiinstance_variable": "", + "multiinstance_condition": "", + "isforcompensation": "false" + }, + "stencil": { + "id": "ScriptTask" + }, + "childShapes": [], + "outgoing": [ + { + "resourceId": "sid-6105A21B-6A76-41EC-B88E-78B3BE4A826F" + } + ], + "bounds": { + "lowerRight": { + "x": 775, + "y": 245 + }, + "upperLeft": { + "x": 675, + "y": 165 + } + }, + "dockers": [] + }, + { + "resourceId": "sid-9F0B5A13-7D1F-4ADF-8A08-7B9F0D851DA6", + "properties": { + "overrideid": "endHelloWorld", + "name": "", + "documentation": "", + "executionlisteners": "" + }, + "stencil": { + "id": "EndTerminateEvent" + }, + "childShapes": [], + "outgoing": [], + "bounds": { + "lowerRight": { + "x": 943, + "y": 219 + }, + "upperLeft": { + "x": 915, + "y": 191 + } + }, + "dockers": [] + }, + { + "resourceId": "sid-6105A21B-6A76-41EC-B88E-78B3BE4A826F", + "properties": { + "overrideid": "", + "name": "", + "documentation": "", + "conditionsequenceflow": "", + "executionlisteners": "", + "defaultflow": "false" + }, + "stencil": { + "id": "SequenceFlow" + }, + "childShapes": [], + "outgoing": [ + { + "resourceId": "sid-9F0B5A13-7D1F-4ADF-8A08-7B9F0D851DA6" + } + ], + "bounds": { + "lowerRight": { + "x": 914.453125, + "y": 205 + }, + "upperLeft": { + "x": 775.40625, + "y": 205 + } + }, + "dockers": [ + { + "x": 50, + "y": 40 + }, + { + "x": 14, + "y": 14 + } + ], + "target": { + "resourceId": "sid-9F0B5A13-7D1F-4ADF-8A08-7B9F0D851DA6" + } + }, + { + "resourceId": "sid-61E86F19-FC5F-4814-B9AB-2394B03171D6", + "properties": { + "overrideid": "printGreetingFromJava", + "name": "Print Greeting From Java", + "documentation": "", + "asynchronousdefinition": "false", + "exclusivedefinition": "false", + "executionlisteners": "", + "multiinstance_type": "None", + "multiinstance_cardinality": "", + "multiinstance_collection": "", + "multiinstance_variable": "", + "multiinstance_condition": "", + "isforcompensation": "false", + "servicetaskclass": "${package}.tasks.service.HelloWorldServiceTask", + "servicetaskexpression": "", + "servicetaskdelegateexpression": "", + "servicetaskfields": "", + "servicetaskresultvariable": "", + "executionvariables": "" + }, + "stencil": { + "id": "ServiceTask" + }, + "childShapes": [], + "outgoing": [ + { + "resourceId": "sid-AD10A830-F8B1-4DBA-9C48-DFD5136E3810" + } + ], + "bounds": { + "lowerRight": { + "x": 543, + "y": 245 + }, + "upperLeft": { + "x": 443, + "y": 165 + } + }, + "dockers": [] + }, + { + "resourceId": "sid-AD10A830-F8B1-4DBA-9C48-DFD5136E3810", + "properties": { + "overrideid": "", + "name": "", + "documentation": "", + "conditionsequenceflow": "", + "executionlisteners": "", + "defaultflow": "false" + }, + "stencil": { + "id": "SequenceFlow" + }, + "childShapes": [], + "outgoing": [ + { + "resourceId": "sid-68AE120D-AB55-4ED2-AFD5-845139236AD3" + } + ], + "bounds": { + "lowerRight": { + "x": 674.15625, + "y": 205 + }, + "upperLeft": { + "x": 543.84375, + "y": 205 + } + }, + "dockers": [ + { + "x": 50, + "y": 40 + }, + { + "x": 50, + "y": 40 + } + ], + "target": { + "resourceId": "sid-68AE120D-AB55-4ED2-AFD5-845139236AD3" + } + }, + { + "resourceId": "sid-E8B736FE-874D-4EDF-85A6-8B602F1503FD", + "properties": { + "overrideid": "", + "name": "", + "documentation": "", + "conditionsequenceflow": "", + "executionlisteners": "", + "defaultflow": "false", + "showdiamondmarker": false + }, + "stencil": { + "id": "SequenceFlow" + }, + "childShapes": [], + "outgoing": [ + { + "resourceId": "sid-61E86F19-FC5F-4814-B9AB-2394B03171D6" + } + ], + "bounds": { + "lowerRight": { + "x": 443, + "y": 205 + }, + "upperLeft": { + "x": 310.59375, + "y": 205 + } + }, + "dockers": [ + { + "x": 50, + "y": 40 + }, + { + "x": 1, + "y": 40 + } + ], + "target": { + "resourceId": "sid-61E86F19-FC5F-4814-B9AB-2394B03171D6" + } + } + ], + "bounds": { + "lowerRight": { + "x": 1200, + "y": 1050 + }, + "upperLeft": { + "x": 0, + "y": 0 + } + }, + "stencilset": { + "url": "stencilsets/bpmn2.0/bpmn2.0.json", + "namespace": "http://b3mn.org/stencilset/bpmn2.0#" + }, + "ssextensions": [] +} \ No newline at end of file diff --git a/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/main/resources/apps/helloworld/bpmn-models/Hello World-2005.png b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/main/resources/apps/helloworld/bpmn-models/Hello World-2005.png new file mode 100644 index 00000000..c62691b6 Binary files /dev/null and b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/main/resources/apps/helloworld/bpmn-models/Hello World-2005.png differ diff --git a/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/main/resources/apps/helloworld/decision-table-models/Decide What Greeting-2007.json b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/main/resources/apps/helloworld/decision-table-models/Decide What Greeting-2007.json new file mode 100644 index 00000000..0dc46aaf --- /dev/null +++ b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/main/resources/apps/helloworld/decision-table-models/Decide What Greeting-2007.json @@ -0,0 +1,53 @@ +{ + "referenceId": 2005, + "name": "Decide What Greeting", + "description": "Decide, depending on time of day, what greeting to display.", + "editorJson": { + "id": 2007, + "name": "Decide What Greeting", + "key": "DecideWhatGreeting", + "description": "Decide, depending on time of day, what greeting to display.", + "hitIndicator": "FIRST", + "inputExpressions": [ + { + "id": "3", + "variableId": "timeofday", + "variableType": "formfield", + "type": "string", + "label": "Time of day", + "entries": null, + "newVariable": false + } + ], + "outputExpressions": [ + { + "id": "4", + "variableId": "dayGreeting", + "variableType": "variable", + "type": "string", + "label": "DayGreeting", + "entries": null, + "newVariable": true + } + ], + "rules": [ + { + "3": "== \"time_of_day_morning\"", + "4": "\"Good Morning!\"" + }, + { + "3": "== \"time_of_day_lunch\"", + "4": "\"Good Day!\"" + }, + { + "3": "== \"time_of_day_dinner\"", + "4": "\"Good Evening!\"" + }, + { + "3": "== \"time_of_day_night\"", + "4": "\"Good Night!\"" + } + ], + "executionVariables": [] + } +} \ No newline at end of file diff --git a/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/main/resources/apps/helloworld/decision-table-models/Decide What Greeting-2007.png b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/main/resources/apps/helloworld/decision-table-models/Decide What Greeting-2007.png new file mode 100644 index 00000000..dc9d1b52 Binary files /dev/null and b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/main/resources/apps/helloworld/decision-table-models/Decide What Greeting-2007.png differ diff --git a/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/main/resources/apps/helloworld/form-models/Hello World Start-2006.json b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/main/resources/apps/helloworld/form-models/Hello World Start-2006.json new file mode 100644 index 00000000..f860ae36 --- /dev/null +++ b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/main/resources/apps/helloworld/form-models/Hello World Start-2006.json @@ -0,0 +1,201 @@ +{ + "referenceId": 2005, + "name": "Hello World Start", + "description": "The form for the Start task in the Hello World business process.", + "editorJson": { + "tabs": [], + "fields": [ + { + "fieldType": "ContainerRepresentation", + "id": "1475149613209", + "name": "Label", + "type": "container", + "value": null, + "required": false, + "readOnly": false, + "overrideId": false, + "colspan": 1, + "placeholder": null, + "minLength": 0, + "maxLength": 0, + "minValue": null, + "maxValue": null, + "regexPattern": null, + "optionType": null, + "hasEmptyValue": null, + "options": null, + "restUrl": null, + "restResponsePath": null, + "restIdProperty": null, + "restLabelProperty": null, + "tab": null, + "className": null, + "dateDisplayFormat": null, + "layout": null, + "sizeX": 2, + "sizeY": 1, + "row": -1, + "col": -1, + "visibilityCondition": null, + "numberOfColumns": 2, + "fields": { + "1": [ + { + "fieldType": "FormFieldRepresentation", + "id": "greeting", + "name": "Greeting", + "type": "text", + "value": null, + "required": true, + "readOnly": false, + "overrideId": false, + "colspan": 1, + "placeholder": null, + "minLength": 0, + "maxLength": 0, + "minValue": null, + "maxValue": null, + "regexPattern": null, + "optionType": null, + "hasEmptyValue": null, + "options": null, + "restUrl": null, + "restResponsePath": null, + "restIdProperty": null, + "restLabelProperty": null, + "tab": null, + "className": null, + "params": { + "existingColspan": 1, + "maxColspan": 2 + }, + "dateDisplayFormat": null, + "layout": { + "row": -1, + "column": -1, + "colspan": 1 + }, + "sizeX": 1, + "sizeY": 1, + "row": -1, + "col": -1, + "visibilityCondition": null + } + ], + "2": [] + } + }, + { + "fieldType": "ContainerRepresentation", + "id": "1475149862241", + "name": "Label", + "type": "container", + "value": null, + "required": false, + "readOnly": false, + "overrideId": false, + "colspan": 1, + "placeholder": null, + "minLength": 0, + "maxLength": 0, + "minValue": null, + "maxValue": null, + "regexPattern": null, + "optionType": null, + "hasEmptyValue": null, + "options": null, + "restUrl": null, + "restResponsePath": null, + "restIdProperty": null, + "restLabelProperty": null, + "tab": null, + "className": null, + "dateDisplayFormat": null, + "layout": null, + "sizeX": 2, + "sizeY": 1, + "row": -1, + "col": -1, + "visibilityCondition": null, + "numberOfColumns": 2, + "fields": { + "1": [ + { + "fieldType": "RestFieldRepresentation", + "id": "timeofday", + "name": "Time of Day", + "type": "dropdown", + "value": "Choose one...", + "required": false, + "readOnly": false, + "overrideId": false, + "colspan": 1, + "placeholder": null, + "minLength": 0, + "maxLength": 0, + "minValue": null, + "maxValue": null, + "regexPattern": null, + "optionType": null, + "hasEmptyValue": true, + "options": [ + { + "id": "empty", + "name": "Choose one..." + }, + { + "id": "time_of_day_morning", + "name": "Morning" + }, + { + "id": "time_of_day_lunch", + "name": "Lunch" + }, + { + "id": "time_of_day_dinner", + "name": "Dinner" + }, + { + "id": "time_of_day_night", + "name": "Night" + } + ], + "restUrl": null, + "restResponsePath": null, + "restIdProperty": null, + "restLabelProperty": null, + "tab": null, + "className": null, + "params": { + "existingColspan": 1, + "maxColspan": 2 + }, + "dateDisplayFormat": null, + "layout": { + "row": -1, + "column": -1, + "colspan": 1 + }, + "sizeX": 1, + "sizeY": 1, + "row": -1, + "col": -1, + "visibilityCondition": null, + "endpoint": null, + "requestHeaders": null + } + ], + "2": [] + } + } + ], + "outcomes": [], + "javascriptEvents": [], + "className": "", + "style": "", + "customFieldTemplates": {}, + "metadata": {}, + "variables": [], + "gridsterForm": false + } +} \ No newline at end of file diff --git a/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/main/resources/apps/helloworld/form-models/Hello World Start-2006.png b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/main/resources/apps/helloworld/form-models/Hello World Start-2006.png new file mode 100644 index 00000000..50f8560f Binary files /dev/null and b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/main/resources/apps/helloworld/form-models/Hello World Start-2006.png differ diff --git a/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/test/license/README.md b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/test/license/README.md new file mode 100644 index 00000000..e986999c --- /dev/null +++ b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/test/license/README.md @@ -0,0 +1,9 @@ +# Enterprise License location + +Put the Activiti Enterprise license file (activiti.lic) in this directory. +It will then be copied into the WAR.............. + +And then not be part of any other classpaths. + + + diff --git a/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/test/resources/activiti-app.properties b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/test/resources/activiti-app.properties new file mode 100644 index 00000000..c0c5b8f1 --- /dev/null +++ b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/test/resources/activiti-app.properties @@ -0,0 +1,35 @@ +server.onpremise=true +server.stencil.custom.allowed=true +server.contextroot=/activiti-app + +# Database connection +datasource.driver=org.h2.Driver +datasource.url=jdbc:h2:${activiti.datadir}/h2/activiti;AUTO_SERVER=TRUE;DB_CLOSE_ON_EXIT=FALSE;LOCK_TIMEOUT=10000;MVCC=FALSE;LOCK_MODE=0 +datasource.username=alfresco +datasource.password=alfresco +hibernate.dialect=org.hibernate.dialect.H2Dialect + +# Elastic Search server config for historical process data +elastic-search.server.type=none +elastic-search.cluster.name=activiti-elastic-search-cluster-dev +elastic-search.enable.http=true +elastic-search.data.path=${activiti.datadir}/es + +event.generation.enabled=true +event.processing.enabled=true + +# Administrator login username = email +admin.email=admin@app.activiti.com +# koala +admin.passwordHash=4efe081594ce25ee4efd9f7067f7f678a347bccf2de201f3adf2a3eb544850b465b4e51cdc3fcdde +admin.lastname=Administrator +admin.group=Superusers + +# Where to store any uploaded files +contentstorage.fs.rootFolder=${activiti.datadir}/contentstore +contentstorage.fs.createRoot=true +contentstorage.fs.depth=4 +contentstorage.fs.blockSize=1024 + +# Disable Cross-Site-Request-Forgery (CSRF) protection, so we can access from other client app via REST +security.csrf.disabled=true \ No newline at end of file diff --git a/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/test/resources/activiti-ldap.properties b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/test/resources/activiti-ldap.properties new file mode 100644 index 00000000..363205b3 --- /dev/null +++ b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/test/resources/activiti-ldap.properties @@ -0,0 +1,3 @@ +ldap.authentication.enabled=false +ldap.synchronization.full.enabled=false +ldap.synchronization.differential.enabled=false \ No newline at end of file diff --git a/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/test/resources/log4j-dev.properties b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/test/resources/log4j-dev.properties new file mode 100644 index 00000000..690a617f --- /dev/null +++ b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/test/resources/log4j-dev.properties @@ -0,0 +1,40 @@ +#set( $symbol_pound = '#' ) +#set( $symbol_dollar = '$' ) +#set( $symbol_escape = '\' ) + +# This file is copied (with RunMojo) into target/activitiApp-war/WEB-INF/classes dir before webapp deployment +# + +log4j.rootLogger=INFO, CA, File + +# ConsoleAppender +log4j.appender.CA=org.apache.log4j.ConsoleAppender +log4j.appender.CA.layout=org.apache.log4j.PatternLayout +log4j.appender.CA.layout.ConversionPattern= %d{hh:mm:ss,SSS} [%t] %-5p %c %x - %m%n + +# File Appender +log4j.appender.File=org.apache.log4j.RollingFileAppender +log4j.appender.File.File=${project.build.directory}/activiti.log +log4j.appender.File.threshold=INFO +log4j.appender.File.layout=org.apache.log4j.PatternLayout +log4j.appender.File.layout.ConversionPattern=%d{ISO8601} %-5p [%c] %m%n +log4j.appender.File.MaxFileSize=100MB +log4j.appender.File.MaxBackupIndex=1 + +# Custom tweaks +log4j.logger.org.apache.ibatis.level=INFO +log4j.logger.javax.activation.level=INFO +log4j.logger.com.codahale.metrics=WARN +log4j.logger.com.ryantenney=WARN +log4j.logger.com.zaxxer=WARN +log4j.logger.org.apache=WARN +log4j.logger.org.hibernate=WARN +log4j.logger.org.hibernate.engine.internal=WARN +log4j.logger.org.hibernate.validator=WARN +log4j.logger.org.springframework=WARN +log4j.logger.org.springframework.web=WARN +log4j.logger.org.springframework.security=WARN + + +# Custom classes logging +log4j.logger.${package}.tasks.service=DEBUG diff --git a/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/test/resources/log4j-test.properties b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/test/resources/log4j-test.properties new file mode 100644 index 00000000..ffebc8a9 --- /dev/null +++ b/archetypes/activiti-jar-archetype/src/main/resources/archetype-resources/src/test/resources/log4j-test.properties @@ -0,0 +1,6 @@ +log4j.rootLogger=WARN, CA + +# ConsoleAppender +log4j.appender.CA=org.apache.log4j.ConsoleAppender +log4j.appender.CA.layout=org.apache.log4j.PatternLayout +log4j.appender.CA.layout.ConversionPattern= %d{hh:mm:ss,SSS} [%t] %-5p %c %x - %m%n \ No newline at end of file diff --git a/archetypes/alfresco-platform-jar-archetype/src/test/resources/projects/run-enterprise/archetype.properties b/archetypes/activiti-jar-archetype/src/test/resources/projects/basic/archetype.properties similarity index 61% rename from archetypes/alfresco-platform-jar-archetype/src/test/resources/projects/run-enterprise/archetype.properties rename to archetypes/activiti-jar-archetype/src/test/resources/projects/basic/archetype.properties index 190010f3..ef2a2f9c 100644 --- a/archetypes/alfresco-platform-jar-archetype/src/test/resources/projects/run-enterprise/archetype.properties +++ b/archetypes/activiti-jar-archetype/src/test/resources/projects/basic/archetype.properties @@ -1,4 +1,5 @@ version=0.1-SNAPSHOT groupId=archetype.it -artifactId=repoAmpTestRunEnterprise +artifactId=activitiJARTest package=it.pkg + diff --git a/archetypes/activiti-jar-archetype/src/test/resources/projects/basic/goal.txt b/archetypes/activiti-jar-archetype/src/test/resources/projects/basic/goal.txt new file mode 100644 index 00000000..0b598736 --- /dev/null +++ b/archetypes/activiti-jar-archetype/src/test/resources/projects/basic/goal.txt @@ -0,0 +1 @@ +verify diff --git a/archetypes/activiti-jar-archetype/src/test/resources/projects/run-basic/archetype.properties b/archetypes/activiti-jar-archetype/src/test/resources/projects/run-basic/archetype.properties new file mode 100644 index 00000000..11281816 --- /dev/null +++ b/archetypes/activiti-jar-archetype/src/test/resources/projects/run-basic/archetype.properties @@ -0,0 +1,4 @@ +version=0.1-SNAPSHOT +groupId=archetype.it +artifactId=activitiJARTestRun +package=it.pkg \ No newline at end of file diff --git a/archetypes/activiti-jar-archetype/src/test/resources/projects/run-basic/goal.txt b/archetypes/activiti-jar-archetype/src/test/resources/projects/run-basic/goal.txt new file mode 100644 index 00000000..d6779d32 --- /dev/null +++ b/archetypes/activiti-jar-archetype/src/test/resources/projects/run-basic/goal.txt @@ -0,0 +1 @@ +verify alfresco:run -Dmaven.tomcat.fork=true diff --git a/archetypes/alfresco-allinone-archetype/pom.xml b/archetypes/alfresco-allinone-archetype/pom.xml index dc1d7619..7a72870e 100644 --- a/archetypes/alfresco-allinone-archetype/pom.xml +++ b/archetypes/alfresco-allinone-archetype/pom.xml @@ -5,8 +5,8 @@ org.alfresco.maven.archetype alfresco-allinone-archetype maven-archetype - Maven Alfresco SDK - All-in-One Archetype - Sample multi-module project for All-in-One development on the Alfresco plaftorm. Includes modules for: Repository WAR overlay, Repository AMP, Share WAR overlay, Solr configuration, and embedded Tomcat runner + Alfresco SDK - All-in-One Archetype + Sample multi-module project for All-in-One development on the Alfresco plaftorm. Includes modules for Platform/Repository JAR and Share JAR org.alfresco.maven @@ -23,7 +23,8 @@ archetype-resources/pom.xml archetype-resources/run.sh archetype-resources/run.bat - archetype-resources/runner/src/main/webapp/index.html + archetype-resources/debug.sh + archetype-resources/debug.bat META-INF/maven/archetype-metadata.xml true @@ -34,7 +35,8 @@ archetype-resources/pom.xml archetype-resources/run.sh archetype-resources/run.bat - archetype-resources/runner/src/main/webapp/index.html + archetype-resources/debug.sh + archetype-resources/debug.bat META-INF/maven/archetype-metadata.xml false @@ -43,8 +45,9 @@ + org.apache.maven.plugins maven-resources-plugin - 2.7 + ${maven.resource.version} false diff --git a/archetypes/alfresco-allinone-archetype/src/test/resources/projects/it/goal.txt b/archetypes/alfresco-allinone-archetype/src/test/resources/projects/it/goal.txt index 0b598736..7c32f559 100644 --- a/archetypes/alfresco-allinone-archetype/src/test/resources/projects/it/goal.txt +++ b/archetypes/alfresco-allinone-archetype/src/test/resources/projects/it/goal.txt @@ -1 +1 @@ -verify +install diff --git a/archetypes/alfresco-allinone-archetype/src/test/resources/projects/run-enterprise/archetype.properties b/archetypes/alfresco-allinone-archetype/src/test/resources/projects/run-enterprise/archetype.properties deleted file mode 100644 index 1905d902..00000000 --- a/archetypes/alfresco-allinone-archetype/src/test/resources/projects/run-enterprise/archetype.properties +++ /dev/null @@ -1,5 +0,0 @@ -version=0.1-SNAPSHOT -groupId=archetype.it -artifactId=allInOneTestRunEnterprise -package=it.pkg - diff --git a/archetypes/alfresco-allinone-archetype/src/test/resources/projects/run-enterprise/goal.txt b/archetypes/alfresco-allinone-archetype/src/test/resources/projects/run-enterprise/goal.txt deleted file mode 100644 index 707e42e0..00000000 --- a/archetypes/alfresco-allinone-archetype/src/test/resources/projects/run-enterprise/goal.txt +++ /dev/null @@ -1 +0,0 @@ -verify -Prun -Penterprise -Dmaven.tomcat.fork=true diff --git a/archetypes/alfresco-allinone-archetype/src/test/resources/projects/run/goal.txt b/archetypes/alfresco-allinone-archetype/src/test/resources/projects/run/goal.txt index 5ce9626e..baecc613 100644 --- a/archetypes/alfresco-allinone-archetype/src/test/resources/projects/run/goal.txt +++ b/archetypes/alfresco-allinone-archetype/src/test/resources/projects/run/goal.txt @@ -1 +1 @@ -verify -Prun -Dmaven.tomcat.fork=true +install alfresco:run -Dmaven.tomcat.fork=true diff --git a/archetypes/alfresco-platform-jar-archetype/pom.xml b/archetypes/alfresco-platform-jar-archetype/pom.xml index 9e5c0b06..252090e2 100644 --- a/archetypes/alfresco-platform-jar-archetype/pom.xml +++ b/archetypes/alfresco-platform-jar-archetype/pom.xml @@ -3,11 +3,11 @@ 4.0.0 org.alfresco.maven.archetype - alfresco-amp-archetype + alfresco-platform-jar-archetype maven-archetype - Maven Alfresco SDK - Repository AMP Archetype - Sample project with full support for lifecycle and rapid development of Repository AMPs (Alfresco Module Packages) + Alfresco SDK - Platform JAR Archetype + Sample project with full support for lifecycle and rapid development of Platform/Repository JARs and AMPs (Alfresco Module Packages) org.alfresco.maven @@ -24,6 +24,8 @@ archetype-resources/pom.xml archetype-resources/run.sh archetype-resources/run.bat + archetype-resources/debug.sh + archetype-resources/debug.bat META-INF/maven/archetype-metadata.xml true @@ -34,15 +36,19 @@ archetype-resources/pom.xml archetype-resources/run.sh archetype-resources/run.bat + archetype-resources/debug.sh + archetype-resources/debug.bat META-INF/maven/archetype-metadata.xml false + + org.apache.maven.plugins maven-resources-plugin - 2.7 + ${maven.resource.version} false diff --git a/archetypes/alfresco-platform-jar-archetype/src/test/resources/projects/basic/archetype.properties b/archetypes/alfresco-platform-jar-archetype/src/test/resources/projects/basic/archetype.properties index 8651fd9d..cb8081ab 100644 --- a/archetypes/alfresco-platform-jar-archetype/src/test/resources/projects/basic/archetype.properties +++ b/archetypes/alfresco-platform-jar-archetype/src/test/resources/projects/basic/archetype.properties @@ -1,5 +1,5 @@ version=0.1-SNAPSHOT groupId=archetype.it -artifactId=repoAmpTest +artifactId=repoJarTest package=it.pkg diff --git a/archetypes/alfresco-platform-jar-archetype/src/test/resources/projects/run-basic/archetype.properties b/archetypes/alfresco-platform-jar-archetype/src/test/resources/projects/run-basic/archetype.properties index 254fcf56..c036bf1c 100644 --- a/archetypes/alfresco-platform-jar-archetype/src/test/resources/projects/run-basic/archetype.properties +++ b/archetypes/alfresco-platform-jar-archetype/src/test/resources/projects/run-basic/archetype.properties @@ -1,4 +1,4 @@ version=0.1-SNAPSHOT groupId=archetype.it -artifactId=repoAmpTestRun +artifactId=repoJarTestRun package=it.pkg \ No newline at end of file diff --git a/archetypes/alfresco-platform-jar-archetype/src/test/resources/projects/run-basic/goal.txt b/archetypes/alfresco-platform-jar-archetype/src/test/resources/projects/run-basic/goal.txt index fb8d393c..d6779d32 100644 --- a/archetypes/alfresco-platform-jar-archetype/src/test/resources/projects/run-basic/goal.txt +++ b/archetypes/alfresco-platform-jar-archetype/src/test/resources/projects/run-basic/goal.txt @@ -1 +1 @@ -verify -Pamp-to-war -Dmaven.tomcat.fork=true +verify alfresco:run -Dmaven.tomcat.fork=true diff --git a/archetypes/alfresco-platform-jar-archetype/src/test/resources/projects/run-enterprise/goal.txt b/archetypes/alfresco-platform-jar-archetype/src/test/resources/projects/run-enterprise/goal.txt deleted file mode 100644 index 60b24860..00000000 --- a/archetypes/alfresco-platform-jar-archetype/src/test/resources/projects/run-enterprise/goal.txt +++ /dev/null @@ -1 +0,0 @@ -verify -Pamp-to-war -Penterprise -Dmaven.tomcat.fork=true diff --git a/archetypes/alfresco-share-jar-archetype/pom.xml b/archetypes/alfresco-share-jar-archetype/pom.xml index c6c8cc15..1127c735 100644 --- a/archetypes/alfresco-share-jar-archetype/pom.xml +++ b/archetypes/alfresco-share-jar-archetype/pom.xml @@ -3,11 +3,11 @@ 4.0.0 org.alfresco.maven.archetype - share-amp-archetype + alfresco-share-jar-archetype maven-archetype - Maven Alfresco SDK - Share AMP Archetype - Share project with full support for lifecycle and rapid development of AMPs (Alfresco Module + Alfresco SDK - Share JAR Archetype + Share project with full support for lifecycle and rapid development of JARs and AMPs (Alfresco Module Packages) @@ -26,6 +26,8 @@ archetype-resources/pom.xml archetype-resources/run.sh archetype-resources/run.bat + archetype-resources/debug.sh + archetype-resources/debug.bat META-INF/maven/archetype-metadata.xml true @@ -36,6 +38,8 @@ archetype-resources/pom.xml archetype-resources/run.sh archetype-resources/run.bat + archetype-resources/debug.sh + archetype-resources/debug.bat META-INF/maven/archetype-metadata.xml false @@ -44,8 +48,9 @@ + org.apache.maven.plugins maven-resources-plugin - 2.7 + ${maven.resource.version} false diff --git a/archetypes/alfresco-share-jar-archetype/src/test/resources/projects/basic/archetype.properties b/archetypes/alfresco-share-jar-archetype/src/test/resources/projects/basic/archetype.properties index 6cebf61d..4150cfc7 100644 --- a/archetypes/alfresco-share-jar-archetype/src/test/resources/projects/basic/archetype.properties +++ b/archetypes/alfresco-share-jar-archetype/src/test/resources/projects/basic/archetype.properties @@ -1,4 +1,4 @@ version=0.1-SNAPSHOT groupId=archetype.it -artifactId=shareAmpTest +artifactId=shareJarTest package=it.pkg diff --git a/archetypes/alfresco-share-jar-archetype/src/test/resources/projects/run-basic/archetype.properties b/archetypes/alfresco-share-jar-archetype/src/test/resources/projects/run-basic/archetype.properties index a54484af..d392de37 100644 --- a/archetypes/alfresco-share-jar-archetype/src/test/resources/projects/run-basic/archetype.properties +++ b/archetypes/alfresco-share-jar-archetype/src/test/resources/projects/run-basic/archetype.properties @@ -1,4 +1,4 @@ version=0.1-SNAPSHOT groupId=archetype.it -artifactId=shareAmpTestRun +artifactId=shareJarTestRun package=it.pkg diff --git a/archetypes/alfresco-share-jar-archetype/src/test/resources/projects/run-basic/goal.txt b/archetypes/alfresco-share-jar-archetype/src/test/resources/projects/run-basic/goal.txt index fb8d393c..d6779d32 100644 --- a/archetypes/alfresco-share-jar-archetype/src/test/resources/projects/run-basic/goal.txt +++ b/archetypes/alfresco-share-jar-archetype/src/test/resources/projects/run-basic/goal.txt @@ -1 +1 @@ -verify -Pamp-to-war -Dmaven.tomcat.fork=true +verify alfresco:run -Dmaven.tomcat.fork=true diff --git a/archetypes/alfresco-share-jar-archetype/src/test/resources/projects/run-enterprise/archetype.properties b/archetypes/alfresco-share-jar-archetype/src/test/resources/projects/run-enterprise/archetype.properties deleted file mode 100644 index 1d02ea6e..00000000 --- a/archetypes/alfresco-share-jar-archetype/src/test/resources/projects/run-enterprise/archetype.properties +++ /dev/null @@ -1,4 +0,0 @@ -version=0.1-SNAPSHOT -groupId=archetype.it -artifactId=shareAmpTestRunEnterprise -package=it.pkg diff --git a/archetypes/alfresco-share-jar-archetype/src/test/resources/projects/run-enterprise/goal.txt b/archetypes/alfresco-share-jar-archetype/src/test/resources/projects/run-enterprise/goal.txt deleted file mode 100644 index 60b24860..00000000 --- a/archetypes/alfresco-share-jar-archetype/src/test/resources/projects/run-enterprise/goal.txt +++ /dev/null @@ -1 +0,0 @@ -verify -Pamp-to-war -Penterprise -Dmaven.tomcat.fork=true diff --git a/plugins/alfresco-maven-plugin/pom.xml b/plugins/alfresco-maven-plugin/pom.xml index fc70a4d8..ec4a35e5 100644 --- a/plugins/alfresco-maven-plugin/pom.xml +++ b/plugins/alfresco-maven-plugin/pom.xml @@ -139,7 +139,6 @@ org.zeroturnaround zt-zip 1.9 - jar diff --git a/plugins/alfresco-maven-plugin/src/main/java/org/alfresco/maven/plugin/RunMojo.java b/plugins/alfresco-maven-plugin/src/main/java/org/alfresco/maven/plugin/RunMojo.java index 6455272d..bc89c6db 100644 --- a/plugins/alfresco-maven-plugin/src/main/java/org/alfresco/maven/plugin/RunMojo.java +++ b/plugins/alfresco-maven-plugin/src/main/java/org/alfresco/maven/plugin/RunMojo.java @@ -34,7 +34,7 @@ import org.apache.maven.plugins.annotations.ResolutionScope; import org.apache.maven.project.MavenProject; import org.zeroturnaround.zip.ZipUtil; -import java.io.File; +import java.io.*; import java.util.*; import static org.twdata.maven.mojoexecutor.MojoExecutor.*; @@ -61,6 +61,7 @@ public class RunMojo extends AbstractMojo { public static final String PLATFORM_WAR_PREFIX_NAME = "platform"; public static final String SHARE_WAR_PREFIX_NAME = "share"; + public static final String ACTIVITI_APP_WAR_PREFIX_NAME = "activitiApp"; public static final String ALFRESCO_ENTERPRISE_EDITION = "enterprise"; public static final String ALFRESCO_COMMUNITY_EDITION = "community"; @@ -153,6 +154,26 @@ public class RunMojo extends AbstractMojo { @Parameter(property = "maven.alfresco.enableApiExplorer", defaultValue = "false") protected boolean enableApiExplorer; + /** + * Switch to enable/disable Alfresco Activiti Workflow Engine (activiti-app.war) when running embedded Tomcat. + * This contains the Alfresco Activiti webapp, including the workflow engine. + * This webapp is also the user interface for people involved in the task and processes + * running in the Activiti engine. + * You also use this webapp to create and manage process definitions, and to display and define analytics + * reports on users' tasks and processes. + */ + @Parameter(property = "maven.alfresco.enableActivitiApp", defaultValue = "false") + protected boolean enableActivitiApp; + + /** + * Switch to enable/disable Alfresco Activiti Admin (activiti-admin.war) when running embedded Tomcat. + * This contains the Alfresco Activiti Administrator webapp. You use this to administer and monitor your + * Alfresco Activiti engines. + * + */ + @Parameter(property = "maven.alfresco.enableActivitiAdmin", defaultValue = "false") + protected boolean enableActivitiAdmin; + /** * Switch to enable/disable test properties when running embedded Tomcat. */ @@ -189,6 +210,12 @@ public class RunMojo extends AbstractMojo { @Parameter(property = "maven.alfresco.share.modules", defaultValue = "") protected List shareModules; + /** + * JARs that should be overlayed/applied to the Activiti App WAR (i.e. activiti-app.war) + */ + @Parameter(property = "maven.activiti.modules", defaultValue = "") + protected List activitiModules; + /** * Community Edition or Enterprise Edition? (i.e community or enterprise) */ @@ -209,6 +236,9 @@ public class RunMojo extends AbstractMojo { @Parameter(property = "alfresco.groupId", defaultValue = "org.alfresco") protected String alfrescoGroupId; + @Parameter(property = "activiti.groupId", defaultValue = "com.activiti") + protected String activitiGroupId; + @Parameter(property = "alfresco.platform.war.artifactId", defaultValue = "alfresco-platform") protected String alfrescoPlatformWarArtifactId; @@ -221,6 +251,12 @@ public class RunMojo extends AbstractMojo { @Parameter(property = "alfresco.api.explorer.artifactId", defaultValue = "api-explorer") protected String alfrescoApiExplorerArtifactId; + @Parameter(property = "activiti.app.war.artifactId", defaultValue = "activiti-app") + protected String activitiAppWarArtifactId; + + @Parameter(property = "activiti.admin.war.artifactId", defaultValue = "activiti-admin") + protected String activitiAdminWarArtifactId; + @Parameter(property = "alfresco.platform.version", defaultValue = "5.2.a-EA") protected String alfrescoPlatformVersion; @@ -230,6 +266,9 @@ public class RunMojo extends AbstractMojo { @Parameter(property = "alfresco.api.explorer.version", defaultValue = "1.2") protected String alfrescoApiExplorerVersion; + @Parameter(property = "activiti.version", defaultValue = "1.5.1") + protected String activitiVersion; + /** * Directory that contains the Alfresco Solr 4 configuration */ @@ -237,7 +276,7 @@ public class RunMojo extends AbstractMojo { protected String solrHome; /** - * Maven GAV properties for customized alfresco.war and share.war + * Maven GAV properties for customized alfresco.war, share.war, activiti-app.war * Used by the Maven Tomcat 7 Plugin */ private String runnerAlfrescoGroupId; @@ -245,6 +284,9 @@ public class RunMojo extends AbstractMojo { private String runnerAlfrescoShareWarArtifactId; private String runnerAlfrescoPlatformVersion; private String runnerAlfrescoShareVersion; + private String runnerActivitiAppGroupId; + private String runnerActivitiAppWarArtifactId; + private String runnerActivitiAppVersion; /** * The Maven environment that this mojo is executed in @@ -265,7 +307,7 @@ public class RunMojo extends AbstractMojo { installSolr10InLocalRepo(); } - if (enableTestProperties) { + if (enableTestProperties && enablePlatform) { copyAlfrescoGlobalProperties(); renameAlfrescoGlobalProperties(); } @@ -278,6 +320,10 @@ public class RunMojo extends AbstractMojo { buildShareWar(); } + if (enableActivitiApp) { + buildActivitiAppWar(); + } + if (startTomcat) { checkDatabaseConfig(); startTomcat(); @@ -562,6 +608,40 @@ public class RunMojo extends AbstractMojo { ); } + /** + * Copy the Activiti Log4J Dev config into the activiti-app/WEB-INF/classes dir. + * + * @throws MojoExecutionException + */ + protected void copyActivitiLog4JDevConfig() throws MojoExecutionException { + final String warOutputDir = getWarOutputDir(ACTIVITI_APP_WAR_PREFIX_NAME); + final String logConfDestDir = warOutputDir + "/WEB-INF/classes"; + + getLog().info("Copying Activiti log4j-dev.properties to: " + logConfDestDir); + + executeMojo( + plugin( + groupId("org.apache.maven.plugins"), + artifactId("maven-resources-plugin"), + version(MAVEN_RESOURCE_PLUGIN_VERSION) + ), + goal("copy-resources"), + configuration( + element(name("outputDirectory"), logConfDestDir), + element(name("resources"), + element(name("resource"), + element(name("directory"), "src/test/resources"), + element(name("includes"), + element(name("include"), "log4j-dev.properties") + ), + element(name("filtering"), "true") + ) + ) + ), + execEnv + ); + } + /** * Build the customized Platform webapp (i.e. the Repository, alfresco.war) * that should be deployed by Tomcat by applying all AMPs and JARs from @@ -569,7 +649,7 @@ public class RunMojo extends AbstractMojo { */ protected void buildPlatformWar() throws MojoExecutionException { buildCustomWarInDir(PLATFORM_WAR_PREFIX_NAME, platformModules, - getPlatformWarArtifactId(), alfrescoPlatformVersion); + alfrescoGroupId, getPlatformWarArtifactId(), alfrescoPlatformVersion); commentOutSecureCommsInPlatformWebXml(); copyAlfrescoLicense(); @@ -588,7 +668,8 @@ public class RunMojo extends AbstractMojo { * the {@code } configuration. */ protected void buildShareWar() throws MojoExecutionException { - buildCustomWarInDir(SHARE_WAR_PREFIX_NAME, shareModules, alfrescoShareWarArtifactId, alfrescoShareVersion); + buildCustomWarInDir(SHARE_WAR_PREFIX_NAME, shareModules, + alfrescoGroupId, alfrescoShareWarArtifactId, alfrescoShareVersion); String shareWarArtifactId = packageAndInstallCustomWar(SHARE_WAR_PREFIX_NAME); @@ -598,18 +679,39 @@ public class RunMojo extends AbstractMojo { runnerAlfrescoShareVersion = "${project.version}"; } + /** + * Build the customized Activiti App webapp (i.e. the activiti-app.war) + * that should be deployed by Tomcat by applying all JARs from + * the {@code } configuration. + */ + protected void buildActivitiAppWar() throws MojoExecutionException { + buildCustomWarInDir(ACTIVITI_APP_WAR_PREFIX_NAME, activitiModules, + activitiGroupId, activitiAppWarArtifactId, activitiVersion); + + copyActivitiLog4JDevConfig(); + + String activitiAppWarArtifactId = packageAndInstallCustomWar(ACTIVITI_APP_WAR_PREFIX_NAME); + + // Set up the custom share war to be run by Tomcat plugin + runnerActivitiAppGroupId = "${project.groupId}"; + runnerActivitiAppWarArtifactId = activitiAppWarArtifactId; + runnerActivitiAppVersion = "${project.version}"; + } + /** * Build a customized webapp in a directory, - * applying a number of AMPs and JARs from alfresco maven plugin configuration. + * applying a number of AMPs and/or JARs from alfresco maven plugin configuration. * * @param warName the name of the custom war * @param modules the modules that should be applied to the custom war - * @param originalWarArtifactId the artifactId for the original war file that should be customized - * @param originalWarVersion the version for the original war file that should be customized + * @param originalWarGroupId the Maven groupId for the original war file that should be customized + * @param originalWarArtifactId the Maven artifactId for the original war file that should be customized + * @param originalWarVersion the Maven version for the original war file that should be customized * @throws MojoExecutionException */ protected void buildCustomWarInDir(String warName, List modules, + String originalWarGroupId, String originalWarArtifactId, String originalWarVersion) throws MojoExecutionException { final String warOutputDir = getWarOutputDir(warName); @@ -666,7 +768,7 @@ public class RunMojo extends AbstractMojo { element(name("outputDirectory"), warOutputDir), element(name("artifactItems"), element(name("artifactItem"), - element(name("groupId"), alfrescoGroupId), + element(name("groupId"), originalWarGroupId), element(name("artifactId"), originalWarArtifactId), element(name("version"), originalWarVersion), element(name("type"), "war") @@ -767,23 +869,26 @@ public class RunMojo extends AbstractMojo { * Check that a database configuration has been supplied correctly */ private void checkDatabaseConfig() throws MojoExecutionException { - if (enableH2 && !enableMySQL && !enablePostgreSQL) { - // Run with the H2 database - return; - } else if (!enableH2 && enableMySQL && !enablePostgreSQL) { - // Run with the MySQL database - return; - } else if (!enableH2 && !enableMySQL && enablePostgreSQL) { - // Run with the PostgreSQL database - return; - } else if (!enableH2 && !enableMySQL && !enablePostgreSQL) { - // Run with a database configured via Tomcat Dependencies - return; - } else { - throw new MojoExecutionException( - "Invalid database configuration, " + - "should be enableH2 or enableMySQL or enablePostgreSQL " + - "or none (i.e. config via Tomcat Dependencies)"); + // Only do this check if we are running alfresco.war or activiti-app.war that needs a database. + if (enablePlatform || enableActivitiApp) { + if (enableH2 && !enableMySQL && !enablePostgreSQL) { + // Run with the H2 database + return; + } else if (!enableH2 && enableMySQL && !enablePostgreSQL) { + // Run with the MySQL database + return; + } else if (!enableH2 && !enableMySQL && enablePostgreSQL) { + // Run with the PostgreSQL database + return; + } else if (!enableH2 && !enableMySQL && !enablePostgreSQL) { + // Run with a database configured via Tomcat Dependencies + return; + } else { + throw new MojoExecutionException( + "Invalid database configuration, " + + "should be enableH2 or enableMySQL or enablePostgreSQL " + + "or none (i.e. config via Tomcat Dependencies)"); + } } } @@ -823,8 +928,10 @@ public class RunMojo extends AbstractMojo { // Bring in the flat file H2 database dependency("com.h2database", "h2", "1.4.190")); - // Copy the h2 scripts - copyH2Dialect(); + if (enablePlatform) { + // Copy the h2 scripts for the Alfresco Repository database + copyH2Dialect(); + } } else if (enableMySQL) { tomcatPluginDependencies.add( // Bring in the MySQL JDBC Driver @@ -852,15 +959,42 @@ public class RunMojo extends AbstractMojo { } if (enableApiExplorer) { - webapps2Deploy.add(createWebAppElement(alfrescoGroupId, alfrescoApiExplorerArtifactId, alfrescoApiExplorerVersion, + webapps2Deploy.add(createWebAppElement( + alfrescoGroupId, alfrescoApiExplorerArtifactId, alfrescoApiExplorerVersion, "/api-explorer", null)); } + if (enableActivitiApp) { + webapps2Deploy.add(createWebAppElement( + runnerActivitiAppGroupId, runnerActivitiAppWarArtifactId, runnerActivitiAppVersion, + "/activiti-app", null)); + } + + if (enableActivitiAdmin) { + webapps2Deploy.add(createWebAppElement( + activitiGroupId, activitiAdminWarArtifactId, activitiVersion, "/activiti-admin", null)); + } + // This might be ugly, the MojoExecuter will only accept Element[] and we need this list to be dynamic // to avoid NPEs. If there's a better way to do this, then feel free to change it! Element[] webapps = new Element[webapps2Deploy.size()]; webapps2Deploy.toArray(webapps); + // Set up the system properties that should be set for Tomcat + ArrayList systemProps = new ArrayList(); + systemProps.add(element(name("java.io.tmpdir"), "${project.build.directory}")); + if (enableSolr) { + systemProps.add(element(name("solr.solr.home"), solrHome)); + } + if (enableActivitiApp) { + // Should be in activiti-jar/src/test/resources + systemProps.add(element(name("log4j.configuration"), "log4j-dev.properties")); + } + // This might be ugly, the MojoExecuter will only accept Element[] and we need this list to be dynamic + // to avoid NPEs. If there's a better way to do this, then feel free to change it! + Element[] systemPropArray = new Element[systemProps.size()]; + systemProps.toArray(systemPropArray); + executeMojo( plugin( groupId("org.apache.tomcat.maven"), @@ -896,10 +1030,7 @@ public class RunMojo extends AbstractMojo { /** * Set up where Solr Home directory is */ - element(name("systemProperties"), - element(name("java.io.tmpdir"), "${project.build.directory}"), - element(name("solr.solr.home"), solrHome) - ), + element(name("systemProperties"), systemPropArray), /* Should this class loader delegate to the parent class loader before searching its own repositories (i.e. the usual Java2 delegation model). diff --git a/pom.xml b/pom.xml index a37059c9..9984ca66 100644 --- a/pom.xml +++ b/pom.xml @@ -121,25 +121,25 @@ modules/alfresco-rad plugins/alfresco-maven-plugin - - poms/alfresco-sdk-parent archetypes/alfresco-platform-jar-archetype archetypes/alfresco-share-jar-archetype archetypes/alfresco-allinone-archetype + archetypes/activiti-jar-archetype UTF-8 1.7 1.7 - 2.2 + 3.0.1 + 2.4 ${project.version} */*-enterprise/* - 5.0.d - 5.0.1 - 2.3 - 1.2.3.RELEASE + + + 5.1.g + https://github.com/Alfresco/alfresco-sdk @@ -184,6 +184,11 @@ true + + + activiti-private-repository + https://artifacts.alfresco.com/nexus/content/repositories/activiti-enterprise-releases + diff --git a/poms/alfresco-sdk-parent/pom.xml b/poms/alfresco-sdk-parent/pom.xml deleted file mode 100644 index 4ffde30d..00000000 --- a/poms/alfresco-sdk-parent/pom.xml +++ /dev/null @@ -1,1077 +0,0 @@ - - - 4.0.0 - alfresco-sdk-parent - Maven Alfresco SDK - Parent POM - - The Maven Alfresco SDK Parent POM exposes the developer features of the Maven Alfresco SDK. - Declare this POM as parent for your project and select the Alfresco version/edition by defining - the alfresco.groupId and alfresco.version in your POM. - - pom - - - - org.alfresco.maven - alfresco-sdk-aggregator - 3.0.0-SNAPSHOT - ../../pom.xml - - - - 3.0.0-SNAPSHOT - - - - - org.alfresco - ${alfresco.community.default.version} - alfresco - share - - - /alfresco - /share - - - ${session.executionRootDirectory}/alf_data_dev - - - alf_dev - alfresco - alfresco - AUTO_SERVER=TRUE;DB_CLOSE_ON_EXIT=FALSE;LOCK_TIMEOUT=10000;MVCC=FALSE;LOCK_MODE=0 - - jdbc:h2:${alfresco.data.location}/h2_data/${alfresco.db.name};${alfresco.db.params} - org.h2.jdbcx.JdbcDataSource - - - src/main/amp - ../${project.build.finalName} - - - - - - ${project.build.directory}/${project.build.finalName}-war - - ${alfresco.repo.artifactId} - - - local - src/main/properties/${env} - src/test/properties/${env} - ** - ** - - - true - - - ${project.build.directory}/ - WARN - - - runtime - 1.5.11 - - UTF-8 - - - 3.2 - 1.7 - 1.7 - 2.6.1 - 2.9 - 1.4 - 2.7 - 2.18 - 2.5.2 - 2.5 - 2.5 - 1.7 - 2.5.1 - 1.9.1 - 1.5.3 - 2.2 - - - ../../target/staging/poms/alfresco-sdk-parent - - - 3.0.0-SNAPSHOT - - - 8080 - - - 1.4.185 - - - -Xms256m -Xmx1524m -XX:MaxPermSize=256m -Duser.language=en - - - - - - alfresco-public - https://artifacts.alfresco.com/nexus/content/groups/public - - - alfresco-public-snapshots - https://artifacts.alfresco.com/nexus/content/groups/public-snapshots - - true - daily - - - - sonatype-snapshots - Sonatype Snapshot Repo - https://oss.sonatype.org/content/repositories/snapshots/ - - false - - - true - - - - - - - sonatype-public - http://oss.sonatype.org/content/groups/public - - - sonatype-snapshots - https://oss.sonatype.org/content/repositories/snapshots - - true - daily - - - - alfresco-plugin-public - https://artifacts.alfresco.com/nexus/content/groups/public - - - alfresco-plugin-public-snapshots - https://artifacts.alfresco.com/nexus/content/groups/public-snapshots - - true - daily - - - - - - ${project.artifactId} - - - - org.alfresco.maven.plugin - alfresco-maven-plugin - ${maven.alfresco.version} - true - - true - - - - org.apache.maven.plugins - maven-compiler-plugin - ${maven.compiler.version} - - - org.apache.maven.plugins - maven-resources-plugin - ${maven.resources.version} - - UTF-8 - - ftl - acp - jpg - png - gif - svg - pdf - doc - docx - xls - xlsx - ppt - pptx - bin - lic - swf - zip - msg - jar - ttf - eot - woff - woff2 - css - ico - psd - - - - - org.apache.maven.plugins - maven-war-plugin - ${maven.war.version} - - false - - - true - - - - - - org.alfresco.maven.plugin - alfresco-maven-plugin - ${maven.alfresco.version} - - - - - org.apache.maven.plugins - maven-clean-plugin - ${maven.clean.version} - - - org.apache.maven.plugins - maven-dependency-plugin - ${maven.dependency.version} - - - org.apache.maven.plugins - maven-surefire-plugin - ${maven.surefire.version} - - - org.apache.maven.plugins - maven-install-plugin - ${maven.install.version} - - - org.apache.maven.plugins - maven-jar-plugin - ${maven.jar.version} - - - org.apache.maven.plugins - maven-antrun-plugin - ${maven.antrun.version} - - - com.google.code.maven-replacer-plugin - replacer - ${maven.replacer.version} - - - - org.apache.tomcat.maven - tomcat7-maven-plugin - ${maven.tomcat.version} - - true - - - - com.h2database - h2 - ${h2.version} - - - - - - org.eclipse.m2e - lifecycle-mapping - 1.0.0 - - - - - - org.alfresco.maven.plugin - alfresco-maven-plugin - [0.0,) - - set-version - refresh-share - refresh-repo - refresh - - - - - true - true - - - - - - - - - - net.alchim31.maven - yuicompressor-maven-plugin - 1.5.1 - - - compress-js - process-resources - - compress - - - - **/webscripts/** - **/site-webscripts/** - **/*.lib.js - **/*.css - - src/main/resources/META-INF - false - - - - - - - - - - src/main/resources - ${app.filtering.enabled} - - - ${app.amp.folder} - ${app.amp.output.folder} - ${app.filtering.enabled} - - - - - src/test/resources - ${app.filtering.enabled} - - - - - - - - - - - - purge - - - - org.apache.maven.plugins - maven-clean-plugin - - - - ${alfresco.data.location} - - - ${project.basedir} - - **/*.log* - - - - - - - - - - - - enterprise - - ${alfresco.enterprise.default.version} - alfresco-enterprise - share-enterprise - - provided - - - - alfresco-private-repository - https://artifacts.alfresco.com/nexus/content/groups/private - - - - - - - amp-to-war - - true - - - - - - org.apache.maven.plugins - maven-dependency-plugin - - - unpack-alfresco - prepare-package - - unpack - - - ${app.amp.client.war.folder} - - - ${alfresco.groupId} - ${app.amp.client.war.artifactId} - war - ${alfresco.version} - - - - - - - - - org.alfresco.maven.plugin - alfresco-maven-plugin - - - amps-to-war-overlay - package - - install - - - - - - false - - - - - org.apache.tomcat.maven - tomcat7-maven-plugin - - - run-embedded - - run - - integration-test - - false - true - true - - ${project.build.directory} - - true - ${project.basedir}/tomcat/context.xml - - - - - - - org.alfresco.maven - alfresco-rad - ${maven.alfresco.version} - - - - - - - - - - - - - - enable-amp - - - src/main/amp/module.properties - - - - - - org.alfresco.maven.plugin - alfresco-maven-plugin - true - - - - maven-resources-plugin - - - add-module-properties-to-test-classpath - process-test-resources - - copy-resources - - - ${project.build.testOutputDirectory} - - - ${app.amp.folder} - - module.properties - - ${app.filtering.enabled} - alfresco/module/${project.artifactId} - - - - - - add-module-config-to-test-classpath - process-test-resources - - copy-resources - - - ${project.build.testOutputDirectory} - - - ${app.amp.folder}/config - - **/* - - ${app.filtering.enabled} - - - - - - - - - - - - - enable-alfresco-testing - - - src/test/java - - - - - - org.apache.maven.plugins - maven-surefire-plugin - ${maven.surefire.version} - - - - - - junit - junit - test - - - - org.alfresco.maven - alfresco-rad - ${maven.alfresco.version} - test - - - - - - - enable-properties-filtering - - - - src/main/properties - - - - - - org.codehaus.mojo - build-helper-maven-plugin - ${maven.buildhelper.version} - - - add-env-properties - generate-resources - - add-resource - - - - - ${app.properties.folder} - - ${app.properties.include} - - ${app.filtering.enabled} - - - - - - - - - - - enable-test-properties-filtering - - - - src/test/properties - - - - - - org.codehaus.mojo - build-helper-maven-plugin - ${maven.buildhelper.version} - - - add-env-test-properties - generate-resources - - add-test-resource - - - - - ${app.properties.test.folder} - - ${app.properties.test.include} - - ${app.filtering.enabled} - - - - - - - - - - - - - config-h2-support - - - src/test/properties/local/alfresco-global.properties - - - - - - com.h2database - h2 - ${h2.version} - test - - - - - - - enforce-sdk-rules - - true - - - - - org.apache.maven.plugins - maven-enforcer-plugin - ${maven.enforcer.plugin} - - - enforce-sdk-requirements - - enforce - - - - - - alfresco.version - The SDK 2.1.x is supported only for Alfresco 5.0.d Community and above or - Alfresco Enterprise 5.0.1 and above - - ^(5\.(0\.[d-z1-9]|[1-9])|6\.).*$ - - - - - 3.2.2 - - - true - - - - - - - - - - - refresh-both - - - src/main/amp/module.properties - - - - - - org.alfresco.maven.plugin - alfresco-maven-plugin - - - refresh-webscripts-repo-and-share - process-resources - - refresh - - - - - - - - - - - - - - - setup - - false - - - - - - org.apache.maven.plugins - maven-dependency-plugin - - - get-spring-loaded - validate - - get - - - org.springframework:springloaded:${springloaded.version} - - - - - - - - - - - - - - - atv - - false - ${project.build.directory}/${project.build.finalName}-src - - - - - - maven-resources-plugin - - - isolate-project-src - generate-resources - - copy-resources - - - ${maven.alfresco.validation.sourceLocation} - - - ${project.basedir} - - target - - ${app.filtering.enabled} - - - - - - - - org.alfresco.maven.plugin - alfresco-maven-plugin - - - run-atv - verify - - validate - - - - - - de.herschke - neo4j-maven-plugin - 2.0.2-20140827 - - - start-neo4j-server - post-integration-test - - start-server - - - - stop-neo4j-server - verify - - stop-server - - - - - 7474 - - - - - - - - - - - - - jrebel - - - - org.zeroturnaround - jrebel-maven-plugin - 1.1.5 - - - generate-rebel-xml - prepare-package - - generate - - - - - war - false - - - - ${project.build.outputDirectory} - - - ${project.build.testOutputDirectory} - - - - - - - / - ${project.build.directory}/${project.build.finalName} - - - / - ${project.build.directory}/${project.build.finalName}-war - - - - - - - - - - - - diff --git a/poms/alfresco-sdk-parent/src/site/apt/index.apt.vm b/poms/alfresco-sdk-parent/src/site/apt/index.apt.vm deleted file mode 100644 index 0b77d5d2..00000000 --- a/poms/alfresco-sdk-parent/src/site/apt/index.apt.vm +++ /dev/null @@ -1,41 +0,0 @@ - ------ - Introduction - ------ - Gabriele Columbro - ------ - Nov 2012 - ------ - -Introduction - - The Alfresco SDK Parent POM ${project.version} is the <<>> for all Alfresco SDK\x99 features. - It aggregates plugin configurations and dependencies to provide a set of profiles and properties to manage the full Alfresco projects Lifecycle on Maven. - - The current version of the POM in use in the Alfresco SDK\x99 ${project.version} is available {{{https://oss.sonatype.org/index.html#nexus-search;gav~org.alfresco.maven~alfresco-sdk-parent~${project.version}~pom~}on Maven Central}}. - -Usage - - You can reference Alfresco SDK POM in your POM adding the following snippet: - -+---+ - - ... - - org.alfresco.maven - alfresco-sdk-parent - ${project.version} - - ... - -+---+ - - This will reference the Alfresco SDK project as <<>> project, allowing you to inherit all SDK features. - Full dependency information for other build systems can be found in the {{{./dependency-info.html} Dependency Info page}}. - - Features are provided in terms of {{{./sdk-profiles.html} Maven profiles}}, and high configurability is provided with - {{{./sdk-properties.html}POM properties}} avaialble to sibling projects. - -* Examples / archetypes - - To kickstart your SDK experience and to provide examples on how to use it, archetypes are available already using this POM. - Check the menu item for more samples. diff --git a/poms/alfresco-sdk-parent/src/site/apt/sdk-profiles.apt.vm b/poms/alfresco-sdk-parent/src/site/apt/sdk-profiles.apt.vm deleted file mode 100644 index 0f085c59..00000000 --- a/poms/alfresco-sdk-parent/src/site/apt/sdk-profiles.apt.vm +++ /dev/null @@ -1,50 +0,0 @@ - ------ - Alfresco SDK\x99 Profiles - ------ - Gabriele Columbro - ------ - Aug 2014 - ------ - -SDK Available Profiles - - The Alfresco SDK\x99 defines common features required by different Alfresco projects. - While the <<>> way is to use full working examples of usage of these profiles (e.g. the - {{{../../archetypes/alfresco-amp-archetype/index.html}Repo AMP}}, {{{../../archetypes/share-amp-archetype/index.html}Share AMP} and {{{../../archetypes/alfresco-allinone-archetype/index.html}All-in-One}} archetypes), - you can also directly use this POM as a parent in your custom project. - - Here goes the list of common used profiles (with their activation conditions): - - -*-----------+--------------+-------------+-------------+-------------+ -|| Archetypes || Profile || Description || Activation || Phase | -*-----------+--------------+-------------+-------------+-------------+ -| amp, share-amp | amp-to-war | Allows AMP projects to be run embedded on a WAR and in rapid dev mode | Manual: <<<-Pamp-to-war>>> | pre-integration-test | -*-----------*--------------*-------------*-------------*-------------+ -| all-in-one | run | Runs embedded Alfresco + Share + Solr in rapid dev mode | Manual: <<<-Prun>>> | pre-integration-test | -*-----------*--------------*-------------*-------------*-------------+ -| any | purge | Cleans all alf_data and logs from Alfresco runs | Manual: <<<-Ppurge>>> | clean | -*-----------*--------------*-------------*-------------*-------------+ -| any | enterprise |Configures your build to use Alfresco Enterprise. Obtain your credentials with {{{https://support.alfresco.com}Alfresco Support}}| Manual: <<<-Penterprise>>> | N/A | -*-----------+--------------+-------------+-------------+-------------+ -| any | setup | Sets up the sdk, e.g. grabs springloaded. | Manual: <<<-Psetup>>> (automated in the run.sh) | initialize | -*-----------+--------------+-------------+-------------+-------------+ -| all-in-one | rm | Adds Records Management runtime and compile time dependencies | Manual: <<<-Prm>>> | package | -*-----------+--------------+-------------+-------------+-------------+ -| all-in-one | regression | (Experimental) Invokes the Alfresco {{{https://github.com/AlfrescoLabs/technical-validation/}Share PO}} Webdrone / Selenium based regression tests| Manual: <<<-Pregression>>> | integration-test | -*-----------+--------------+-------------+-------------+-------------+ -| amp, share-amp | atv | (Experimental) Invokes the {{{https://github.com/AlfrescoLabs/technical-validation/}Alfresco Technical Validation tool}} | Manual: <<<-Patv>>> | validate | -*-----------+--------------+-------------+-------------+-------------+ - - - The full list of available profiles (with their activation conditions) can be instead found in the <<>> section of the - {{{https://artifacts.alfresco.com/nexus/index.html#nexus-search;gav~org.alfresco.maven~alfresco-sdk-parent~${project.version}~pom~}Alfresco SDK POM}}. - -Full SDK properties reference - - The full reference of properties defined in the SDK can be obtained by looking - at the <<>> section of the current version of the <<>> in use. - Check the {{{https://artifacts.alfresco.com/nexus/index.html#nexus-search;gav~org.alfresco.maven~alfresco-sdk-parent~${project.version}~pom~}current POM version}} for this. - - While in certain cases it might be useful to override defaults, make sure you know what you're doing, - as you might be <> SDK conventions and therefore <> diff --git a/poms/alfresco-sdk-parent/src/site/apt/sdk-properties.apt.vm b/poms/alfresco-sdk-parent/src/site/apt/sdk-properties.apt.vm deleted file mode 100644 index b4b78ee1..00000000 --- a/poms/alfresco-sdk-parent/src/site/apt/sdk-properties.apt.vm +++ /dev/null @@ -1,61 +0,0 @@ - ------ - Alfresco SDK Properties - ------ - Gabriele Columbro - ------ - Nov 2012 - ------ - -Common SDK properties - - Useful properties that can be fully controlled directly in the POM are: - -+---+ - - ... - - - org.alfresco - 5.0.c - - WARN - - ${project.build.directory}/ - - ${project.basedir}/alf_data_dev - - local - - ... - -+---+ - - -Full SDK properties reference - - The full reference of properties defined in the SDK can be obtained by looking - at the <<>> section of the current version of the <<>> in use. - Check the {{{https://artifacts.alfresco.com/nexus/index.html#nexus-search;gav~org.alfresco.maven~alfresco-sdk-parent~${project.version}~pom~}current POM version}} for this. - - While in certain cases it might be useful to override defaults, make sure you know what you're doing, - as you might be <> SDK conventions and therefore <>> - -Example - Configuring custom DB - - In order to configure a given JDBC database connection, you need to define some POM properties. - -+---+ - - ... - alfresco - alfresco - alfresco - - jdbc:mysql://${db.host}:${db.port}/${db.name} - org.gjt.mm.mysql.Driver - -+---+ diff --git a/poms/alfresco-sdk-parent/src/site/site.xml b/poms/alfresco-sdk-parent/src/site/site.xml deleted file mode 100644 index 1afb86ba..00000000 --- a/poms/alfresco-sdk-parent/src/site/site.xml +++ /dev/null @@ -1,83 +0,0 @@ - - - org.apache.maven.skins - maven-fluido-skin - 1.3.1 - - - - - - Alfresco Software - Alfresco Software - http://people.apache.org/~gabriele/Alfresco-logo-transparent-thin.png - http://www.alfresco.com - - true - navbar-inverse - false - - - - - - true - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -