BPM 7.5.1 – Waging war against cyclic dependencies

I’m wearing the hat of toolkit producer these days and I’m responsible for delivering a number of outbound JDBC Advanced Integration Services.

Another team member is working on another toolkit, which also implements JDBC AISs.

Both toolkits need the JDBC connector module to compile, and both toolkits will bundle the JDBC RAR (embedded adapter).

This arrangement creates two interesting problems. One at ID workspace compile time, the other at runtime deployment time.

When I create the outbound JDBC import on my toolkit implementation module, the JDBC connector project with the adapter RAR is created, and in order to compile the toolkit, this project has to be associated with it or its dependencies.

So I associated the connector with my toolkit. Splendid.

Now, when I bring into my workspace the other team member’s toolkit, which also has the connector associated with it, things get hairy. Process Center tells me the connector already exists in my workspace, and I say “fine, makes sense, don’t bother loading it to my workspace a second time then” and I deselected it from the projects to bring in.

But then, what happens is, the connector is associated with only one of the toolkits, and my ID workspace can’t build. Joy.

To make matters worse, the runtime starts moaning about duplicate contributions, along the lines of “CWYBC_JDBC is already installed”.

Now, we can install the rar standalone on the server and that would resolve the deployment issue, but we still need a way to build the toolkits.

So what we did is factored out the connector project into a third toolkit and made both my toolkit and the other team member’s depend on it.

This approach worked fine, the connector module is associated with a single toolkit and that solves the build problems, and, somewhat counter intuitively, even though both our toolkit implementation modules dependencies ask for the connector project to be embedded, the deployment works OK as well.


About Gabriel Telerman
Occupation: IBM SOA-BPM Consultant. Profession: Guitar Hero

2 Responses to BPM 7.5.1 – Waging war against cyclic dependencies

  1. Sadhana says:

    Hi Gabriel –

    I am trying to build and deploy a SCA module that has a dependency on the CWYBC_JDBC.rar file. I have installed the RAR already on the WPS run time. But when I try to run the service deploy on a zip of the module, that does not include the rar, the build terminates with errors . Is there a way around this problem ?

  2. Chakry says:

    We were able to deploy the SCA modules without the CWYBC_JDBC.rar being packaged inside the application. But these apps were not able to connect to database using BPE datasource configured using out of the box JDBC drivers. Once RA CWYBC_JDBC.rar is installed and configured, these apps are successfully talking to db.

    I am still sturggling to understand a definite reason as to why the RA is needed to be able to connect to the DB despite the jdbc driver already installed and configured.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: