Compare commits
55 Commits
Author | SHA1 | Date |
---|---|---|
Robert von Burg | dafab20d62 | |
Robert von Burg | 46b17eba59 | |
Robert von Burg | 3aa9fe2351 | |
Robert von Burg | 3282ad9a9e | |
Robert von Burg | 7e11f35ea2 | |
Robert von Burg | 1127587dd2 | |
Robert von Burg | 996cf04366 | |
Robert von Burg | fce938984d | |
Robert von Burg | eed800d7e5 | |
Robert von Burg | 747ef83b83 | |
Robert von Burg | cd923a23c5 | |
Robert von Burg | 1292784e4d | |
Robert von Burg | 5c04c258ad | |
Robert von Burg | 71764276b0 | |
Robert von Burg | b707f5ece3 | |
Robert von Burg | 33c31c68ab | |
Robert von Burg | 2a706631ae | |
Robert von Burg | 9f57ada76c | |
Robert von Burg | 0d826a128d | |
Robert von Burg | f3f7f15eac | |
Robert von Burg | 8db8c103d1 | |
Robert von Burg | 881fd71040 | |
Robert von Burg | ef78af56b6 | |
Robert von Burg | 5b003e2e14 | |
Robert von Burg | ce66364548 | |
Robert von Burg | 80193b8e7c | |
Robert von Burg | 3d6dcb1efb | |
Robert von Burg | 3afa3cd828 | |
Robert von Burg | 26966b6c58 | |
Robert von Burg | ec009d0c41 | |
Robert von Burg | b2fb6d07e6 | |
Robert von Burg | 188d87bc8d | |
Robert von Burg | 2d30b0dfae | |
Robert von Burg | 2a901c1e1f | |
Robert von Burg | 8ab45eec7d | |
Robert von Burg | e5287bb680 | |
Robert von Burg | 185af6a010 | |
Robert von Burg | fda8b013e4 | |
Robert von Burg | 4ee9baddc5 | |
Robert von Burg | 92d8d47c2b | |
Robert von Burg | ac965e5c45 | |
Robert von Burg | e45d37c05d | |
Robert von Burg | ca5f1514ea | |
Robert von Burg | 4bc0254ef8 | |
Robert von Burg | 53a9caf0e9 | |
Robert von Burg | 4faef16503 | |
Robert von Burg | a8db4b6bdf | |
Robert von Burg | 95ce446563 | |
Robert von Burg | 3cf33b7026 | |
Robert von Burg | c5205ff3fe | |
Robert von Burg | c4a4befa70 | |
Robert von Burg | 6dcb19a3e6 | |
Robert von Burg | dac6764797 | |
Robert von Burg | 8186b1482d | |
Robert von Burg | 030486d8b9 |
|
@ -10,7 +10,7 @@ Install this maven module locally:
|
|||
|
||||
Now you can use the archetypes to create your project. The following archetypes are available:
|
||||
|
||||
* li.strolch.mvn.archetype.main
|
||||
* li.strolch.mvn.archetype.webapp
|
||||
* strolch.mvn.archetype.main
|
||||
* strolch.mvn.archetype.webapp
|
||||
|
||||
To create a Strolch project see https://strolch.li/development/
|
||||
|
|
248
pom.xml
248
pom.xml
|
@ -4,13 +4,13 @@
|
|||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
<groupId>li.strolch</groupId>
|
||||
<artifactId>li.strolch-maven-archetypes</artifactId>
|
||||
<artifactId>strolch-maven-archetypes</artifactId>
|
||||
<version>0.1.0-SNAPSHOT</version>
|
||||
|
||||
<name>li.strolch-maven-archetypes</name>
|
||||
<description>Module build for strolch maven archetypes</description>
|
||||
<packaging>pom</packaging>
|
||||
<url>http://www.strolch.li</url>
|
||||
<url>https://www.strolch.li</url>
|
||||
<inceptionYear>2022</inceptionYear>
|
||||
|
||||
<issueManagement>
|
||||
|
@ -27,13 +27,13 @@
|
|||
<licenses>
|
||||
<license>
|
||||
<name>Apache License 2.0</name>
|
||||
<url>http://www.apache.org/licenses/LICENSE-2.0</url>
|
||||
<url>https://www.apache.org/licenses/LICENSE-2.0</url>
|
||||
</license>
|
||||
</licenses>
|
||||
|
||||
<organization>
|
||||
<name>Strolch</name>
|
||||
<url>http://www.strolch.li</url>
|
||||
<url>https://www.strolch.li</url>
|
||||
</organization>
|
||||
|
||||
<developers>
|
||||
|
@ -41,7 +41,7 @@
|
|||
<id>eitch</id>
|
||||
<name>Robert von Burg</name>
|
||||
<email>eitch@eitchnet.ch</email>
|
||||
<url>http://www.eitchnet.ch</url>
|
||||
<url>https://www.eitchnet.ch</url>
|
||||
<roles>
|
||||
<role>architect</role>
|
||||
<role>developer</role>
|
||||
|
@ -54,20 +54,37 @@
|
|||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<maven.build.timestamp.format>yyyy-MM-dd HH:mm:ss</maven.build.timestamp.format>
|
||||
<buildTimestamp>${maven.build.timestamp}</buildTimestamp>
|
||||
|
||||
<jdk.version>21</jdk.version>
|
||||
<maven.compiler.source>${jdk.version}</maven.compiler.source>
|
||||
<maven.compiler.target>${jdk.version}</maven.compiler.target>
|
||||
|
||||
<maven-resources-plugin.version>3.2.0</maven-resources-plugin.version>
|
||||
<archetype-packaging.version>3.2.0</archetype-packaging.version>
|
||||
<maven-source-plugin.version>3.2.1</maven-source-plugin.version>
|
||||
<maven-javadoc-plugin.version>3.3.1</maven-javadoc-plugin.version>
|
||||
<maven-gpg-plugin.version>3.0.1</maven-gpg-plugin.version>
|
||||
<maven-deploy-plugin.version>3.1.1</maven-deploy-plugin.version>
|
||||
<nexus-staging-maven-plugin.version>1.6.13</nexus-staging-maven-plugin.version>
|
||||
</properties>
|
||||
|
||||
<modules>
|
||||
<module>li.strolch.mvn.archetype.main</module>
|
||||
<module>li.strolch.mvn.archetype.webapp</module>
|
||||
<module>li.strolch.mvn.archetype.plc</module>
|
||||
<module>strolch.mvn.archetype.main</module>
|
||||
<module>strolch.mvn.archetype.webapp</module>
|
||||
<module>strolch.mvn.archetype.plc</module>
|
||||
</modules>
|
||||
|
||||
<build>
|
||||
|
||||
<pluginManagement>
|
||||
<plugins>
|
||||
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-archetype-plugin</artifactId>
|
||||
<version>${archetype-packaging.version}</version>
|
||||
</plugin>
|
||||
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-resources-plugin</artifactId>
|
||||
|
@ -76,9 +93,224 @@
|
|||
<encoding>${project.build.sourceEncoding}</encoding>
|
||||
</configuration>
|
||||
</plugin>
|
||||
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-source-plugin</artifactId>
|
||||
<version>${maven-source-plugin.version}</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>attach-sources</id>
|
||||
<goals>
|
||||
<goal>jar</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-javadoc-plugin</artifactId>
|
||||
<version>${maven-javadoc-plugin.version}</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>attach-javadocs</id>
|
||||
<goals>
|
||||
<goal>jar</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
<configuration>
|
||||
<source>${jdk.version}</source>
|
||||
<doclint>none</doclint>
|
||||
</configuration>
|
||||
</plugin>
|
||||
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-gpg-plugin</artifactId>
|
||||
<version>${maven-gpg-plugin.version}</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>sign-artifacts</id>
|
||||
<phase>verify</phase>
|
||||
<goals>
|
||||
<goal>sign</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<keyname>${gpg.keyname}</keyname>
|
||||
<passphraseServerId>${gpg.keyname}</passphraseServerId>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-deploy-plugin</artifactId>
|
||||
<version>${maven-deploy-plugin.version}</version>
|
||||
<configuration>
|
||||
<skip>true</skip>
|
||||
</configuration>
|
||||
</plugin>
|
||||
|
||||
<plugin>
|
||||
<groupId>org.sonatype.plugins</groupId>
|
||||
<artifactId>nexus-staging-maven-plugin</artifactId>
|
||||
<version>${nexus-staging-maven-plugin.version}</version>
|
||||
</plugin>
|
||||
|
||||
</plugins>
|
||||
</pluginManagement>
|
||||
|
||||
</build>
|
||||
|
||||
<distributionManagement>
|
||||
<repository>
|
||||
<id>repo.strolch.li</id>
|
||||
<url>https://repo.strolch.li/repository/strolch-releases/</url>
|
||||
</repository>
|
||||
<snapshotRepository>
|
||||
<id>repo.strolch.li</id>
|
||||
<url>https://repo.strolch.li/repository/strolch-snapshots/</url>
|
||||
</snapshotRepository>
|
||||
<site>
|
||||
<id>localhost</id>
|
||||
<url>file://${project.basedir}/target</url>
|
||||
</site>
|
||||
</distributionManagement>
|
||||
|
||||
<profiles>
|
||||
|
||||
<profile>
|
||||
<id>deploy-snapshots</id>
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-gpg-plugin</artifactId>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-source-plugin</artifactId>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-javadoc-plugin</artifactId>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.sonatype.plugins</groupId>
|
||||
<artifactId>nexus-staging-maven-plugin</artifactId>
|
||||
<extensions>true</extensions>
|
||||
<configuration>
|
||||
<serverId>repo.strolch.li</serverId>
|
||||
<nexusUrl>https://repo.strolch.li/</nexusUrl>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>default-deploy</id>
|
||||
<phase>deploy</phase>
|
||||
<goals>
|
||||
<goal>deploy</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</profile>
|
||||
<profile>
|
||||
<id>deploy-releases</id>
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-gpg-plugin</artifactId>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-source-plugin</artifactId>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-javadoc-plugin</artifactId>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.sonatype.plugins</groupId>
|
||||
<artifactId>nexus-staging-maven-plugin</artifactId>
|
||||
<extensions>true</extensions>
|
||||
<configuration>
|
||||
<serverId>repo.strolch.li</serverId>
|
||||
<nexusUrl>https://repo.strolch.li/</nexusUrl>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>default-deploy</id>
|
||||
<phase>deploy</phase>
|
||||
<goals>
|
||||
<goal>deploy</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</profile>
|
||||
|
||||
<profile>
|
||||
<id>deploy-maven-central</id>
|
||||
<distributionManagement>
|
||||
<repository>
|
||||
<id>oss.sonatype.org</id>
|
||||
<url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
|
||||
</repository>
|
||||
<snapshotRepository>
|
||||
<id>oss.sonatype.org</id>
|
||||
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
|
||||
</snapshotRepository>
|
||||
<site>
|
||||
<id>localhost</id>
|
||||
<url>file://${project.basedir}/target</url>
|
||||
</site>
|
||||
</distributionManagement>
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-gpg-plugin</artifactId>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-source-plugin</artifactId>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-javadoc-plugin</artifactId>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.sonatype.plugins</groupId>
|
||||
<artifactId>nexus-staging-maven-plugin</artifactId>
|
||||
<extensions>true</extensions>
|
||||
<configuration>
|
||||
<serverId>oss.sonatype.org</serverId>
|
||||
<nexusUrl>https://oss.sonatype.org/</nexusUrl>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>deploy-to-sonatype</id>
|
||||
<phase>deploy</phase>
|
||||
<goals>
|
||||
<goal>deploy</goal>
|
||||
<goal>release</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</profile>
|
||||
|
||||
</profiles>
|
||||
|
||||
</project>
|
||||
|
|
|
@ -4,13 +4,13 @@
|
|||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<parent>
|
||||
<groupId>li.strolch</groupId>
|
||||
<artifactId>li.strolch-maven-archetypes</artifactId>
|
||||
<artifactId>strolch-maven-archetypes</artifactId>
|
||||
<version>0.1.0-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
<artifactId>li.strolch.mvn.archetype.webapp</artifactId>
|
||||
<artifactId>strolch.mvn.archetype.main</artifactId>
|
||||
<packaging>maven-archetype</packaging>
|
||||
|
||||
<distributionManagement>
|
||||
|
@ -19,7 +19,6 @@
|
|||
<url>file://${project.basedir}/../target/${project.artifactId}</url>
|
||||
</site>
|
||||
</distributionManagement>
|
||||
|
||||
<build>
|
||||
|
||||
<resources>
|
|
@ -3,7 +3,7 @@
|
|||
http://maven.apache.org/xsd/archetype-descriptor-1.0.0.xsd"
|
||||
xmlns="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
name="li.strolch.mvn.archetype.main">
|
||||
name="strolch.mvn.archetype.main">
|
||||
|
||||
<requiredProperties>
|
||||
<requiredProperty key="appName">
|
|
@ -10,9 +10,9 @@
|
|||
|
||||
<scm>
|
||||
<!-- TODO: Change this to your SCM URL -->
|
||||
<connection>scm:git:https://github.com/4treesCH/strolch.git</connection>
|
||||
<developerConnection>scm:git:https://github.com/4treesCH/strolch.git</developerConnection>
|
||||
<url>https://github.com/4treesCH/strolch</url>
|
||||
<connection>scm:git:https://github.com/strolch-li/strolch.git</connection>
|
||||
<developerConnection>scm:git:https://github.com/strolch-li/strolch.git</developerConnection>
|
||||
<url>https://github.com/strolch-li/strolch</url>
|
||||
</scm>
|
||||
|
||||
<properties>
|
||||
|
@ -22,14 +22,16 @@
|
|||
<maven.build.timestamp.format>yyyy-MM-dd HH:mm:ss</maven.build.timestamp.format>
|
||||
<buildTimestamp>${maven.build.timestamp}</buildTimestamp>
|
||||
|
||||
<jdk.version>17</jdk.version>
|
||||
<jdk.version>21</jdk.version>
|
||||
<maven.compiler.source>${jdk.version}</maven.compiler.source>
|
||||
<maven.compiler.target>${jdk.version}</maven.compiler.target>
|
||||
|
||||
<!-- compile time dependencies -->
|
||||
<slf4j.version>1.7.30</slf4j.version>
|
||||
<logback.version>1.2.9</logback.version>
|
||||
<gson.version>2.8.9</gson.version>
|
||||
<slf4j.version>2.0.5</slf4j.version>
|
||||
<logback.version>1.4.14</logback.version>
|
||||
<gson.version>2.10</gson.version>
|
||||
|
||||
<strolch.version>1.8.5</strolch.version>
|
||||
<strolch.version>2.2.3</strolch.version>
|
||||
|
||||
<!-- test time dependencies -->
|
||||
<junit.version>4.13.2</junit.version>
|
||||
|
@ -41,13 +43,12 @@
|
|||
<versions-maven-plugin.version>2.8.1</versions-maven-plugin.version>
|
||||
<maven-compiler-plugin.version>3.8.1</maven-compiler-plugin.version>
|
||||
<maven-source-plugin.version>3.2.1</maven-source-plugin.version>
|
||||
<maven-site-plugin.version>3.10.0</maven-site-plugin.version>
|
||||
<maven-eclipse-plugin.version>2.10</maven-eclipse-plugin.version>
|
||||
<maven-site-plugin.version>3.12.1</maven-site-plugin.version>
|
||||
<maven-jar-plugin.version>3.2.0</maven-jar-plugin.version>
|
||||
<maven-war-plugin.version>3.3.2</maven-war-plugin.version>
|
||||
<maven-war-plugin.version>3.4.0</maven-war-plugin.version>
|
||||
<tomcat7-maven-plugin.version>2.2</tomcat7-maven-plugin.version>
|
||||
<maven-javadoc-plugin.version>3.3.1</maven-javadoc-plugin.version>
|
||||
<maven-deploy-plugin.version>3.0.0-M2</maven-deploy-plugin.version>
|
||||
<maven-deploy-plugin.version>3.1.1</maven-deploy-plugin.version>
|
||||
<maven-resources-plugin.version>3.2.0</maven-resources-plugin.version>
|
||||
<maven-dependency-plugin.version>3.2.0</maven-dependency-plugin.version>
|
||||
<maven-assembly-plugin.version>3.3.0</maven-assembly-plugin.version>
|
||||
|
@ -65,7 +66,7 @@
|
|||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>li.strolch</groupId>
|
||||
<artifactId>li.strolch.bom</artifactId>
|
||||
<artifactId>strolch-bom</artifactId>
|
||||
<type>pom</type>
|
||||
<version>${strolch.version}</version>
|
||||
<scope>import</scope>
|
|
@ -9,7 +9,6 @@
|
|||
<Parameter name="secretSalt" value="CHANGE-ME-2"/>
|
||||
<Parameter name="persistSessions" value="true"/>
|
||||
<Parameter name="autoPersistOnUserChangesData" value="true"/>
|
||||
<Parameter name="privilegeConflictResolution" value="MERGE"/>
|
||||
<Parameter name="allowSessionRefresh" value="true"/>
|
||||
</Parameters>
|
||||
|
|
@ -1,6 +1,18 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Roles>
|
||||
|
||||
<Role name="AppUser">
|
||||
<Privilege name="li.strolch.service.api.Service" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="li.strolch.search.StrolchSearch" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="li.strolch.report.ReportSearch" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
</Role>
|
||||
|
||||
<!--
|
||||
Internal
|
||||
-->
|
||||
|
@ -44,6 +56,12 @@
|
|||
</Role>
|
||||
|
||||
<Role name="StrolchAdmin">
|
||||
<Privilege name="Inspector" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="Agent" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeAddUser" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
|
@ -62,9 +80,6 @@
|
|||
<Privilege name="li.strolch.report.ReportSearch" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="li.strolch.model.query.StrolchQuery" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="li.strolch.job.StrolchJob" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
|
@ -85,61 +100,32 @@
|
|||
<Privilege name="PrivilegeSetUserLocale" policy="UserAccessPrivilege"/>
|
||||
</Role>
|
||||
<Role name="PrivilegeAdmin">
|
||||
<Privilege name="li.strolch.service.api.Service" policy="DefaultPrivilege">
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeUpdateUserService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeUpdateUserRolesService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeSetUserPasswordService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeSetUserLocaleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeRemoveUserService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeRemoveRoleFromUserService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeAddUserService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeAddRoleToUserService</Allow>
|
||||
<Allow>li.strolch.service.privilege.roles.PrivilegeUpdateRoleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.roles.PrivilegeRemoveRoleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.roles.PrivilegeRemovePrivilegeFromRoleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.roles.PrivilegeAddRoleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.roles.PrivilegeAddOrReplacePrivilegeOnRoleService</Allow>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeAddUser" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeRemoveUser" policy="UserAccessPrivilege">
|
||||
<Privilege name="GetSession" policy="UserSessionAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="InvalidateSession" policy="UserSessionAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeSetUserPassword" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="RequirePasswordChange" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeSetUserLocale" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeAction" policy="DefaultPrivilege">
|
||||
<Allow>Reload</Allow>
|
||||
<Allow>GetCertificates</Allow>
|
||||
<Allow>GetPolicies</Allow>
|
||||
<Allow>Persist</Allow>
|
||||
<Allow>GetCertificates</Allow>
|
||||
<Allow>PersistSessions</Allow>
|
||||
<Allow>Reload</Allow>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeGetUser" policy="UserAccessPrivilege">
|
||||
<Privilege name="PrivilegeAddRole" policy="RoleAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeSetUserState" policy="UserAccessPrivilege">
|
||||
<Deny>SYSTEM</Deny>
|
||||
<Allow>DISABLED</Allow>
|
||||
<Allow>ENABLED</Allow>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeAddRoleToUser" policy="UserAccessPrivilege">
|
||||
<Privilege name="PrivilegeAddUser" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeGetRole" policy="RoleAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="GetSession" policy="UserSessionAccessPrivilege">
|
||||
<Privilege name="PrivilegeGetUser" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeModifyRole" policy="RoleAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeModifyUser" policy="UserAccessPrivilege">
|
||||
|
@ -148,15 +134,35 @@
|
|||
<Privilege name="PrivilegeRemoveRole" policy="RoleAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeRemoveRoleFromUser" policy="UserAccessPrivilege">
|
||||
<Privilege name="PrivilegeRemoveUser" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeModifyRole" policy="RoleAccessPrivilege">
|
||||
<Privilege name="PrivilegeSetUserLocale" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeAddRole" policy="RoleAccessPrivilege">
|
||||
<Privilege name="PrivilegeSetUserPassword" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeSetUserState" policy="UserAccessPrivilege">
|
||||
<Deny>SYSTEM</Deny>
|
||||
<Allow>DISABLED</Allow>
|
||||
<Allow>ENABLED</Allow>
|
||||
</Privilege>
|
||||
<Privilege name="RequirePasswordChange" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="li.strolch.service.api.Service" policy="DefaultPrivilege">
|
||||
<Allow>li.strolch.service.privilege.roles.PrivilegeAddRoleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.roles.PrivilegeRemoveRoleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.roles.PrivilegeUpdateRoleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeAddUserService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeRemoveUserService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeSetUserLocaleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeSetUserPasswordService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeSetUserStateService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeUpdateUserRolesService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeUpdateUserService</Allow>
|
||||
</Privilege>
|
||||
</Role>
|
||||
|
||||
<Role name="agent">
|
||||
|
@ -182,9 +188,6 @@
|
|||
<Privilege name="PrivilegeGetUser" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="li.strolch.model.query.StrolchQuery" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="li.strolch.service.api.Service" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
|
@ -5,7 +5,6 @@
|
|||
<applicationName>${appName}</applicationName>
|
||||
<Properties>
|
||||
<locale>en</locale>
|
||||
<verbose>true</verbose>
|
||||
<timezone>Europe/Zurich</timezone>
|
||||
</Properties>
|
||||
</Runtime>
|
||||
|
@ -26,7 +25,6 @@
|
|||
<realms>defaultRealm</realms>
|
||||
<dataStoreMode>TRANSIENT</dataStoreMode>
|
||||
<dataStoreFile>Model.xml</dataStoreFile>
|
||||
<enableObserverUpdates>true</enableObserverUpdates>
|
||||
</Properties>
|
||||
</Component>
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<StrolchModel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="https://strolch.li/xsd/StrolchModel-1.6.xsd"
|
||||
xsi:schemaLocation="https://strolch.li/xsd/StrolchModel-1.6.xsd StrolchModel.xsd">
|
||||
<StrolchModel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="https://strolch.li/schema/StrolchModel.xsd"
|
||||
xsi:schemaLocation="https://strolch.li/schema/StrolchModel.xsd https://strolch.li/xsd/StrolchModel-2.0.xsd">
|
||||
|
||||
<Resource Id="yellowBall" Name="Yellow Ball" Type="Ball">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
|
@ -1,6 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="https://strolch.li/xsd/StrolchModel-1.6.xsd"
|
||||
xmlns="https://strolch.li/xsd/StrolchModel-1.6.xsd"
|
||||
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="https://strolch.li/schema/StrolchModel.xsd"
|
||||
xmlns="https://strolch.li/schema/StrolchModel.xsd"
|
||||
elementFormDefault="qualified" attributeFormDefault="unqualified">
|
||||
|
||||
<xs:annotation>
|
|
@ -9,7 +9,6 @@
|
|||
<Parameter name="secretSalt" value="CHANGE-ME-2"/>
|
||||
<Parameter name="persistSessions" value="true"/>
|
||||
<Parameter name="autoPersistOnUserChangesData" value="true"/>
|
||||
<Parameter name="privilegeConflictResolution" value="MERGE"/>
|
||||
</Parameters>
|
||||
|
||||
<EncryptionHandler class="li.strolch.privilege.handler.DefaultEncryptionHandler">
|
|
@ -9,9 +9,6 @@
|
|||
<Privilege name="li.strolch.service.api.Service" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="li.strolch.model.query.StrolchQuery" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="li.strolch.search.StrolchSearch" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
|
@ -58,9 +55,6 @@
|
|||
<Privilege name="li.strolch.service.api.Service" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="li.strolch.model.query.StrolchQuery" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="li.strolch.search.StrolchSearch" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
|
@ -5,7 +5,7 @@
|
|||
<applicationName>${appName}</applicationName>
|
||||
<Properties>
|
||||
<locale>en</locale>
|
||||
<verbose>true</verbose>
|
||||
<timezone>Europe/Zurich</timezone>
|
||||
</Properties>
|
||||
</Runtime>
|
||||
<Component>
|
||||
|
@ -25,7 +25,6 @@
|
|||
<realms>defaultRealm</realms>
|
||||
<dataStoreMode>TRANSIENT</dataStoreMode>
|
||||
<dataStoreFile>Model.xml</dataStoreFile>
|
||||
<enableObserverUpdates>true</enableObserverUpdates>
|
||||
</Properties>
|
||||
</Component>
|
||||
<Component>
|
|
@ -1,6 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<StrolchModel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="https://strolch.li/xsd/StrolchModel-1.6.xsd"
|
||||
xsi:schemaLocation="https://strolch.li/xsd/StrolchModel-1.6.xsd StrolchModel.xsd">
|
||||
<StrolchModel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="https://strolch.li/schema/StrolchModel.xsd"
|
||||
xsi:schemaLocation="https://strolch.li/schema/StrolchModel.xsd https://strolch.li/xsd/StrolchModel-2.0.xsd">
|
||||
|
||||
<!-- include root model here -->
|
||||
<IncludeFile file="../../../runtime/data/Model.xml"/>
|
|
@ -4,13 +4,13 @@
|
|||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<parent>
|
||||
<groupId>li.strolch</groupId>
|
||||
<artifactId>li.strolch-maven-archetypes</artifactId>
|
||||
<artifactId>strolch-maven-archetypes</artifactId>
|
||||
<version>0.1.0-SNAPSHOT</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
<artifactId>li.strolch.mvn.archetype.plc</artifactId>
|
||||
<artifactId>strolch.mvn.archetype.plc</artifactId>
|
||||
<packaging>maven-archetype</packaging>
|
||||
|
||||
<distributionManagement>
|
|
@ -3,7 +3,7 @@
|
|||
http://maven.apache.org/xsd/archetype-descriptor-1.0.0.xsd"
|
||||
xmlns="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
name="li.strolch.mvn.archetype.webapp">
|
||||
name="strolch.mvn.archetype.plc">
|
||||
|
||||
<requiredProperties>
|
||||
<requiredProperty key="appName">
|
|
@ -38,46 +38,46 @@
|
|||
<!-- strolch -->
|
||||
<dependency>
|
||||
<groupId>li.strolch</groupId>
|
||||
<artifactId>li.strolch.model</artifactId>
|
||||
<artifactId>model</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>li.strolch</groupId>
|
||||
<artifactId>li.strolch.agent</artifactId>
|
||||
<artifactId>agent</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>li.strolch</groupId>
|
||||
<artifactId>li.strolch.rest</artifactId>
|
||||
<artifactId>rest</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>li.strolch</groupId>
|
||||
<artifactId>li.strolch.service</artifactId>
|
||||
<artifactId>service</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>li.strolch</groupId>
|
||||
<artifactId>li.strolch.testbase</artifactId>
|
||||
<artifactId>test-base</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>li.strolch</groupId>
|
||||
<artifactId>li.strolch.persistence.xml</artifactId>
|
||||
<artifactId>persistence.xml</artifactId>
|
||||
</dependency>
|
||||
|
||||
<!-- PLC -->
|
||||
<dependency>
|
||||
<groupId>li.strolch</groupId>
|
||||
<artifactId>strolch-plc-core</artifactId>
|
||||
<artifactId>plc-core</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>li.strolch</groupId>
|
||||
<artifactId>strolch-plc-rest</artifactId>
|
||||
<artifactId>plc-rest</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>li.strolch</groupId>
|
||||
<artifactId>strolch-plc-gw-client</artifactId>
|
||||
<artifactId>plc-gw-client</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>li.strolch</groupId>
|
||||
<artifactId>strolch-plc-util</artifactId>
|
||||
<artifactId>plc-util</artifactId>
|
||||
</dependency>
|
||||
|
||||
<!-- my-app -->
|
||||
|
@ -86,22 +86,38 @@
|
|||
<artifactId>${rootArtifactId}-shared</artifactId>
|
||||
</dependency>
|
||||
|
||||
<!-- web -->
|
||||
<!-- REST using Apache Jersey -->
|
||||
<dependency>
|
||||
<groupId>com.google.code.gson</groupId>
|
||||
<artifactId>gson</artifactId>
|
||||
<groupId>jakarta.annotation</groupId>
|
||||
<artifactId>jakarta.annotation-api</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>javax.servlet</groupId>
|
||||
<artifactId>javax.servlet-api</artifactId>
|
||||
<groupId>jakarta.activation</groupId>
|
||||
<artifactId>jakarta.activation-api</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>javax.websocket</groupId>
|
||||
<artifactId>javax.websocket-api</artifactId>
|
||||
<groupId>jakarta.servlet</groupId>
|
||||
<artifactId>jakarta.servlet-api</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.glassfish.jersey.bundles</groupId>
|
||||
<artifactId>jaxrs-ri</artifactId>
|
||||
<groupId>jakarta.xml.bind</groupId>
|
||||
<artifactId>jakarta.xml.bind-api</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>jakarta.ws.rs</groupId>
|
||||
<artifactId>jakarta.ws.rs-api</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.glassfish.jersey.containers</groupId>
|
||||
<artifactId>jersey-container-servlet</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.glassfish.jersey.containers</groupId>
|
||||
<artifactId>jersey-container-grizzly2-servlet</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.glassfish.jersey.inject</groupId>
|
||||
<artifactId>jersey-hk2</artifactId>
|
||||
</dependency>
|
||||
|
||||
<!-- test -->
|
|
@ -9,7 +9,6 @@
|
|||
<Parameter name="secretSalt" value="CHANGE-ME-2"/>
|
||||
<Parameter name="persistSessions" value="true"/>
|
||||
<Parameter name="autoPersistOnUserChangesData" value="false"/>
|
||||
<Parameter name="privilegeConflictResolution" value="MERGE"/>
|
||||
<Parameter name="allowSessionRefresh" value="true"/>
|
||||
</Parameters>
|
||||
|
|
@ -1,21 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Roles>
|
||||
|
||||
<Role name="AppUser">
|
||||
<Privilege name="li.strolch.service.api.Service" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="li.strolch.model.query.StrolchQuery" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="li.strolch.search.StrolchSearch" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="li.strolch.report.ReportSearch" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
</Role>
|
||||
|
||||
<!--
|
||||
Internal
|
||||
-->
|
||||
|
@ -59,6 +44,12 @@
|
|||
</Role>
|
||||
|
||||
<Role name="StrolchAdmin">
|
||||
<Privilege name="Inspector" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="Agent" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeAddUser" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
|
@ -77,9 +68,6 @@
|
|||
<Privilege name="li.strolch.report.ReportSearch" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="li.strolch.model.query.StrolchQuery" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="li.strolch.job.StrolchJob" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
|
@ -100,61 +88,32 @@
|
|||
<Privilege name="PrivilegeSetUserLocale" policy="UserAccessPrivilege"/>
|
||||
</Role>
|
||||
<Role name="PrivilegeAdmin">
|
||||
<Privilege name="li.strolch.service.api.Service" policy="DefaultPrivilege">
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeUpdateUserService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeUpdateUserRolesService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeSetUserPasswordService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeSetUserLocaleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeRemoveUserService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeRemoveRoleFromUserService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeAddUserService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeAddRoleToUserService</Allow>
|
||||
<Allow>li.strolch.service.privilege.roles.PrivilegeUpdateRoleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.roles.PrivilegeRemoveRoleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.roles.PrivilegeRemovePrivilegeFromRoleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.roles.PrivilegeAddRoleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.roles.PrivilegeAddOrReplacePrivilegeOnRoleService</Allow>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeAddUser" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeRemoveUser" policy="UserAccessPrivilege">
|
||||
<Privilege name="GetSession" policy="UserSessionAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="InvalidateSession" policy="UserSessionAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeSetUserPassword" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="RequirePasswordChange" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeSetUserLocale" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeAction" policy="DefaultPrivilege">
|
||||
<Allow>Reload</Allow>
|
||||
<Allow>GetCertificates</Allow>
|
||||
<Allow>GetPolicies</Allow>
|
||||
<Allow>Persist</Allow>
|
||||
<Allow>GetCertificates</Allow>
|
||||
<Allow>PersistSessions</Allow>
|
||||
<Allow>Reload</Allow>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeGetUser" policy="UserAccessPrivilege">
|
||||
<Privilege name="PrivilegeAddRole" policy="RoleAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeSetUserState" policy="UserAccessPrivilege">
|
||||
<Deny>SYSTEM</Deny>
|
||||
<Allow>DISABLED</Allow>
|
||||
<Allow>ENABLED</Allow>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeAddRoleToUser" policy="UserAccessPrivilege">
|
||||
<Privilege name="PrivilegeAddUser" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeGetRole" policy="RoleAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="GetSession" policy="UserSessionAccessPrivilege">
|
||||
<Privilege name="PrivilegeGetUser" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeModifyRole" policy="RoleAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeModifyUser" policy="UserAccessPrivilege">
|
||||
|
@ -163,15 +122,35 @@
|
|||
<Privilege name="PrivilegeRemoveRole" policy="RoleAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeRemoveRoleFromUser" policy="UserAccessPrivilege">
|
||||
<Privilege name="PrivilegeRemoveUser" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeModifyRole" policy="RoleAccessPrivilege">
|
||||
<Privilege name="PrivilegeSetUserLocale" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeAddRole" policy="RoleAccessPrivilege">
|
||||
<Privilege name="PrivilegeSetUserPassword" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeSetUserState" policy="UserAccessPrivilege">
|
||||
<Deny>SYSTEM</Deny>
|
||||
<Allow>DISABLED</Allow>
|
||||
<Allow>ENABLED</Allow>
|
||||
</Privilege>
|
||||
<Privilege name="RequirePasswordChange" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="li.strolch.service.api.Service" policy="DefaultPrivilege">
|
||||
<Allow>li.strolch.service.privilege.roles.PrivilegeAddRoleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.roles.PrivilegeRemoveRoleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.roles.PrivilegeUpdateRoleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeAddUserService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeRemoveUserService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeSetUserLocaleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeSetUserPasswordService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeSetUserStateService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeUpdateUserRolesService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeUpdateUserService</Allow>
|
||||
</Privilege>
|
||||
</Role>
|
||||
|
||||
<Role name="agent">
|
||||
|
@ -197,9 +176,6 @@
|
|||
<Privilege name="PrivilegeGetUser" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="li.strolch.model.query.StrolchQuery" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="li.strolch.service.api.Service" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
|
@ -5,7 +5,6 @@
|
|||
<applicationName>${appName} PLC</applicationName>
|
||||
<Properties>
|
||||
<locale>en</locale>
|
||||
<verbose>true</verbose>
|
||||
<timezone>Europe/Zurich</timezone>
|
||||
</Properties>
|
||||
</Runtime>
|
||||
|
@ -24,7 +23,6 @@
|
|||
<realms>defaultRealm</realms>
|
||||
<dataStoreMode>TRANSIENT</dataStoreMode>
|
||||
<dataStoreFile>defaultModel.xml</dataStoreFile>
|
||||
<enableObserverUpdates>true</enableObserverUpdates>
|
||||
</Properties>
|
||||
</Component>
|
||||
|
||||
|
@ -78,13 +76,12 @@
|
|||
|
||||
<Component>
|
||||
<name>SessionHandler</name>
|
||||
<api>li.strolch.rest.StrolchSessionHandler</api>
|
||||
<impl>li.strolch.rest.DefaultStrolchSessionHandler</impl>
|
||||
<api>li.strolch.runtime.sessions.StrolchSessionHandler</api>
|
||||
<impl>li.strolch.runtime.sessions.DefaultStrolchSessionHandler</impl>
|
||||
<depends>PrivilegeHandler</depends>
|
||||
<Properties>
|
||||
<session.ttl.minutes>30</session.ttl.minutes>
|
||||
<session.ttl.minutes>1440</session.ttl.minutes>
|
||||
<session.maxKeepAlive.minutes>10080</session.maxKeepAlive.minutes>
|
||||
<session.reload>true</session.reload>
|
||||
</Properties>
|
||||
</Component>
|
||||
<Component>
|
|
@ -1,6 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="https://strolch.li/xsd/StrolchModel-1.6.xsd"
|
||||
xmlns="https://strolch.li/xsd/StrolchModel-1.6.xsd"
|
||||
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="https://strolch.li/schema/StrolchModel.xsd"
|
||||
xmlns="https://strolch.li/schema/StrolchModel.xsd"
|
||||
elementFormDefault="qualified" attributeFormDefault="unqualified">
|
||||
|
||||
<xs:annotation>
|
|
@ -1,6 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<StrolchModel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="https://strolch.li/xsd/StrolchModel-1.6.xsd"
|
||||
xsi:schemaLocation="https://strolch.li/xsd/StrolchModel-1.6.xsd StrolchModel-1.6.xsd">
|
||||
<StrolchModel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="https://strolch.li/schema/StrolchModel.xsd"
|
||||
xsi:schemaLocation="https://strolch.li/schema/StrolchModel.xsd https://strolch.li/xsd/StrolchModel-2.0.xsd">
|
||||
|
||||
<IncludeFile file="plc-templates.xml"/>
|
||||
<IncludeFile file="plc-state.xml"/>
|
|
@ -1,6 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<StrolchModel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="https://strolch.li/xsd/StrolchModel-1.6.xsd"
|
||||
xsi:schemaLocation="https://strolch.li/xsd/StrolchModel-1.6.xsd StrolchModel-1.6.xsd">
|
||||
<StrolchModel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="https://strolch.li/schema/StrolchModel.xsd"
|
||||
xsi:schemaLocation="https://strolch.li/schema/StrolchModel.xsd https://strolch.li/xsd/StrolchModel-2.0.xsd">
|
||||
|
||||
<Resource Id="configuration" Name="Configuration" Type="Configuration">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
|
@ -1,5 +1,5 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<StrolchModel xmlns="https://strolch.li/xsd/StrolchModel-1.6.xsd">
|
||||
<StrolchModel xmlns="https://strolch.li/schema/StrolchModel.xsd">
|
||||
|
||||
<Resource Id="PlcLogicalDevice" Name="PlcLogicalDevice Template" Type="Template">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
|
@ -1,6 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<StrolchModel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="https://strolch.li/xsd/StrolchModel-1.6.xsd"
|
||||
xsi:schemaLocation="https://strolch.li/xsd/StrolchModel-1.6.xsd StrolchModel-1.6.xsd">
|
||||
<StrolchModel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="https://strolch.li/schema/StrolchModel.xsd"
|
||||
xsi:schemaLocation="https://strolch.li/schema/StrolchModel.xsd https://strolch.li/xsd/StrolchModel-2.0.xsd">
|
||||
|
||||
<!--
|
||||
Barcode reader connection, currently place holder with RandomString
|
|
@ -2,7 +2,7 @@ package ${package}.plc.web.web;
|
|||
|
||||
import static ${package}.plc.web.web.StartupListener.APP_NAME;
|
||||
|
||||
import javax.ws.rs.ApplicationPath;
|
||||
import jakarta.ws.rs.ApplicationPath;
|
||||
import java.util.logging.Level;
|
||||
|
||||
import li.strolch.plc.rest.PlcConnectionsResource;
|
|
@ -2,14 +2,13 @@ package ${package}.plc.web.web;
|
|||
|
||||
import static li.strolch.utils.helper.ExceptionHelper.hasCause;
|
||||
|
||||
import javax.servlet.ServletContextEvent;
|
||||
import javax.servlet.ServletContextListener;
|
||||
import javax.servlet.annotation.WebListener;
|
||||
import jakarta.servlet.ServletContextEvent;
|
||||
import jakarta.servlet.ServletContextListener;
|
||||
import jakarta.servlet.annotation.WebListener;
|
||||
import java.io.File;
|
||||
import java.io.InputStream;
|
||||
|
||||
import ch.qos.logback.classic.LoggerContext;
|
||||
import ch.qos.logback.classic.util.ContextInitializer;
|
||||
import li.strolch.agent.api.LoggingLoader;
|
||||
import li.strolch.agent.api.StrolchAgent;
|
||||
import li.strolch.agent.api.StrolchBootstrapper;
|
||||
import li.strolch.exception.StrolchException;
|
||||
|
@ -19,13 +18,12 @@ import li.strolch.utils.helper.StringHelper;
|
|||
import li.strolch.xmlpers.api.XmlPersistenceException;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.slf4j.impl.StaticLoggerBinder;
|
||||
|
||||
@WebListener
|
||||
public class StartupListener implements ServletContextListener {
|
||||
|
||||
private static final Logger logger = LoggerFactory.getLogger(StartupListener.class);
|
||||
public static final String APP_NAME = "MyApp";
|
||||
public static final String APP_NAME = "${appName}";
|
||||
|
||||
private StrolchAgent agent;
|
||||
|
||||
|
@ -86,12 +84,7 @@ public class StartupListener implements ServletContextListener {
|
|||
|
||||
@Override
|
||||
public void contextDestroyed(ServletContextEvent sce) {
|
||||
try {
|
||||
new ContextInitializer((LoggerContext) StaticLoggerBinder.getSingleton().getLoggerFactory()).autoConfig();
|
||||
} catch (Exception e) {
|
||||
System.err.println("Failed to reconfigure logging...");
|
||||
e.printStackTrace(System.err);
|
||||
}
|
||||
LoggingLoader.reloadLoggingConfiguration();
|
||||
|
||||
if (this.agent != null) {
|
||||
logger.info("Destroying " + APP_NAME + "...");
|
|
@ -86,7 +86,7 @@
|
|||
if (e.detail.title != null)
|
||||
dlgTitle = e.detail.title;
|
||||
else
|
||||
dlgTitle = e.detail.isError ? 'errorOccurred' : 'info';
|
||||
dlgTitle = 'info';
|
||||
var dlgText;
|
||||
if (e.detail.text)
|
||||
dlgText = e.detail.text;
|
|
@ -89,12 +89,12 @@
|
|||
<paper-item id="logout" class="menu-item">[[localize('logout')]]</paper-item>
|
||||
</paper-menu>
|
||||
|
||||
<paper-material id="container" class="container info-div" elevation="0">
|
||||
<paper-material class="container info-div" elevation="0">
|
||||
<p>[[userConfig.firstname]] [[userConfig.lastname]] / [[userConfig.username]]</p>
|
||||
<p title="[[version.appVersion.scmRevision]]">[[version.appVersion.artifactVersion]]</p>
|
||||
<p title="[[version.appVersion.scmRevision]]">[[version.appVersion.artifactVersion]] @ [[environment]]</p>
|
||||
</paper-material>
|
||||
|
||||
<paper-material id="container" class="container" elevation="0">
|
||||
<paper-material class="container" elevation="0">
|
||||
<paper-dropdown-menu label="[[localize('language')]]">
|
||||
<paper-listbox class="dropdown-content" selected="{{userLocale}}" attr-for-selected="data">
|
||||
<paper-item data="de">Deutsch</paper-item>
|
||||
|
@ -137,7 +137,11 @@
|
|||
observer: "userLocaleChanged"
|
||||
},
|
||||
version: {
|
||||
type: Object
|
||||
type: Object,
|
||||
observer: "versionChanged"
|
||||
},
|
||||
environment: {
|
||||
type: String
|
||||
}
|
||||
},
|
||||
|
||||
|
@ -162,6 +166,9 @@
|
|||
this.fire('cx-logout');
|
||||
},
|
||||
|
||||
versionChanged: function (newValue) {
|
||||
this.updateEnvironment(newValue);
|
||||
},
|
||||
userConfigChanged: function (newValue, oldValue) {
|
||||
if (newValue != null) {
|
||||
var userLocale = Strolch.getUserLocale();
|
|
@ -211,7 +211,7 @@
|
|||
|| scmRevision === 'undefined') {
|
||||
sessionStorage.appScmRevision = scmRevision;
|
||||
console.log("App SCM Revision is now known as " + scmRevision);
|
||||
} else if (scmRevision !== currentVersion) {
|
||||
} else if (scmRevision !== undefined && scmRevision !== currentVersion) {
|
||||
console.log("App SCM Revision has changed from " + currentVersion + " to " + scmRevision + ". Need to refresh browser...");
|
||||
this.fire("strolch-app-version-outdated", {newVersion: scmRevision});
|
||||
|
|
@ -13,6 +13,7 @@
|
|||
<link rel="import" href="../../bower_components/strolch-wc-inspector/strolch-wc-inspector-menu.html">
|
||||
<link rel="import" href="../../bower_components/strolch-wc-inspector/strolch-wc-control.html">
|
||||
<link rel="import" href="../../bower_components/strolch-wc-inspector/strolch-wc-i18n-editor.html">
|
||||
<link rel="import" href="../../bower_components/strolch-wc-inspector/strolch-wc-components.html">
|
||||
<link rel="import" href="../../bower_components/strolch-wc-reports/strolch-wc-reports.html">
|
||||
|
||||
<link rel="import" href="../../bower_components/strolch-wc-plc/strolch-wc-plc-connections.html">
|
||||
|
@ -62,6 +63,16 @@
|
|||
base-path="../"
|
||||
route="{{route}}"></strolch-wc-inspector>
|
||||
</template>
|
||||
<template is="dom-if" if="[[equal(page, 'agent-components')]]" restamp>
|
||||
<strolch-wc-components id="agent-components"
|
||||
base-path="../"
|
||||
base-rest-path="[[baseRestPath]]"
|
||||
toolbar-config="{{toolbarConfig}}"
|
||||
search-term="{{searchTerm}}"
|
||||
user-location="[[userLocation]]"
|
||||
route="{{routeTail}}"
|
||||
propagate-show-dialog></strolch-wc-components>
|
||||
</template>
|
||||
|
||||
<template is="dom-if" if="[[equal(page, 'operations-log')]]" restamp>
|
||||
<strolch-wc-operations-log id="operations-log"
|
|
@ -7,22 +7,24 @@
|
|||
"dependencies": {
|
||||
"strolchjs": "strolch-li/strolchjs#^0.5.3",
|
||||
"strolch-wc-styles": "strolch-li/strolch-wc-styles#^0.4.8",
|
||||
"strolch-wc-auth": "strolch-li/strolch-wc-auth#^0.9.9",
|
||||
"strolch-wc-auth": "strolch-li/strolch-wc-auth#^0.9.12",
|
||||
"strolch-wc-badge": "strolch-li/strolch-wc-badge#^0.1.4",
|
||||
"strolch-wc-notification": "strolch-li/strolch-wc-notification#^0.1.1",
|
||||
"strolch-wc-inspector": "strolch-li/strolch-wc-inspector#^0.23.6",
|
||||
"strolch-wc-raw-text": "strolch-li/strolch-wc-raw-text#^0.1.0",
|
||||
"strolch-wc-date-time": "strolch-li/strolch-wc-date-time#^0.9.2",
|
||||
"strolch-wc-notifications": "strolch-li/strolch-wc-notifications#^0.4.2",
|
||||
"strolch-wc-inspector": "strolch-li/strolch-wc-inspector#^0.24.1",
|
||||
"strolch-wc-util-behavior": "strolch-li/strolch-wc-util-behavior#^0.3.7",
|
||||
"strolch-wc-localize-behavior": "strolch-li/strolch-wc-localize-behavior#^1.1.15",
|
||||
"strolch-wc-localize-behavior": "strolch-li/strolch-wc-localize-behavior#^1.1.18",
|
||||
"strolch-wc-debounced-input": "strolch-li/strolch-wc-debounced-input#^0.1.6",
|
||||
"strolch-wc-dialog-button": "strolch-li/strolch-wc-dialog-button#^0.1.7",
|
||||
"strolch-wc-information-dialog": "strolch-li/strolch-wc-information-dialog#^0.1.14",
|
||||
"strolch-wc-parameter-input": "strolch-li/strolch-wc-parameter-input#^0.1.5",
|
||||
"strolch-wc-reports": "strolch-li/strolch-wc-reports#^0.5.3",
|
||||
"strolch-wc-paging": "strolch-li/strolch-wc-paging#^0.1.7",
|
||||
"strolch-wc-dialog-button": "strolch-li/strolch-wc-dialog-button#^0.1.13",
|
||||
"strolch-wc-information-dialog": "strolch-li/strolch-wc-information-dialog#^0.1.16",
|
||||
"strolch-wc-parameter-input": "strolch-li/strolch-wc-parameter-input#^0.1.7",
|
||||
"strolch-wc-reports": "strolch-li/strolch-wc-reports#^0.5.6",
|
||||
"strolch-wc-paging": "strolch-li/strolch-wc-paging#^0.2.1",
|
||||
"strolch-wc-ws-observer": "strolch-li/strolch-wc-ws-observer#^0.2.11",
|
||||
"strolch-wc-tree": "strolch-li/strolch-wc-tree#^0.2.6",
|
||||
|
||||
"strolch-wc-plc": "strolch-li/strolch-wc-plc#^0.3.19",
|
||||
"strolch-wc-plc": "strolch-li/strolch-wc-plc#^0.3.22",
|
||||
|
||||
"polymer": "Polymer/polymer#^1.12.0",
|
||||
"iron-pages": "PolymerElements/iron-pages#^1.0.9",
|
|
@ -5,6 +5,10 @@
|
|||
"agent.service.failed.access.denied": "User {user} may not perform service {service}",
|
||||
"agent.query.failed.access.denied": "User {user} may not perform query {query}",
|
||||
"agent.search.failed.access.denied": "User {user} may not perform search {search}",
|
||||
"demo-locations": "Demo Locations",
|
||||
"demo-books": "Demo Books",
|
||||
"title": "Titel",
|
||||
"author": "Author",
|
||||
"logout": "Logout",
|
||||
"info": "Information",
|
||||
"keepAlive": "Stay logged in",
|
||||
|
@ -58,7 +62,12 @@
|
|||
"mode": "Mode",
|
||||
"user": "User",
|
||||
"i18n-editor": "Internationalization editor",
|
||||
"login": "Login"
|
||||
"login": "Login",
|
||||
"production": "Production",
|
||||
"testing": "Testing",
|
||||
"staging": "Staging",
|
||||
"development": "Development",
|
||||
"demo": "Demo"
|
||||
},
|
||||
"de": {
|
||||
"appTitle": "${appName} Steuerung",
|
||||
|
@ -121,7 +130,12 @@
|
|||
"info": "Information",
|
||||
"agent.service.failed.access.denied": "Benutzer {user} darf Service {service} nicht ausführen",
|
||||
"agent.query.failed.access.denied": "Benutzer {user} darf Abfrage {query} nicht ausführen",
|
||||
"agent.search.failed.access.denied": "Benutzer {user} darf Suche {search} nicht ausführen"
|
||||
"agent.search.failed.access.denied": "Benutzer {user} darf Suche {search} nicht ausführen",
|
||||
"testing": "Testen",
|
||||
"production": "Produktion",
|
||||
"staging": "Staging",
|
||||
"development": "Entwicklung",
|
||||
"demo": "Demo"
|
||||
},
|
||||
"fr": {
|
||||
"appTitle": "${appName} Controle",
|
||||
|
@ -150,6 +164,11 @@
|
|||
"errorOccurred": "Une erreur s'est produite",
|
||||
"agent.service.failed.access.denied": "Utilisateur {user} ne peut exécuter le service {service}",
|
||||
"agent.query.failed.access.denied": "Utilisateur {user} ne peut exécuter la demande {query}",
|
||||
"agent.search.failed.access.denied": "Utilisateur {user} ne peut exécuter la recherche {search}"
|
||||
"agent.search.failed.access.denied": "Utilisateur {user} ne peut exécuter la recherche {search}",
|
||||
"testing": "Tester",
|
||||
"production": "Production",
|
||||
"staging": "Mémoriser",
|
||||
"development": "Développement",
|
||||
"demo": "Demo"
|
||||
}
|
||||
}
|
|
@ -33,19 +33,19 @@
|
|||
<!-- strolch -->
|
||||
<dependency>
|
||||
<groupId>li.strolch</groupId>
|
||||
<artifactId>li.strolch.model</artifactId>
|
||||
<artifactId>model</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>li.strolch</groupId>
|
||||
<artifactId>li.strolch.agent</artifactId>
|
||||
<artifactId>agent</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>li.strolch</groupId>
|
||||
<artifactId>li.strolch.service</artifactId>
|
||||
<artifactId>service</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>li.strolch</groupId>
|
||||
<artifactId>strolch-plc-model</artifactId>
|
||||
<artifactId>plc-model</artifactId>
|
||||
</dependency>
|
||||
|
||||
<!-- utils -->
|
|
@ -38,30 +38,30 @@
|
|||
<!-- strolch -->
|
||||
<dependency>
|
||||
<groupId>li.strolch</groupId>
|
||||
<artifactId>li.strolch.model</artifactId>
|
||||
<artifactId>model</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>li.strolch</groupId>
|
||||
<artifactId>li.strolch.agent</artifactId>
|
||||
<artifactId>agent</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>li.strolch</groupId>
|
||||
<artifactId>li.strolch.rest</artifactId>
|
||||
<artifactId>web-rest</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>li.strolch</groupId>
|
||||
<artifactId>li.strolch.service</artifactId>
|
||||
<artifactId>service</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>li.strolch</groupId>
|
||||
<artifactId>li.strolch.testbase</artifactId>
|
||||
<artifactId>test-base</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<!-- Strolch PLC -->
|
||||
<dependency>
|
||||
<groupId>li.strolch</groupId>
|
||||
<artifactId>strolch-plc-gw-server</artifactId>
|
||||
<artifactId>plc-gw-server</artifactId>
|
||||
</dependency>
|
||||
|
||||
<!-- my-app -->
|
||||
|
@ -70,18 +70,38 @@
|
|||
<artifactId>${rootArtifactId}-shared</artifactId>
|
||||
</dependency>
|
||||
|
||||
<!-- web -->
|
||||
<!-- REST using Apache Jersey -->
|
||||
<dependency>
|
||||
<groupId>javax.servlet</groupId>
|
||||
<artifactId>javax.servlet-api</artifactId>
|
||||
<groupId>jakarta.annotation</groupId>
|
||||
<artifactId>jakarta.annotation-api</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>javax.websocket</groupId>
|
||||
<artifactId>javax.websocket-api</artifactId>
|
||||
<groupId>jakarta.activation</groupId>
|
||||
<artifactId>jakarta.activation-api</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.glassfish.jersey.bundles</groupId>
|
||||
<artifactId>jaxrs-ri</artifactId>
|
||||
<groupId>jakarta.servlet</groupId>
|
||||
<artifactId>jakarta.servlet-api</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>jakarta.xml.bind</groupId>
|
||||
<artifactId>jakarta.xml.bind-api</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>jakarta.ws.rs</groupId>
|
||||
<artifactId>jakarta.ws.rs-api</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.glassfish.jersey.containers</groupId>
|
||||
<artifactId>jersey-container-servlet</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.glassfish.jersey.containers</groupId>
|
||||
<artifactId>jersey-container-grizzly2-servlet</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.glassfish.jersey.inject</groupId>
|
||||
<artifactId>jersey-hk2</artifactId>
|
||||
</dependency>
|
||||
|
||||
<!-- testing -->
|
|
@ -9,7 +9,6 @@
|
|||
<Parameter name="secretSalt" value="CHANGE-ME-2"/>
|
||||
<Parameter name="persistSessions" value="true"/>
|
||||
<Parameter name="autoPersistOnUserChangesData" value="false"/>
|
||||
<Parameter name="privilegeConflictResolution" value="MERGE"/>
|
||||
<Parameter name="allowSessionRefresh" value="true"/>
|
||||
</Parameters>
|
||||
|
|
@ -66,6 +66,12 @@
|
|||
</Role>
|
||||
|
||||
<Role name="StrolchAdmin">
|
||||
<Privilege name="Inspector" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="Agent" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="I18n" policy="DefaultPrivilege">
|
||||
<Allow>Get</Allow>
|
||||
<Allow>Update</Allow>
|
||||
|
@ -108,61 +114,32 @@
|
|||
<Privilege name="PrivilegeSetUserLocale" policy="UserAccessPrivilege"/>
|
||||
</Role>
|
||||
<Role name="PrivilegeAdmin">
|
||||
<Privilege name="li.strolch.service.api.Service" policy="DefaultPrivilege">
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeUpdateUserService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeUpdateUserRolesService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeSetUserPasswordService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeSetUserLocaleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeRemoveUserService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeRemoveRoleFromUserService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeAddUserService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeAddRoleToUserService</Allow>
|
||||
<Allow>li.strolch.service.privilege.roles.PrivilegeUpdateRoleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.roles.PrivilegeRemoveRoleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.roles.PrivilegeRemovePrivilegeFromRoleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.roles.PrivilegeAddRoleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.roles.PrivilegeAddOrReplacePrivilegeOnRoleService</Allow>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeAddUser" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeRemoveUser" policy="UserAccessPrivilege">
|
||||
<Privilege name="GetSession" policy="UserSessionAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="InvalidateSession" policy="UserSessionAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeSetUserPassword" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="RequirePasswordChange" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeSetUserLocale" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeAction" policy="DefaultPrivilege">
|
||||
<Allow>Reload</Allow>
|
||||
<Allow>GetCertificates</Allow>
|
||||
<Allow>GetPolicies</Allow>
|
||||
<Allow>Persist</Allow>
|
||||
<Allow>GetCertificates</Allow>
|
||||
<Allow>PersistSessions</Allow>
|
||||
<Allow>Reload</Allow>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeGetUser" policy="UserAccessPrivilege">
|
||||
<Privilege name="PrivilegeAddRole" policy="RoleAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeSetUserState" policy="UserAccessPrivilege">
|
||||
<Deny>SYSTEM</Deny>
|
||||
<Allow>DISABLED</Allow>
|
||||
<Allow>ENABLED</Allow>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeAddRoleToUser" policy="UserAccessPrivilege">
|
||||
<Privilege name="PrivilegeAddUser" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeGetRole" policy="RoleAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="GetSession" policy="UserSessionAccessPrivilege">
|
||||
<Privilege name="PrivilegeGetUser" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeModifyRole" policy="RoleAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeModifyUser" policy="UserAccessPrivilege">
|
||||
|
@ -171,15 +148,35 @@
|
|||
<Privilege name="PrivilegeRemoveRole" policy="RoleAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeRemoveRoleFromUser" policy="UserAccessPrivilege">
|
||||
<Privilege name="PrivilegeRemoveUser" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeModifyRole" policy="RoleAccessPrivilege">
|
||||
<Privilege name="PrivilegeSetUserLocale" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeAddRole" policy="RoleAccessPrivilege">
|
||||
<Privilege name="PrivilegeSetUserPassword" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeSetUserState" policy="UserAccessPrivilege">
|
||||
<Deny>SYSTEM</Deny>
|
||||
<Allow>DISABLED</Allow>
|
||||
<Allow>ENABLED</Allow>
|
||||
</Privilege>
|
||||
<Privilege name="RequirePasswordChange" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="li.strolch.service.api.Service" policy="DefaultPrivilege">
|
||||
<Allow>li.strolch.service.privilege.roles.PrivilegeAddRoleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.roles.PrivilegeRemoveRoleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.roles.PrivilegeUpdateRoleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeAddUserService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeRemoveUserService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeSetUserLocaleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeSetUserPasswordService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeSetUserStateService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeUpdateUserRolesService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeUpdateUserService</Allow>
|
||||
</Privilege>
|
||||
</Role>
|
||||
|
||||
<Role name="agent">
|
|
@ -5,7 +5,6 @@
|
|||
<applicationName>${appName}</applicationName>
|
||||
<Properties>
|
||||
<locale>en</locale>
|
||||
<verbose>true</verbose>
|
||||
<timezone>Europe/Zurich</timezone>
|
||||
</Properties>
|
||||
</Runtime>
|
||||
|
@ -23,7 +22,6 @@
|
|||
<realms>defaultRealm</realms>
|
||||
<dataStoreMode>TRANSIENT</dataStoreMode>
|
||||
<dataStoreFile>Model.xml</dataStoreFile>
|
||||
<enableObserverUpdates>true</enableObserverUpdates>
|
||||
</Properties>
|
||||
</Component>
|
||||
|
||||
|
@ -74,13 +72,12 @@
|
|||
|
||||
<Component>
|
||||
<name>SessionHandler</name>
|
||||
<api>li.strolch.rest.StrolchSessionHandler</api>
|
||||
<impl>li.strolch.rest.DefaultStrolchSessionHandler</impl>
|
||||
<api>li.strolch.runtime.sessions.StrolchSessionHandler</api>
|
||||
<impl>li.strolch.runtime.sessions.DefaultStrolchSessionHandler</impl>
|
||||
<depends>PrivilegeHandler</depends>
|
||||
<Properties>
|
||||
<session.ttl.minutes>30</session.ttl.minutes>
|
||||
<session.ttl.minutes>1440</session.ttl.minutes>
|
||||
<session.maxKeepAlive.minutes>10080</session.maxKeepAlive.minutes>
|
||||
<session.reload>true</session.reload>
|
||||
</Properties>
|
||||
</Component>
|
||||
<Component>
|
|
@ -1,6 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<StrolchModel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="https://strolch.li/xsd/StrolchModel-1.6.xsd"
|
||||
xsi:schemaLocation="https://strolch.li/xsd/StrolchModel-1.6.xsd StrolchModel.xsd">
|
||||
<StrolchModel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="https://strolch.li/schema/StrolchModel.xsd"
|
||||
xsi:schemaLocation="https://strolch.li/schema/StrolchModel.xsd https://strolch.li/xsd/StrolchModel-2.0.xsd">
|
||||
|
||||
<Resource Id="configuration" Name="Configuration" Type="Configuration">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
|
@ -1,6 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="https://strolch.li/xsd/StrolchModel-1.6.xsd"
|
||||
xmlns="https://strolch.li/xsd/StrolchModel-1.6.xsd"
|
||||
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="https://strolch.li/schema/StrolchModel.xsd"
|
||||
xmlns="https://strolch.li/schema/StrolchModel.xsd"
|
||||
elementFormDefault="qualified" attributeFormDefault="unqualified">
|
||||
|
||||
<xs:annotation>
|
|
@ -6,11 +6,11 @@ import static li.strolch.model.Tags.Json.DATA;
|
|||
import static li.strolch.plc.model.PlcConstants.PARAM_PLC_ID;
|
||||
import static li.strolch.rest.StrolchRestfulConstants.STROLCH_CERTIFICATE;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.ws.rs.*;
|
||||
import javax.ws.rs.core.Context;
|
||||
import javax.ws.rs.core.MediaType;
|
||||
import javax.ws.rs.core.Response;
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
import jakarta.ws.rs.*;
|
||||
import jakarta.ws.rs.core.Context;
|
||||
import jakarta.ws.rs.core.MediaType;
|
||||
import jakarta.ws.rs.core.Response;
|
||||
|
||||
import ${package}.server.web.service.ShopFloorActionService;
|
||||
import com.google.gson.JsonObject;
|
|
@ -2,7 +2,7 @@ package ${package}.server.web.web;
|
|||
|
||||
import static ${package}.server.web.web.StartupListener.APP_NAME;
|
||||
|
||||
import javax.ws.rs.ApplicationPath;
|
||||
import jakarta.ws.rs.ApplicationPath;
|
||||
import java.util.logging.Level;
|
||||
|
||||
import ${package}.server.web.rest.ShopFloorResource;
|
|
@ -1,24 +1,22 @@
|
|||
package ${package}.server.web.web;
|
||||
|
||||
import javax.servlet.ServletContextEvent;
|
||||
import javax.servlet.ServletContextListener;
|
||||
import javax.servlet.annotation.WebListener;
|
||||
import jakarta.servlet.ServletContextEvent;
|
||||
import jakarta.servlet.ServletContextListener;
|
||||
import jakarta.servlet.annotation.WebListener;
|
||||
import java.io.InputStream;
|
||||
|
||||
import ch.qos.logback.classic.LoggerContext;
|
||||
import ch.qos.logback.classic.util.ContextInitializer;
|
||||
import li.strolch.agent.api.LoggingLoader;
|
||||
import li.strolch.agent.api.StrolchAgent;
|
||||
import li.strolch.agent.api.StrolchBootstrapper;
|
||||
import li.strolch.utils.helper.StringHelper;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.slf4j.impl.StaticLoggerBinder;
|
||||
|
||||
@WebListener
|
||||
public class StartupListener implements ServletContextListener {
|
||||
|
||||
private static final Logger logger = LoggerFactory.getLogger(StartupListener.class);
|
||||
public static final String APP_NAME = "MyApp";
|
||||
public static final String APP_NAME = "${appName}";
|
||||
|
||||
private StrolchAgent agent;
|
||||
|
||||
|
@ -45,12 +43,7 @@ public class StartupListener implements ServletContextListener {
|
|||
|
||||
@Override
|
||||
public void contextDestroyed(ServletContextEvent sce) {
|
||||
try {
|
||||
new ContextInitializer((LoggerContext) StaticLoggerBinder.getSingleton().getLoggerFactory()).autoConfig();
|
||||
} catch (Exception e) {
|
||||
System.err.println("Failed to reconfigure logging...");
|
||||
e.printStackTrace(System.err);
|
||||
}
|
||||
LoggingLoader.reloadLoggingConfiguration();
|
||||
|
||||
if (this.agent != null) {
|
||||
logger.info("Destroying " + APP_NAME + "...");
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue