Queries are registered using the org.kie.server.persistence on first server startup and this information - including the full datasource name - is persisted into the database:
On server restart, the values from the database are used. This prevents to run multiple kie-server nodes using the same database to be deployed on different application servers:
- Create a fresh DB schema
- Start kie-server deployed on EAP
- Start kie-server deployed on WAS (using the same database connection settings, but with a different datasource name)
In this scenario, the WAS deployment fails as it tries to resolve the datasource name from the database java:jboss/MySqlDS, which does not exist in the WAS server.
The value of the datasource name should be taken from the system property on each server start, not just for the first one.