Skip to content

dsntk | Decision Toolkit | Java RPC server

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE
MIT
LICENSE-MIT
Notifications You must be signed in to change notification settings

DecisionToolkit/dsntk-java-server

DSNTK | Java RPC server

Java RPC server for Decision Toolkit

MIT licensed Apache 2.0 licensed Contributor Covenant

Overview

DMN™ specification defines functionality that allows to call external functions written in Java. Details can be found in the document Decision Model and Notation Version 1.4 on pages 117-118 (externally-defined functions).

While Decision Toolkit (DSNTK) is written in Rust, then calling Java functions requires an RPC (Remote Procedure Call) server. This project is a Java implementation of such server.

Installation

Java RPC server can be downloaded from releases built from source or run in Docker container.

Building from source

  1. Clone this repository.
  2. Install Java 17 or newer.
  3. Install Maven.
  4. Build the server:
$ mvn package

The server-0.0.1.jar can be found in ./target directory

Starting the server

$ java -jar server-0.0.1.jar

Docker container

Docker container can be built and run using prepared script file:

$ ./container.sh

After building, the new container is started and ready to accept requests, try:

$ curl http://127.0.0.1:22023/api/rest/v1/system/info

The output should look like this:

{"data": {"name": "Java RPC server for Decision Toolkit","version": "0.0.1"}}

Endpoints

License

Licensed under either of

at your option.

Contribution

Any contributions are greatly appreciated. If you would like to get involved, please don't hesitate to reach out to us. All contributions intentionally submitted for inclusion in the work by you, shall be dual licensed as above, without any additional terms or conditions.