This commit is contained in:
Ralph Soika 2020-11-16 13:19:48 +01:00
commit 3f852c233e
15 changed files with 3206 additions and 0 deletions

18
.gitignore vendored Normal file
View file

@ -0,0 +1,18 @@
# ignore all bin directories
# matches "bin" in any subfolder
bin/
# ignore all target directories
target/
# ignore all files ending with ~
*~
# ignore eclipse directories and project files
.settings/
.metadata/
.project
.classpath
# ignore docker deployments
docker/deployments/

5
Dockerfile Normal file
View file

@ -0,0 +1,5 @@
FROM imixs/imixs-office-workflow:4.3.1
# Deploy artefact
RUN rm -r /opt/jboss/wildfly/standalone/deployments/*
COPY ./*-app/target/*.war /opt/jboss/wildfly/standalone/deployments/

37
docker-compose.yml Normal file
View file

@ -0,0 +1,37 @@
version: '3.6'
services:
db:
image: postgres:9.6.1
environment:
POSTGRES_PASSWORD: adminadmin
POSTGRES_DB: office-alexander-logistics
volumes:
- dbdata:/var/lib/postgresql/data
app:
image: imixs/office-alexander-logistics
depends_on:
- db
environment:
JAVA_OPTS: "-Dnashorn.args=--no-deprecation-warning"
POSTGRES_USER: "postgres"
POSTGRES_PASSWORD: "adminadmin"
POSTGRES_CONNECTION: "jdbc:postgresql://db/office-alexander-logistics"
TZ: "CET"
LANG: "en_US.UTF-8"
ports:
- "8080:8080"
- "9990:9990"
- "8787:8787"
volumes:
- ./docker/deployments:/opt/jboss/wildfly/standalone/deployments/
imixsadmin:
image: imixs/imixs-admin
ports:
- "8888:8080"
volumes:
dbdata:

View file

@ -0,0 +1 @@
/target/

View file

@ -0,0 +1,231 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<artifactId>office-alexander-logistics</artifactId>
<groupId>com.alexander-logistics</groupId>
<version>1.0.0</version>
</parent>
<artifactId>office-alexander-logistics-app</artifactId>
<packaging>war</packaging>
<name>Imixs Office Workflow App</name>
<profiles>
<profile>
<id>docker</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.8</version>
<executions>
<execution>
<phase>install</phase>
<configuration>
<target>
<exec executable="docker">
<arg value="build" />
<arg value="-t" />
<arg value="imixs/${imixs-office.applicationname}" />
<arg value="../." />
</exec>
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>docker-build</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.8</version>
<executions>
<execution>
<phase>install</phase>
<configuration>
<target>
<exec executable="docker">
<arg value="build" />
<arg value="-t" />
<arg value="imixs/${imixs-office.applicationname}:${project.version}" />
<arg value="../." />
</exec>
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>docker-push</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.8</version>
<executions>
<execution>
<phase>install</phase>
<configuration>
<target>
<exec executable="docker">
<arg value="build" />
<arg value="-t" />
<arg value="imixs/${imixs-office.applicationname}:${project.version}" />
<arg value="../." />
</exec>
<exec executable="docker">
<arg value="tag" />
<arg value="imixs/${imixs-office.applicationname}:${project.version}" />
<arg value="${org.imixs.docker.registry}/imixs/${imixs-office.applicationname}:${project.version}" />
</exec>
<exec executable="docker">
<arg value="push" />
<arg value="${org.imixs.docker.registry}/imixs/${imixs-office.applicationname}:${project.version}" />
</exec>
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<build>
<plugins>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>2.6</version>
<configuration>
<failOnMissingWebXml>false</failOnMissingWebXml>
<webResources>
<resource>
<filtering>true</filtering>
<!-- this is relative to the pom.xml directory -->
<directory>${custom.webResources}</directory>
<includes>
<include>**/WEB-INF/*</include>
<!-- include any other file types you want to filter -->
</includes>
</resource>
</webResources>
<workDirectory>target/overlay-war-folder</workDirectory>
<!-- We exclude libs form the parent WAR artifact -->
<overlays>
<overlay>
<groupId>com.imixs.workflow</groupId>
<artifactId>imixs-office-workflow-app</artifactId>
<excludes>
<exclude>WEB-INF/lib/*.jar</exclude>
</excludes>
</overlay>
</overlays>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<!-- Imixs Workflow -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-workflow-core</artifactId>
<type>jar</type>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-workflow-engine</artifactId>
<type>jar</type>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-workflow-jax-rs</artifactId>
<type>jar</type>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-workflow-faces</artifactId>
<type>jar</type>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-workflow-index-lucene</artifactId>
<scope>compile</scope>
</dependency>
<!-- Marty -->
<dependency>
<groupId>org.imixs.marty</groupId>
<artifactId>imixs-marty-ejb</artifactId>
<type>jar</type>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.imixs.marty</groupId>
<artifactId>imixs-marty-util</artifactId>
<type>jar</type>
<scope>compile</scope>
</dependency>
<!-- Imixs-Office-Workflow -->
<dependency>
<groupId>com.imixs.workflow</groupId>
<artifactId>imixs-office-workflow-app</artifactId>
<type>war</type>
</dependency>
<dependency>
<groupId>com.imixs.workflow</groupId>
<artifactId>imixs-office-workflow-util</artifactId>
<scope>compile</scope>
</dependency>
<!-- Imixs-Archive -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-archive-api</artifactId>
<scope>compile</scope>
</dependency>
<!-- Imixs-Documents / Tika Service (optional)
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-archive-documents</artifactId>
<scope>compile</scope>
</dependency>
-->
</dependencies>
</project>

View file

@ -0,0 +1,2 @@
Manifest-Version: 1.0

View file

@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://xmlns.jcp.org/xml/ns/persistence"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd"
version="2.1">
<!--
Imixs JPA definition Make sure that the imixs-workflow-jee library
version maches the version provided by the EAR/EJB
-->
<!-- eclipselink -->
<persistence-unit name="org.imixs.workflow.jpa" transaction-type="JTA">
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
<jta-data-source>${imixs-office.jta-data-source}</jta-data-source>
<jar-file>lib/imixs-workflow-engine-${org.imixs.workflow.version}.jar</jar-file>
<jar-file>lib/imixs-marty-ejb-${org.imixs.marty.version}.jar</jar-file>
<properties>
<!-- target-database Auto MySQL PostgreSQL -->
<property name="eclipselink.target-database" value="Auto" />
<property name="eclipselink.ddl-generation" value="create-tables" />
<property name="eclipselink.deploy-on-startup" value="true" />
<property name="eclipselink.logging.level" value="INFO" />
</properties>
</persistence-unit>
</persistence>

View file

@ -0,0 +1,2 @@
# Custom resource bundle

View file

@ -0,0 +1,2 @@
# Custom resource bundle

View file

@ -0,0 +1,44 @@
# Imixs-Workflow
model.default.data=system-de-1.1.0.bpmn
lucence.indexDir=${imixs-office.IndexDir}
lucence.fulltextFieldList=txtsearchstring,txtSubject,txtname,txtEmail,txtUserName,namCreator,txtworkflowgroup,txtworkflowstatus,txtWorkflowAbstract,txtWorkflowSummary,txtworkflowhistory,txtspacename,txtprocessname,_subject,_description,_name,_projectnumber,_projectname,_ordernumber,_contractnumber,datDueDate,txtcommentlog,htmldescription,htmldocumentation,dms,dms_names,_childitems
lucence.indexFieldListAnalyze=txtUsername
lucence.indexFieldListNoAnalyze=type,$UniqueIDRef,$created,$modified,$ModelVersion,namCreator,$ProcessID,datDate,txtWorkflowGroup,txtemail, datdate, datfrom, datto, numsequencenumber,dms_count
lucence.indexFieldListStore=txtProcessName,txtWorkflowImageURL
# Marty Setup
setup.mode=auto
setup.system.model=system-de-1.1
# Marty Login & Profile Properties
security.userid.input.mode=LOWERCASE
security.email.unique=true
#security.userid.input.pattern=
# Mail
# mail.defaultSender=info@imixs.com
# Imixs Archive
snapshot.history=1
snapshot.overwriteFileContent=false
# Image reziser
image.fileExtension=jpg,gif
image.maxWidth=2048
# Office Setup
BASIC.maxviewentries=10
# Space selector (none, root, all)
search.filter.spaces=root
dms.search=true

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<faces-config xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-facesconfig_2_2.xsd"
version="2.2">
</faces-config>

View file

@ -0,0 +1,2 @@
/* Custom Design */

