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:

Deployment using the Server's command line interface

Note: The corticonManagement utilities are installed by the distinct installer PROGRESS_CORTICON_7.x_UTILITIES_WIN_64.exe that defaults to locating the utilities at C:\Progress\Corticon 7.x\Utilities. You need to install a license to enable it. To run the utility, choose Start > Progress > Corticon Command Prompt, and then navigate to the installation location's bin directory. Type corticonManagement to display its usage.

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 values separated by spaces 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
Note: Any values that contain spaces must be in quotes. For example:
-ij "C:\Program Files\myExtensions.jar" "C:\Program Files\myCallouts.jar"
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  
   --toplevelentities "Entity1,Entity2"

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 and top level entities 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="" />
   <attribute name="toplevelentities" 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" 
   toplevelentities="Item,Order"
/>
Note: Deployment 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.