Skip to main content
Skip table of contents

Build and install your tool

The Data Management SDK relies on java.util.ServiceLoader to find, load, and use service providers that implement the tool interfaces. You must make ServiceLoader aware of your tools by adding their fully-qualified class name to a service definition file located at META-INF/services/net.redpoint.dataflow.transform.Tool.

For example, given tools named DelimitedInputSampleTool, DelimitedOutputSampleTool, and LowercaseTransformSampleTool in the package net.redpoint.dataflow.samples, you must edit your service definition file to look like this:

CODE
net.redpoint.dataflow.samples.DelimitedInputSampleTool
net.redpoint.dataflow.samples.DelimitedOutputSampleTool
net.redpoint.dataflow.samples.LowercaseTransformSampleTool

Each fully-qualified classname must appear on its own line in the service definition file:

Building and installing your tool

Once you've added your tool to the service definition file, you'll need to add your tool (and any classes on which it depends) to Data Management's classpath, as described below in Installing your tool JAR. But first, you must package your tool and its dependencies in a JAR file.

Building your tool JAR on the command-line

Build a deployable JAR by running the following command from your project directory:

CODE
mvn package

This will generate a deployable JAR file in the target directory.

Building your tool JAR in Eclipse

These instructions assume that you are using maven.  To use the Maven bundled with Eclipse:

  1. From the menu bar, select Run As > Run Configurations.

  2. Right-click on Maven Build and select New.

  3. Name your run configuration something like Package My Tools. 

  4. For Base Directory, click Browse Workspace and select your SDK project.

  5. For Goals, enter package.

  6. Click Apply, and then Close.

  7. Make sure that your project is selected in the Project Explorer, and then select Package My Tools (or whatever name you chose in step 3 above) from the Run As button on the toolbar.

Building your tool JAR in Eclipse Using Maven

Building your tool JAR in NetBeans

In standard project, the NetBeans IDE builds a JAR file from your project sources every time you run the Build command or the Clean and Build command. The JAR file is generated to the target directory of your project folder.

Installing your tool JAR

To use your tools in a project, your tool JAR must be added to Data Management. RPDM will auto-discover and load any tool JAR it finds in the %RPDM_HOME\java_plugins directory.

On Windows, you cannot replace existing JAR files while any projects or automations are open.  The safest approach is to stop the RPDM services while replacing JARs.

You can also plan ahead and create symbolic links (using mklink command) from the java_plugins folder to the actual JARs.  You can update the link at any time to point to a newer JAR.

Adding your SDK tool JAR to the Java classpath under Settings > Site > Java is no longer supported as of RPDM version 8.2!

Once you have installed your JARs, restart the RPDM client, or if it is already running, click the Palette menu , and then click Reset Palette.  Your tool should now appear on the Palette.

Managing dependencies for your tools

As of version 8.2, Data Management provides your SDK tool JAR with its own ClassLoader to prevent classpath collisions with other classes loaded by Data Management.  If your tool requires additional libraries, you must include those dependencies in your SDK tool JAR by using Maven's shade plug-in. The pom.xml distributed with the SDK samples project includes a stanza that can be used as a starting point for working with maven-shade-plugin.

Sometimes you'll need to exercise finer-grained control over which dependencies are shaded into your tool JAR, beyond relying on the scope attribute in your dependency declarations. These examples may be instructive.

With version 8.2, class relocation is no longer required to avoid classpath collisions when shading your SDK tool JARs.

Do not add dependent JARs to the classpath under Settings > Site > Java, as this is no longer supported as of RPDM version 8.2.

Run your tool

After you've Built and installed your tool, you're ready to run it in the Data Management client:

  1. Select File > New Project from the menu bar.

  2. Locate your tool in the Palette by scrolling through the palette or searching for it by name.

  3. Drag your tool onto the canvas.

  4. Connect your tool as necessary, and configure any required properties.

  5. Click the Run button.

If your tool doesn't behave as expected, you can debug it.

Run Data Management from the command line

By default, Data Management installs its Site Server and Execution Server as Windows services. When developing SDK tools, you may prefer to run Data Management from the command line so you can more easily see diagnostic messages printed to standard output. 

First, stop the Data Management services:

  1. Type Windows+R to bring up the Run dialog.

  2. Type services.msc in the Open field and click OK.

  3. Find RedPointDM Version 8 Execution Service and click Stop.

  4. Optionally, you can set its Startup type to Disabled if you want explicit control over when these services start.

  5. Repeat steps 3-4 for RedPointDM Version 8 Site Service and RedPointDM Version 8 Web Service.

Now start Data Management from the command line:

  1. Open a DOS command prompt (type Windows+R, in the Run dialog, type in cmd then click OK).

  2. From the DOS command prompt, run the command: %RPDM_HOME%\program\Release\x64\rpdm_SiteServer.exe.

  3. Open another command prompt and run the command: %RPDM_HOME%\program\Release\x64\rpdm_ExecutionServer.exe.

  4. Open another command prompt and run the command: %RPDM_HOME%\program\Release\x64\rpdm_WSPServer.exe.

To stop the Site, Execution, or Web servers, give the desired command window focus and enter Control+C (or just close the command window).

 

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.