222
pom.xml Normal file
View file

@ -0,0 +1,222 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.alexander-logistics</groupId>
<artifactId>office-alexander-logistics</artifactId>
<version>1.0.0</version>
<packaging>pom</packaging>
<name>Imixs Office Workflow - Custom Build</name>
<modules>
<module>office-alexander-logistics-app</module>
</modules>
<properties>
<!-- <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
because of resource filtering is enabled we can not use UTF-8 for some strange
reasons. When setting sourceEncoding to ISO-8859-1 the special german charcters
works fine -->
<project.build.sourceEncoding>ISO-8859-1</project.build.sourceEncoding>
<!-- Build Time -->
<org.imixs.build.timestamp>${maven.build.timestamp}</org.imixs.build.timestamp>
<maven.build.timestamp.format>yyyyMMddHHmmss</maven.build.timestamp.format>
<!-- Versions -->
<org.imixs.workflow.version>5.2.5</org.imixs.workflow.version>
<org.imixs.marty.version>4.1.8</org.imixs.marty.version>
<org.imixs.office.version>4.3.1</org.imixs.office.version>
<org.imixs.adapters.version>2.2.3</org.imixs.adapters.version>
<org.imixs.archive.version>2.2.4</org.imixs.archive.version>
<org.imixs.melman.version>1.0.19</org.imixs.melman.version>
<microprofile.version>2.2</microprofile.version>
<!--
<net.sf.saxon.version>9.9.1-4</net.sf.saxon.version>
<org.imixs.microservice.version>2.0.6</org.imixs.microservice.version>
<apache.poi.version>4.0.0</apache.poi.version>
<apache.pdfbox.version>[2.0.15,)</apache.pdfbox.version>
<apache.tika.version>[1.20,)</apache.tika.version>
-->
<custom.webResources>src/main/webapp</custom.webResources>
<!-- Environment Settings -->
<imixs-office.contextroot>/</imixs-office.contextroot>
<imixs-office.realm>imixsrealm</imixs-office.realm>
<imixs-office.jta-data-source>jdbc/office</imixs-office.jta-data-source>
<imixs-office.IndexDir>lucene/office-index</imixs-office.IndexDir>
<imixs-office.applicationname>office-alexander-logistics</imixs-office.applicationname>
<imixs-mail-res-ref-name>java:/mail/org.imixs.workflow.mail</imixs-mail-res-ref-name>
<!-- Wildfly unpack war -->
<custom.unpackTypes>war</custom.unpackTypes>
<imixs-office.applicationname>office-alexander-logistics</imixs-office.applicationname>
</properties>
<repositories>
<!-- Sonatype Snapshot repository -->
<repository>
<id>sonatype-snaptshots</id>
<name>Sonatype Snapshot repository</name>
<url>http://oss.sonatype.org/content/repositories/snapshots</url>
</repository>
<!-- Imixs repository -->
<repository>
<id>imixs-mvn-repo</id>
<url>https://raw.githubusercontent.com/imixs/imixs-mvn-repo/master/</url>
<snapshots>
<enabled>false</enabled>
<updatePolicy>always</updatePolicy>
</snapshots>
</repository>
</repositories>
<profiles>
<profile>
<id>docker</id>
<!-- build latest - see ear module for details -->
</profile>
<profile>
<id>docker-build</id>
<!-- build current version local - see ear module for details -->
</profile>
<profile>
<id>docker-push</id>
<!-- build and push to repp - see ear module for details -->
</profile>
</profiles>
<build>
<resources>
<!-- enable resource filtering for multi language version -->
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>2.6</version>
<configuration>
<encoding>${project.build.sourceEncoding}</encoding>
</configuration>
</plugin>
</plugins>
</build>
<dependencyManagement>
<dependencies>
<!-- Imixs Workflow -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-workflow-core</artifactId>
<version>${org.imixs.workflow.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-workflow-engine</artifactId>
<version>${org.imixs.workflow.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-workflow-faces</artifactId>
<version>${org.imixs.workflow.version}</version>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-workflow-jax-rs</artifactId>
<version>${org.imixs.workflow.version}</version>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-workflow-index-lucene</artifactId>
<version>${org.imixs.workflow.version}</version>
</dependency>
<!-- Marty -->
<dependency>
<groupId>org.imixs.marty</groupId>
<artifactId>imixs-marty-util</artifactId>
<version>${org.imixs.marty.version}</version>
</dependency>
<dependency>
<groupId>org.imixs.marty</groupId>
<artifactId>imixs-marty-ejb</artifactId>
<version>${org.imixs.marty.version}</version>
<scope>provided</scope>
</dependency>
<!-- Office Workflow -->
<dependency>
<groupId>com.imixs.workflow</groupId>
<artifactId>imixs-office-workflow-app</artifactId>
<version>${org.imixs.office.version}</version>
<type>war</type>
</dependency>
<dependency>
<groupId>com.imixs.workflow</groupId>
<artifactId>imixs-office-workflow-util</artifactId>
<version>${org.imixs.office.version}</version>
<scope>provided</scope>
</dependency>
<!-- Imixs-Archive -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-archive-api</artifactId>
<version>${org.imixs.archive.version}</version>
<scope>provided</scope>
</dependency>
<!-- Imxixs-Archive Documents -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-archive-documents</artifactId>
<version>${org.imixs.archive.version}</version>
<scope>compile</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<!-- JEE Dependencies -->
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-api</artifactId>
<version>7.0</version>
<scope>provided</scope>
</dependency>
<!-- JUnit Tests -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
<version>1.9.5</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>