Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Together Platform :: CORE

License Apache 2 Maven Central Javadocs Build Status Coverage Status Codacy Badge

Getting Started

The TP-CORE artifact contains typical basic functions for Java Applications. The module is elaborated as library and packed as JAR file. It is possible to use this artifact in Java EE and Java SE (Desktop) Applications. The implementation of these library has the goal, to create an useful and compact toolbox. Free of charge for any kind of usage, commercial and private,

Components - Release: 2.0

Please also check out the Wiki for futher information.


The CORE Module is build with NetBeans, Maven and Java 17 SE (openJDK). The most important dependencies are Hibernate, Spring and JUnit 5. As Database Server (DBMS) PostgeSQL DBMS 11.1 is recommended.

Docker was chosen for an simple and fast database setup. In the case you wish to have a short introduction about docker, you can check my tutorial on BitCute. After on your system docker is running, you are be able to setup the database by the following steps:

docker network create -d bridge --subnet= services

docker run -d --name postgres --restart=no
-p 5432:5432 --net services --ip
-e PGPASSWORD=s3cr3t
-v /home/user/docker/postgres:/var/lib/postgresql/data

docker run -d --name pgadmin --restart=no
-p 8004:80 --net services --ip
--link postgres:11

URI/> User: postgres PWD: n/a DOC/>

  • docker start postgres
  • docker stop postgres

To create default user and schemata (also for testing), you are be able to use TP-CM/dbms/src/sql/initial_postgresql.sql script.


TP-CORE uses always the current version of Apache Maven. To build the project by your own you will need the current version from the master branch of the parent-pom from the TP-CM project (build-workflow).

The project configurations are available in src/main/filter/ directory.

In the case no DBMS is available, all test cases which depend on Database access will skipped.


All released artifacts are available on Maven Central for free usage. You are be able to use the released artifact in your project as dependency with the following entry:





This project is licensed under the Apache 2.0 license.


Feel free open a pull request or to send a feature request by e-mail in the case you want to contribute the project. Everyone is welcome, even beginners in programming. I also appreciate help by optimizing the documentation and creating tutorials.

Mistakes happen. But we only able to fix them, when we you inform us you found a bug. Do not hesitate to send a report in the way you feel common. I try to give as much as possible fast & direct support.

In the case you like this project, let me know it and rate it with a star.

Release Notes

Version Comment
3.1.0 in prgress
-------- ----------------------------------------------------------------------
3.0 published 10/2022
- implement FeatureFlags based FF4j
- extend Validator.IP4_ADDRESS
- extend Validator.isIsbn10() + isIsbn13()
- extend GenericDAO.listAll() with pagination
- remove jodatime
- replace flexjson for Jackson
- replace ITextRenderer for OpenPdfRenderer
- replace JavaMail for JakartaMail
- refactor MailClient & MailService
- refactor test cases
- refactor log output
- bugfix TreeWalker.addNode()
- bugfix Change TreeNode.value to generic object (typesafe)
-------- ----------------------------------------------------------------------
2.2.0 published 10/2021 - EOL
- add OpenPDF Renderer (iText 5 will removed in Version 3.0)
-------- ----------------------------------------------------------------------
2.1.0 published 12/2020
- extend StringUtils.createDateFromString()
- extend TreeWalker.validate()
- extend CryptoTools.generateKeyPair()
- extend Constraints with TimeZone entry
- separate UnitTests from IntegrationTests
- JSON lib replace flexjson for Jackson data-bind
- bugfix: optimize Spring DI
- replace JodaTime for java.time Java 8 compatibility (QRCodeGenerator & Validator)
- replace 3CPO Connection Pool with Commons DBCP2 for Java 8 compatibility
-------- ----------------------------------------------------------------------
2.0.2 published 01/2020
- move internal implementation classes to package internal
- bugfix: add Java Modul name to MANIFEST.MF
- bugfix; cleanup test case imports
- bugfix; ConfigurationDO rename MODULE_VERSION to SERVICE_VERSION
-------- ----------------------------------------------------------------------
2.0.1 published 12/2019
- bugfix; DAO visibilities
-------- ----------------------------------------------------------------------
2.0 published 11/2019
- change license to Apache License 2.0
- Change bean validation to version 2.0
- API changes: renaming impl classes
- GenericDAO CRUD operations remove final
- Add Functionality: CryptoTool
- Add Functionality: Feature Toggle
- Extend Application Configuration by Version() data class
- provide JDBC connection object in DatabaseActions
- refactor pom
- fix TreeNode hashCode() & equals()
- add TreeNode.copy()
-------- ----------------------------------------------------------------------
1.1 published 10/2018 - EOL
- optimize overall Test Coverage
- Fix (medium) :: MailClient.loadConfigFromDatabase() {MODUL_VERSION}
- Add Functionality: XmlTools:transformXslt()
- Add Functionality: XmlTools:shrinkXml()
- REFRACTOR XmlToolsImpl
- Add Functionality: PdFRenderer.removePage()
- Add Functionality: Logger.setLogLevel()
- Add Functionality: DatabaseActions.getMetaData
- Migrate DAO to Hibernate 5.3 (JPA 2.1)
- Add swagger support
-------- ----------------------------------------------------------------------
1.0.2 published 04/2018
- include PGP signing for all
-------- ----------------------------------------------------------------------
1.0.1 Rejected : not published
- change Maven POM GAV for Open Source Project Repository Hosting
-------- ----------------------------------------------------------------------
1.0 Rejected : not published
-------- ----------------------------------------------------------------------