Used for validating PDF digital signature container files. This project depends on Digital Signature Service (DSS), Github: https://github.com/esig/dss, Project: https://joinup.ec.europa.eu/asset/sd-dss/description
Recommended way of building this project is using Maven Wrapper to build it. Run following command:
./mvnw clean package -Dmaven.test.skip.exec
Or even easier is just run:
./build.sh
mvn clean install -Dmaven.test.skip.exec -DargLine="-Xmx512m"
Above command will have quite long running time and may run into complications due to DSS tests, to skip these tests run:
mvn clean install -Dmaven.test.skip=true
Note: Make sure that you have also pulled the DSS submodule, otherwise the build will fail. To pull the DSS submodule run following commands:
git submodule init
git submodule update
Introducing new modules in addition to existing DSS modules:
Used to deploy to servlet container to offer the validation service.
Run tests:
cd pdf-validator-test
mvn test
Verify that the service_url property in src/main/config/test.properties points to the correct path, where the service is running. Some of the test files are signed with test certificate (chain), so in order for all the tests to pass run the servlet container (where the validation service resides) with development profile:
-Dspring.profiles.active=development
Used to load/update TSL in cache, when the server itself is behind a firewall and cannot access the TSL over the internet. Steps to manually update TSL files temp directory:
java -jar pdf-validator-tsl-downloader-1.0.2.RC1.jar
-> It creates tmp directory in same directory where the JAR file is.- Copy tmp directory contents to Tomcat tmp directory.
Make sure there is application-override.properties file inside Tomcat's conf directory with following contents:
trustedListSource.tslRefreshPolicy=NEVER
When updating TSL the service should be shut down to avoid unwanted behaviour.
PDF Validator monitoring is a web service to check that the PDF validator service is running correctly. Run with following command:
java -jar pdf-validator-monitoring-1.0.2.RC1.jar
Default parameters for monitoring application are:
server.port=9000
monitoring.host=http://localhost:8080
monitoring.path=/pdf-validator-webapp/wservice/validationService
# Default monitoring interval is 5 min
monitoring.requestInterval=300000
You can override these properties by placing application.properties file in same directory where the pdf-validator-monitoring-1.0.2.RC1.jar is located
To get the monitoring report, just request the monitoring service on the configured port, for example:
curl -s http://localhost:9000
You can read more detailed documentation about PDF Validator here in our GitHub Pages.
To update and edit documentation follow these steps:
NOTE Python must be installed before You continue
- Install MkDocs:
pip install mkdocs
- Edit markdown files inside the
docs
directory - Preview Your changes by issuing
mkdocs serve
and navigating tohttp://localhost:8000
- Commit Your changes to
git
- Generate GitHub Pages:
mkdocs gh-deploy
- You are done