skip to main content
Corticon Extensions Guide : Deploying Decision Services with extensions
 

Try Corticon Now

Deploying Decision Services with extensions

Once you have added extension jars to your project, several deployment tools provide mechanisms to package the extension JARs into deployment. When you compile a project Ruleflow into an EDS file, the extension JARs are encapsulated within the encrypted .eds. That insures that regardless how you relocate or update a Decision Service, the extension JARs that are associated with it are consistent.

Deployment from Studio

The three standard techniques in Studio that package and deploy Decision Services all incorporate the extension JARs that were associated with the project:
*Deploying directly to a server
*Deploying to a server through a Web Console application
*Packaging the EDS file locally for access by other tools or the Web Console to complete the deployment.

Deployment using the Server's command line interface

When you use the tool CorticonManagement at a server's [CORTICON_HOME]\Server\bin location, the compile command provides parameters that will declare dependent JARs and then include them. Both parameters take comma-separated values and both parameters are required to achieve the packaging into EDS file.
-dj,--dependentjars dependentJar add jar files required for this decision service
-ij,--includedjars includedJar add jar files to include in the generated eds file
A complete command might look like this:
corticonManagement
--compile
--input C:\myProject\myRuleflow.erf
--output C:\myProject\Output
--service MyDS
--dependentjars C:\myProject\myExtensions.jar,C:\myProject\myCallouts.jar
--includedjars C:\myProject\myExtensions.jar,C:\myProject\myCallouts.jar
With only required options specified, the result is C:\myProject\Output\MyDS.eds
Additions to Ant macro compile arguments
If you want to use Ant macros for the corticonManagement command line utilities that are in the file [CORTICON_HOME]\Server\lib\corticonAntMacros.xml, you can set the required extension JARs in the arguments for the compile macro so that you can use them in the call:
<attribute name="input" default=""/>
<attribute name="output" default="" />
<attribute name="service" default="" />
<attribute name="version" default="false" />
<attribute name="edc" default="false" />
<attribute name="failonerror" default="false" />
<attribute name="dependentjars" default="" />
<attribute name="includedjars" default="" />
Example of a call to the compile macro:
<corticon-compile
input="${project.home}/Order.erf"
output="${project.home}"
service="OrderProcessing"
dependentjars="${project.home}/myExtensions.jar,${project.home}/myCallouts.jar"
includedjars="${project.home}/myExtensions.jar,${project.home}/myCallouts.jar"
/>
Note: Deploymemt to a Corticon .NET Server - Once a project that includes extension JARs is packaged into a Decision Service, it deploys and performs as expected on Corticon .NET Server.