Service Deployment
RESTful Web Services
Turn the same Excel-based decision model into an HTTP service that accepts JSON requests and returns explainable decision results.
Two deployment options
Select the runtime without changing the rules.
OpenRules REST is a lightweight implementation based on Undertow; the sample project is VacationDaysRest. The Spring Boot option uses VacationDaysSpringBoot. Both samples are included with OpenRules.
Add deployment=rest or deployment=spring-boot to project.properties, then run runLocalServer.bat. The first run installs the required framework libraries, builds the model, and starts the local endpoint.

Local testing
Exercise the endpoint with the supplied tests.
Run testLocalServer.bat to send a generated request to the service. Results appear in both the server and client consoles.


Clients and packaging
Call from Java or ship an executable JAR.
SampleGeneratedClient.java shows how a Java application invokes the deployed decision service. The service can also be exercised with POSTMAN.
Run package.bat to create an executable JAR in target. Start that artifact on any local or remote server with java -jar; it is also ready for upload to a cloud repository.



Deployment options
Choose the integration that fits your architecture.
Each option uses the same business-owned OpenRules decision model.
Invoke a compiled model from Java.
Open guide →02AWS LambdaDeploy a serverless AWS function.
Open guide →03MS Azure FunctionPublish a model as an Azure Function.
Open guide →04RESTful Web ServicesRun with OpenRules REST or Spring Boot.
Open guide →05SharePoint IntegrationMaintain rule repositories in SharePoint.
Open guide →06Amazon S3 IntegrationLoad rule files directly from S3.
Open guide →07Docker ContainersPackage services as portable containers.
Open guide →08Apache SparkUse OpenRules from Spark applications.
Open PDF ↗09WAR FilesDeploy to Tomcat, WebSphere, and other servers.
Open guide →Build and deploy
Try these deployment projects yourself.
The free evaluation includes ready-to-run decision models that you can build, test, and adapt.
