diff --git a/pom.xml b/pom.xml index e73fa4c266fe7a2d3a3983f37d07865840af4c6d..d96c3e50d908aee30d763366027309abe6df270d 100644 --- a/pom.xml +++ b/pom.xml @@ -29,6 +29,8 @@ </modules> <properties> + <maven.deploy.skip>true</maven.deploy.skip> + <sonar.host.url>http://edelquality.westeurope.cloudapp.azure.com:9000/sonar/</sonar.host.url> <sonar.exclusions>**/smp/data/model/*, **/smp/exceptions/*, **/to_be_removed/*</sonar.exclusions> <jacoco.maven.plugin.version>0.7.9</jacoco.maven.plugin.version> diff --git a/smp-parent-pom/pom.xml b/smp-parent-pom/pom.xml index 3fb28a82655948e90e2d80f42b656b4b59ba9f07..a863348620068834a8c6331eddf502d30fe1fa44 100644 --- a/smp-parent-pom/pom.xml +++ b/smp-parent-pom/pom.xml @@ -50,6 +50,9 @@ <!-- Properties for default plugins --> <properties> + <!-- Only selected modules are deployed --> + <maven.deploy.skip>true</maven.deploy.skip> + <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <slf4j.version>1.7.10</slf4j.version> <spring.version>5.0.2.RELEASE</spring.version> diff --git a/smp-parent-pom/target/failsafe-reports/failsafe-summary.xml b/smp-parent-pom/target/failsafe-reports/failsafe-summary.xml new file mode 100644 index 0000000000000000000000000000000000000000..ac2b7cbc656ec04483a0a5852bb9dca03c272dfa --- /dev/null +++ b/smp-parent-pom/target/failsafe-reports/failsafe-summary.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<failsafe-summary result="254" timeout="false"> + <completed>0</completed> + <errors>0</errors> + <failures>0</failures> + <skipped>0</skipped> + <failureMessage/> +</failsafe-summary> \ No newline at end of file diff --git a/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-MYSQL_.01.sql b/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-MYSQL_.01.sql deleted file mode 100644 index f5d0f6a1b0999a0a4e59d923b76fd832d8b28034..0000000000000000000000000000000000000000 --- a/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-MYSQL_.01.sql +++ /dev/null @@ -1,15 +0,0 @@ --- --- Copyright 2017 European Commission | CEF eDelivery --- --- Licensed under the EUPL, Version 1.1 or – as soon they will be approved by the European Commission - subsequent versions of the EUPL (the "Licence"); --- You may not use this work except in compliance with the Licence. --- --- You may obtain a copy of the Licence at: --- https://joinup.ec.europa.eu/software/page/eupl --- or file: LICENCE-EUPL-v1.1.pdf --- --- Unless required by applicable law or agreed to in writing, software distributed under the Licence is distributed on an "AS IS" basis, --- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. --- See the Licence for the specific language governing permissions and limitations under the Licence. - -rename table `smp_service_metadata_redirection` TO `smp_service_metadata_red`; \ No newline at end of file diff --git a/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-MYSQL_.02.sql b/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-MYSQL_.02.sql deleted file mode 100644 index e1ff5df4fe15a740b92c46451c312e69f39acdd6..0000000000000000000000000000000000000000 --- a/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-MYSQL_.02.sql +++ /dev/null @@ -1,15 +0,0 @@ --- --- Copyright 2017 European Commission | CEF eDelivery --- --- Licensed under the EUPL, Version 1.1 or – as soon they will be approved by the European Commission - subsequent versions of the EUPL (the "Licence"); --- You may not use this work except in compliance with the Licence. --- --- You may obtain a copy of the Licence at: --- https://joinup.ec.europa.eu/software/page/eupl --- or file: LICENCE-EUPL-v1.1.pdf --- --- Unless required by applicable law or agreed to in writing, software distributed under the Licence is distributed on an "AS IS" basis, --- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. --- See the Licence for the specific language governing permissions and limitations under the Licence. - -ALTER TABLE smp_service_metadata ADD xmlcontent TEXT; \ No newline at end of file diff --git a/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-MYSQL_.03.sql b/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-MYSQL_.03.sql deleted file mode 100644 index 28cdc1bf5d9a89af80e30d8bd49c2cb6367a08d1..0000000000000000000000000000000000000000 --- a/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-MYSQL_.03.sql +++ /dev/null @@ -1,39 +0,0 @@ --- --- Copyright 2017 European Commission | CEF eDelivery --- --- Licensed under the EUPL, Version 1.1 or – as soon they will be approved by the European Commission - subsequent versions of the EUPL (the "Licence"); --- You may not use this work except in compliance with the Licence. --- --- You may obtain a copy of the Licence at: --- https://joinup.ec.europa.eu/software/page/eupl --- or file: LICENCE-EUPL-v1.1.pdf --- --- Unless required by applicable law or agreed to in writing, software distributed under the Licence is distributed on an "AS IS" basis, --- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. --- See the Licence for the specific language governing permissions and limitations under the Licence. - -ALTER TABLE smp_user ADD isadmin TINYINT(1) DEFAULT 0 NOT NULL; - -DROP TRIGGER IF EXISTS smp_user_check_is_admin_value_before_insert; - -DROP TRIGGER IF EXISTS smp_user_check_is_admin_value_before_update; - -delimiter // -CREATE TRIGGER smp_user_check_is_admin_value_before_insert BEFORE INSERT ON smp_user -FOR EACH ROW -BEGIN - IF NEW.ISADMIN <> 0 AND NEW.ISADMIN <> 1 THEN - SIGNAL SQLSTATE '99999' - SET MESSAGE_TEXT = '0 or 1 are the only allowed values for ISADMIN column'; - END IF; -END // - -CREATE TRIGGER smp_user_check_is_admin_value_before_update BEFORE UPDATE ON smp_user -FOR EACH ROW -BEGIN - IF NEW.ISADMIN <> 0 AND NEW.ISADMIN <> 1 THEN - SIGNAL SQLSTATE '99999' - SET MESSAGE_TEXT = '0 or 1 are the only allowed values for ISADMIN column'; - END IF; -END // -delimiter ; diff --git a/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-MYSQL_.04.sql b/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-MYSQL_.04.sql deleted file mode 100644 index ad34bea70dd20a3e87dd24f2c90e06e651cb25b4..0000000000000000000000000000000000000000 --- a/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-MYSQL_.04.sql +++ /dev/null @@ -1,15 +0,0 @@ --- --- Copyright 2017 European Commission | CEF eDelivery --- --- Licensed under the EUPL, Version 1.1 or – as soon they will be approved by the European Commission - subsequent versions of the EUPL (the "Licence"); --- You may not use this work except in compliance with the Licence. --- --- You may obtain a copy of the Licence at: --- https://joinup.ec.europa.eu/software/page/eupl --- or file: LICENCE-EUPL-v1.1.pdf --- --- Unless required by applicable law or agreed to in writing, software distributed under the Licence is distributed on an "AS IS" basis, --- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. --- See the Licence for the specific language governing permissions and limitations under the Licence. - -ALTER TABLE `smp_user` MODIFY password varchar(256) NULL DEFAULT NULL; \ No newline at end of file diff --git a/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-MYSQL_.06.sql b/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-MYSQL_.06.sql deleted file mode 100644 index 8fe8948f202879efbe9188444a47d6fdc4aeb325..0000000000000000000000000000000000000000 --- a/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-MYSQL_.06.sql +++ /dev/null @@ -1,41 +0,0 @@ --- --- Copyright 2017 European Commission | CEF eDelivery --- --- Licensed under the EUPL, Version 1.1 or – as soon they will be approved by the European Commission - subsequent versions of the EUPL (the "Licence"); --- You may not use this work except in compliance with the Licence. --- --- You may obtain a copy of the Licence at: --- https://joinup.ec.europa.eu/software/page/eupl --- or file: LICENCE-EUPL-v1.1.pdf --- --- Unless required by applicable law or agreed to in writing, software distributed under the Licence is distributed on an "AS IS" basis, --- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. --- See the Licence for the specific language governing permissions and limitations under the Licence. - -LOCK TABLES - smp_service_group WRITE, - smp_service_metadata WRITE, - smp_ownership WRITE, - smp_process WRITE; -ALTER TABLE smp_service_metadata DROP FOREIGN KEY FK_service_metadata_1; -ALTER TABLE smp_ownership DROP FOREIGN KEY FK_ownership_1; -ALTER TABLE smp_process DROP FOREIGN KEY FK_process_1; - --- tables locked, foreign keys dropped, updating columns: - -ALTER TABLE smp_service_group MODIFY businessIdentifier VARCHAR(256) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL; -ALTER TABLE smp_service_group MODIFY businessIdentifierScheme VARCHAR(256) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL; - -ALTER TABLE smp_ownership MODIFY businessIdentifier VARCHAR(256) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL; -ALTER TABLE smp_ownership MODIFY businessIdentifierScheme VARCHAR(256) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL; - -ALTER TABLE smp_service_metadata MODIFY businessIdentifier VARCHAR(256) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL; -ALTER TABLE smp_service_metadata MODIFY businessIdentifierScheme VARCHAR(256) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL; -ALTER TABLE smp_service_metadata MODIFY documentIdentifier VARCHAR(256) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL; -ALTER TABLE smp_service_metadata MODIFY documentIdentifierScheme VARCHAR(256) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL; - --- columns updated, recreate foreign keys and unlock tables: - -ALTER TABLE smp_service_metadata ADD CONSTRAINT FK_service_metadata_1 FOREIGN KEY (businessIdentifier, businessIdentifierScheme) REFERENCES smp_service_group (businessIdentifier, businessIdentifierScheme) ON DELETE CASCADE ON UPDATE CASCADE; -ALTER TABLE smp_ownership ADD CONSTRAINT FK_ownership_1 FOREIGN KEY (businessIdentifier, businessIdentifierScheme) REFERENCES smp_service_group (businessIdentifier, businessIdentifierScheme) ON DELETE CASCADE ON UPDATE CASCADE; -UNLOCK TABLES; \ No newline at end of file diff --git a/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-MYSQL_.07.sql b/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-MYSQL_.07.sql deleted file mode 100644 index 53d6fb4a3f5a1d0f613f10703063352b9e885beb..0000000000000000000000000000000000000000 --- a/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-MYSQL_.07.sql +++ /dev/null @@ -1,17 +0,0 @@ --- --- Copyright 2017 European Commission | CEF eDelivery --- --- Licensed under the EUPL, Version 1.1 or – as soon they will be approved by the European Commission - subsequent versions of the EUPL (the "Licence"); --- You may not use this work except in compliance with the Licence. --- --- You may obtain a copy of the Licence at: --- https://joinup.ec.europa.eu/software/page/eupl --- or file: LICENCE-EUPL-v1.1.pdf --- --- Unless required by applicable law or agreed to in writing, software distributed under the Licence is distributed on an "AS IS" basis, --- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. --- See the Licence for the specific language governing permissions and limitations under the Licence. - -DROP TABLE smp_endpoint CASCADE; -DROP TABLE smp_process CASCADE; -DROP TABLE smp_service_metadata_red CASCADE; \ No newline at end of file diff --git a/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-ORACLE_.02.sql b/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-ORACLE_.02.sql deleted file mode 100644 index a32ca35e4a216da0759f617285de8cfa41570175..0000000000000000000000000000000000000000 --- a/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-ORACLE_.02.sql +++ /dev/null @@ -1,17 +0,0 @@ --- --- Copyright 2017 European Commission | CEF eDelivery --- --- Licensed under the EUPL, Version 1.1 or – as soon they will be approved by the European Commission - subsequent versions of the EUPL (the "Licence"); --- You may not use this work except in compliance with the Licence. --- --- You may obtain a copy of the Licence at: --- https://joinup.ec.europa.eu/software/page/eupl --- or file: LICENCE-EUPL-v1.1.pdf --- --- Unless required by applicable law or agreed to in writing, software distributed under the Licence is distributed on an "AS IS" basis, --- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. --- See the Licence for the specific language governing permissions and limitations under the Licence. - -ALTER TABLE smp_service_metadata ADD xmlcontent CLOB; - -ALTER TABLE smp_process DISABLE CONSTRAINT FK_smp_proc_docIdScheme; \ No newline at end of file diff --git a/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-ORACLE_.03.sql b/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-ORACLE_.03.sql deleted file mode 100644 index 2beb2e01bc56bd91f361bb3ea2e59c0979ddbe89..0000000000000000000000000000000000000000 --- a/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-ORACLE_.03.sql +++ /dev/null @@ -1,16 +0,0 @@ --- --- Copyright 2017 European Commission | CEF eDelivery --- --- Licensed under the EUPL, Version 1.1 or – as soon they will be approved by the European Commission - subsequent versions of the EUPL (the "Licence"); --- You may not use this work except in compliance with the Licence. --- --- You may obtain a copy of the Licence at: --- https://joinup.ec.europa.eu/software/page/eupl --- or file: LICENCE-EUPL-v1.1.pdf --- --- Unless required by applicable law or agreed to in writing, software distributed under the Licence is distributed on an "AS IS" basis, --- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. --- See the Licence for the specific language governing permissions and limitations under the Licence. - -ALTER TABLE smp_user ADD isadmin NUMBER(1) DEFAULT 0 NOT NULL; -ALTER TABLE smp_user ADD CONSTRAINT check_is_admin_value CHECK (isadmin = 0 OR isadmin = 1); \ No newline at end of file diff --git a/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-ORACLE_.04.sql b/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-ORACLE_.04.sql deleted file mode 100644 index 0641c130779ec4276797afb0fee174cdadb566c1..0000000000000000000000000000000000000000 --- a/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-ORACLE_.04.sql +++ /dev/null @@ -1,15 +0,0 @@ --- --- Copyright 2017 European Commission | CEF eDelivery --- --- Licensed under the EUPL, Version 1.1 or – as soon they will be approved by the European Commission - subsequent versions of the EUPL (the "Licence"); --- You may not use this work except in compliance with the Licence. --- --- You may obtain a copy of the Licence at: --- https://joinup.ec.europa.eu/software/page/eupl --- or file: LICENCE-EUPL-v1.1.pdf --- --- Unless required by applicable law or agreed to in writing, software distributed under the Licence is distributed on an "AS IS" basis, --- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. --- See the Licence for the specific language governing permissions and limitations under the Licence. - -ALTER TABLE smp_user MODIFY (password null); \ No newline at end of file diff --git a/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-ORACLE_.05.sql b/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-ORACLE_.05.sql deleted file mode 100644 index b6975e04213f64323a914aab1c089024eb3222b4..0000000000000000000000000000000000000000 --- a/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-ORACLE_.05.sql +++ /dev/null @@ -1,29 +0,0 @@ --- --- Copyright 2017 European Commission | CEF eDelivery --- --- Licensed under the EUPL, Version 1.1 or – as soon they will be approved by the European Commission - subsequent versions of the EUPL (the "Licence"); --- You may not use this work except in compliance with the Licence. --- --- You may obtain a copy of the Licence at: --- https://joinup.ec.europa.eu/software/page/eupl --- or file: LICENCE-EUPL-v1.1.pdf --- --- Unless required by applicable law or agreed to in writing, software distributed under the Licence is distributed on an "AS IS" basis, --- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. --- See the Licence for the specific language governing permissions and limitations under the Licence. - -ALTER TABLE smp_endpoint MODIFY (documentIdentifierScheme VARCHAR(100)); -ALTER TABLE smp_endpoint MODIFY (businessIdentifierScheme VARCHAR(100)); - -ALTER TABLE smp_ownership MODIFY (businessIdentifierScheme VARCHAR(100)); - -ALTER TABLE smp_process MODIFY (documentIdentifierScheme VARCHAR(100)); -ALTER TABLE smp_process MODIFY (businessIdentifierScheme VARCHAR(100)); - -ALTER TABLE smp_service_group MODIFY (businessIdentifierScheme VARCHAR(100)); - -ALTER TABLE smp_service_metadata MODIFY (documentIdentifierScheme VARCHAR(100)); -ALTER TABLE smp_service_metadata MODIFY (businessIdentifierScheme VARCHAR(100)); - -ALTER TABLE smp_service_metadata_red MODIFY (documentIdentifierScheme VARCHAR(100)); -ALTER TABLE smp_service_metadata_red MODIFY (businessIdentifierScheme VARCHAR(100)); diff --git a/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-ORACLE_.07.sql b/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-ORACLE_.07.sql deleted file mode 100644 index f478763d63b7f445406c22d5325bc06d26398a95..0000000000000000000000000000000000000000 --- a/smp-server-library/database/migration from 2.5.0 to 3.0.0/upgrade-ORACLE_.07.sql +++ /dev/null @@ -1,17 +0,0 @@ --- --- Copyright 2017 European Commission | CEF eDelivery --- --- Licensed under the EUPL, Version 1.1 or – as soon they will be approved by the European Commission - subsequent versions of the EUPL (the "Licence"); --- You may not use this work except in compliance with the Licence. --- --- You may obtain a copy of the Licence at: --- https://joinup.ec.europa.eu/software/page/eupl --- or file: LICENCE-EUPL-v1.1.pdf --- --- Unless required by applicable law or agreed to in writing, software distributed under the Licence is distributed on an "AS IS" basis, --- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. --- See the Licence for the specific language governing permissions and limitations under the Licence. - -DROP TABLE smp_endpoint CASCADE CONSTRAINTS; -DROP TABLE smp_process CASCADE CONSTRAINTS; -DROP TABLE smp_service_metadata_red CASCADE CONSTRAINTS; \ No newline at end of file diff --git a/smp-webapp/pom.xml b/smp-webapp/pom.xml index 6d947800cb811e1067b25fa3dda9a72c5b31868d..c5e2a8f0b3e10836b191acca6a3e233786d4fd46 100644 --- a/smp-webapp/pom.xml +++ b/smp-webapp/pom.xml @@ -11,8 +11,9 @@ <name>smp-webapp</name> <description>SMP REST service WEB APP</description> - <!-- Default properties to copy the artifact on the DEV platform --> + <properties> + <maven.deploy.skip>false</maven.deploy.skip> <buildtimestamp>${maven.build.timestamp}</buildtimestamp> <maven.build.timestamp.format>yyyy-MM-dd HH:mm:ss</maven.build.timestamp.format> @@ -129,6 +130,24 @@ </archive> </configuration> </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-assembly-plugin</artifactId> + <executions> + <execution> + <id>assembly-smp-setup</id> + <phase>package</phase> + <goals> + <goal>single</goal> + </goals> + <configuration> + <finalName>smp-setup-${project.version}</finalName> + <appendAssemblyId>false</appendAssemblyId> + <descriptor>src/main/smp-samples/smp-setup.xml</descriptor> + </configuration> + </execution> + </executions> + </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-antrun-plugin</artifactId> diff --git a/smp-webapp/src/main/smp-setup/LICENCE-EUPL-v1.2.pdf b/smp-webapp/src/main/smp-setup/LICENCE-EUPL-v1.2.pdf new file mode 100644 index 0000000000000000000000000000000000000000..b3abd455b503762e7410fd98561613fec719706e Binary files /dev/null and b/smp-webapp/src/main/smp-setup/LICENCE-EUPL-v1.2.pdf differ diff --git a/smp-server-library/database/create-Mysql.sql b/smp-webapp/src/main/smp-setup/database-scripts/create-Mysql.sql similarity index 98% rename from smp-server-library/database/create-Mysql.sql rename to smp-webapp/src/main/smp-setup/database-scripts/create-Mysql.sql index bb297f5365f25523a6d07333a5ba32d698e5a9a9..300c1966e72b39f8174e175e39ec3b159d02c803 100644 --- a/smp-server-library/database/create-Mysql.sql +++ b/smp-webapp/src/main/smp-setup/database-scripts/create-Mysql.sql @@ -41,7 +41,7 @@ CREATE TABLE smp_service_group ( domainId VARCHAR(50) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL - DEFAULT 'default', + DEFAULT 'domain1', extension TEXT NULL DEFAULT NULL, PRIMARY KEY (businessIdentifier, businessIdentifierScheme), CONSTRAINT FK_srv_group_domain FOREIGN KEY (domainId) @@ -166,7 +166,7 @@ DELIMITER ; -INSERT INTO smp_domain(domainId, bdmslSmpId) VALUES('default', 'DEFAULT-SMP-ID'); +INSERT INTO smp_domain(domainId, bdmslSmpId) VALUES('domain1', 'DEFAULT-SMP-ID'); -- default admin user with password "changeit" INSERT INTO smp_user(username, password, isadmin) VALUES ('smp_admin', '$2a$10$SZXMo7K/wA.ULWxH7uximOxeNk4mf3zU6nxJx/2VfKA19QlqwSpNO', '1'); diff --git a/smp-server-library/database/create-Oracle.sql b/smp-webapp/src/main/smp-setup/database-scripts/create-Oracle.sql similarity index 95% rename from smp-server-library/database/create-Oracle.sql rename to smp-webapp/src/main/smp-setup/database-scripts/create-Oracle.sql index 581ed856ce5d7ee3aee8f51df2a1c3d55b03968d..edf0167142539ff6fbf003a321bee05cceecf418 100644 --- a/smp-server-library/database/create-Oracle.sql +++ b/smp-webapp/src/main/smp-setup/database-scripts/create-Oracle.sql @@ -26,7 +26,7 @@ CREATE TABLE smp_service_group ( extension CLOB, businessIdentifier VARCHAR(50) NOT NULL, businessIdentifierScheme VARCHAR(100) NOT NULL, - domainId VARCHAR(50) DEFAULT 'default' NOT NULL, + domainId VARCHAR(50) DEFAULT 'domain1' NOT NULL, PRIMARY KEY (businessIdentifier, businessIdentifierScheme), CONSTRAINT FK_srv_group_domain FOREIGN KEY (domainId) @@ -70,7 +70,7 @@ CREATE TABLE smp_ownership ( ); -INSERT INTO smp_domain(domainId, bdmslSmpId) VALUES('default', 'DEFAULT-SMP-ID'); +INSERT INTO smp_domain(domainId, bdmslSmpId) VALUES('domain1', 'DEFAULT-SMP-ID'); -- default admin user with password "changeit" INSERT INTO smp_user(username, password, isadmin) VALUES ('smp_admin', '$2a$10$SZXMo7K/wA.ULWxH7uximOxeNk4mf3zU6nxJx/2VfKA19QlqwSpNO', '1'); diff --git a/smp-server-library/database/migration from 3.0.x to 4.0.0/mysql_3.0_4.0.sql b/smp-webapp/src/main/smp-setup/database-scripts/migration from 3.0.x to 4.0.0/mysql_3.0_to_4.0.sql similarity index 97% rename from smp-server-library/database/migration from 3.0.x to 4.0.0/mysql_3.0_4.0.sql rename to smp-webapp/src/main/smp-setup/database-scripts/migration from 3.0.x to 4.0.0/mysql_3.0_to_4.0.sql index 0716b63c0e26cf01ae5c15d6155cf1c464b63798..30421f4d5f0a2945940e0da31a2462edf406dc6d 100644 --- a/smp-server-library/database/migration from 3.0.x to 4.0.0/mysql_3.0_4.0.sql +++ b/smp-webapp/src/main/smp-setup/database-scripts/migration from 3.0.x to 4.0.0/mysql_3.0_to_4.0.sql @@ -30,7 +30,7 @@ CREATE TABLE smp_domain ( ); -INSERT INTO smp_domain(domainId, bdmslSmpId) VALUES('default', 'DEFAULT-SMP-ID'); +INSERT INTO smp_domain(domainId, bdmslSmpId) VALUES('domain1', 'DEFAULT-SMP-ID'); @@ -38,7 +38,7 @@ ALTER TABLE smp_service_group ADD domainId VARCHAR(50) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL - DEFAULT 'default'; + DEFAULT 'domain1'; ALTER TABLE smp_service_group ADD CONSTRAINT diff --git a/smp-server-library/database/migration from 3.0.x to 4.0.0/oracle_3.0_to_4.0.sql b/smp-webapp/src/main/smp-setup/database-scripts/migration from 3.0.x to 4.0.0/oracle_3.0_to_4.0.sql similarity index 91% rename from smp-server-library/database/migration from 3.0.x to 4.0.0/oracle_3.0_to_4.0.sql rename to smp-webapp/src/main/smp-setup/database-scripts/migration from 3.0.x to 4.0.0/oracle_3.0_to_4.0.sql index 290fbc1f665fc4c1a3a318bcc815c1d60ffc229c..c6494b58652dafa6cea9f9c289e8efd53701c607 100644 --- a/smp-server-library/database/migration from 3.0.x to 4.0.0/oracle_3.0_to_4.0.sql +++ b/smp-webapp/src/main/smp-setup/database-scripts/migration from 3.0.x to 4.0.0/oracle_3.0_to_4.0.sql @@ -21,10 +21,10 @@ CREATE TABLE smp_domain ( ) ); -INSERT INTO smp_domain(domainId, bdmslSmpId) VALUES('default', 'DEFAULT-SMP-ID'); +INSERT INTO smp_domain(domainId, bdmslSmpId) VALUES('domain1', 'DEFAULT-SMP-ID'); ALTER TABLE smp_service_group ADD ( - domainId VARCHAR(50) DEFAULT 'default' NOT NULL + domainId VARCHAR(50) DEFAULT 'domain1' NOT NULL ); ALTER TABLE smp_service_group ADD ( diff --git a/smp-webapp/src/main/smp-setup/readme.txt b/smp-webapp/src/main/smp-setup/readme.txt new file mode 100644 index 0000000000000000000000000000000000000000..0c46f324f4890d466c2d24baa34df4494461be1f --- /dev/null +++ b/smp-webapp/src/main/smp-setup/readme.txt @@ -0,0 +1,10 @@ +========== SMP Setup ========== + +This ZIP file contains: + * DB initialization and migration scripts that have to be run before SMP deployment + * smp.config.properties - sample configuration file that has to placed in the classpath + * sample keystore file with key pair needed for response messages signing + * SoapUI project with sample requests + +More details can be found in the SMP page and especially in "Administration Guide": +https://ec.europa.eu/cefdigital/wiki/display/CEFDIGITAL/SMP \ No newline at end of file diff --git a/smp-webapp/src/main/smp-setup/sample_signatures_keystore.jks b/smp-webapp/src/main/smp-setup/sample_signatures_keystore.jks new file mode 100644 index 0000000000000000000000000000000000000000..f20df2fbb4e096731a8eb9c573c552748ac5a394 Binary files /dev/null and b/smp-webapp/src/main/smp-setup/sample_signatures_keystore.jks differ diff --git a/smp-webapp/src/main/smp-setup/smp-setup.xml b/smp-webapp/src/main/smp-setup/smp-setup.xml new file mode 100644 index 0000000000000000000000000000000000000000..01dace8648acf671e5161946d523988b74554368 --- /dev/null +++ b/smp-webapp/src/main/smp-setup/smp-setup.xml @@ -0,0 +1,30 @@ +<!-- + ~ Copyright 2018 European Commission | CEF eDelivery + ~ + ~ Licensed under the EUPL, Version 1.2 or - as soon they will be approved by the European Commission - subsequent versions of the EUPL (the "Licence"); + ~ You may not use this work except in compliance with the Licence. + ~ + ~ You may obtain a copy of the Licence attached in file: LICENCE-EUPL-v1.2.pdf + ~ + ~ Unless required by applicable law or agreed to in writing, software distributed under the Licence is distributed on an "AS IS" basis, + ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + ~ See the Licence for the specific language governing permissions and limitations under the Licence. + --> + +<assembly xmlns="http://maven.apache.org/ASSEMBLY/2.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/ASSEMBLY/2.0.0 http://maven.apache.org/xsd/assembly-2.0.0.xsd"> + <id>setup</id> + <formats> + <format>zip</format> + </formats> + <fileSets> + <fileSet> + <directory>${basedir}/src/main/smp-setup</directory> + <outputDirectory>/</outputDirectory> + <excludes> + <exclude>smp-setup.xml</exclude> + </excludes> + </fileSet> + </fileSets> +</assembly> \ No newline at end of file diff --git a/smp-webapp/src/main/smp-setup/smp.config.properties b/smp-webapp/src/main/smp-setup/smp.config.properties new file mode 100644 index 0000000000000000000000000000000000000000..836273e94d4d5d696ea507379cf17f6f4a69695b --- /dev/null +++ b/smp-webapp/src/main/smp-setup/smp.config.properties @@ -0,0 +1,97 @@ +# +# Copyright 2018 European Commission | CEF eDelivery +# +# Licensed under the EUPL, Version 1.2 or - as soon they will be approved by the European Commission - subsequent versions of the EUPL (the "Licence"); +# You may not use this work except in compliance with the Licence. +# +# You may obtain a copy of the Licence attached in file: LICENCE-EUPL-v1.2.pdf +# +# Unless required by applicable law or agreed to in writing, software distributed under the Licence is distributed on an "AS IS" basis, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the Licence for the specific language governing permissions and limitations under the Licence. +# + +## Blue Coat reverse-proxy authentication, by default disabled (false) +## Be careful with switching it to 'true' - do it only if you know what you are doing. +## Authentication with Blue Coat means that all HTTP requests having 'Client-Cert' header will be authenticated +## as username placed in the header. +## Never expose SMP to the WEB without properly configured reverse-proxy and active blue coat. +authentication.blueCoat.enabled=false + + +## This property controls pattern of URLs produced by SMP in GET ServiceGroup responses +## When set to 'true', produced URLs contain application context (i.e.: "smp"): +## http[s]://domain[:port]/smp/{ParticipantID}/services/{DocumentID} +## For environments with reverse-proxy this property might be changed to 'false', then URLs will look like: +## http[s]://domain[:port]/{ParticipantID}/services/{DocumentID} +## For changing other URL parts behind reverse-proxy, please use dedicated HTTP headers: +## X-Forwarded-Host, X-Forwarded-Proto, X-Forwarded-Port +contextPath.output=true + + +## Most Java libraries and J2EE containers block encoded slashes in URL - For security reasons. +## Theoretically there are no restrictions on slash "/" characters in document or participant identifiers, +## but by default we block then as well. +## If slash "/" characters must be supported, than switch this property to "true". +## Remember that in such case the relevant change should be also applied on J2EE level +## I.e. for Tomcat it is handled by property: org.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH=true +encodedSlashesAllowedInUrl=false + + +## Participant Identifier Schema of each PUT ServiceGroup request is validated against this schema +## I.e this regex: ^(?!^.{26})([a-z0-9]+-[a-z0-9]+-[a-z0-9]+) +## - limits length of scheme to 25 characters +## - forces pattern to consist of 3 alpha-numeric segments delimited with "-", i.e: aa1-bb2-cc3 +## To turn validation OFF, set regex to "match all": .* +identifiersBehaviour.ParticipantIdentifierScheme.validationRegex=^(?!^.{26})([a-z0-9]+-[a-z0-9]+-[a-z0-9]+) + + +## All Identifiers by default are CASE-INSENSITIVE. +## Specifies schemes of participant/document identifiers that must be considered CASE-SENSITIVE. +## List values (delimited by pipe character: "|" ) placed here are checked against runtime (request) schemes in the CASE-INSENSITIVE way +identifiersBehaviour.caseSensitive.ParticipantIdentifierSchemes=casesensitive-participant-scheme1|casesensitive-participant-scheme2 +identifiersBehaviour.caseSensitive.DocumentIdentifierSchemes=casesensitive-doc-scheme1|casesensitive-doc-scheme2 + + +## BDMSL (SML) integration ON/OFF switch +bdmsl.integration.enabled=false + +## BDMSL URL +bdmsl.integration.url=http://localhost:8080/manageparticipantidentifier + +## Keystore JKS file path (optional). Used for X509 client 2-way-SSL authentication in SML integration +## If there is more than one domain configured, alias of each key must be set up in SMP_DOMAIN table +## Password must be equal for every key within the keystore and for keystore itself +bdmsl.integration.keystore.path= +bdmsl.integration.keystore.password= + +## Optional proxy configuration. Needed only when SMP needs to be integrated with SML and stays behind proxy +bdmsl.integration.proxy.server= +bdmsl.integration.proxy.port= +bdmsl.integration.proxy.user= +bdmsl.integration.proxy.password= + + +## Path pointing to the keystore file with keys used for signing GET ServiceMetadata responses. +## Keystore must keep exactly 1 key if single-domain setup is used +## For more than 1 domain setup, aliases of each key have to be configured in SMP_DOMAIN table +## Keystore password must be equal for every key within this keystore +xmldsig.keystore.classpath=/keystores/sample_signatures_keystore.jks +xmldsig.keystore.password=secure123 + + +## Database access +target-database = MySQL +jdbc.driver = com.mysql.jdbc.Driver +jdbc.url = jdbc:mysql://localhost:3306/smp +jdbc.user = smp +jdbc.password=secret123 +jdbc.read-connections.max = 10 + +## Sample for Oracle +#jdbc.driver = oracle.jdbc.driver.OracleDriver +#target-database=Oracle +#jdbc.url=jdbc:oracle:thin:@localhost:1521/xe +#jdbc.user=smp +#jdbc.password=secret123 +#jdbc.read-connections.max=10 \ No newline at end of file