Custom Connector, Connector Classpath, and SSB

I’ve developed a custom connector for a project. The application we’ve integrated with had some Java libraries I was able to utilize for account management. In fact, there’s a core library and a bunch of other referenced libraries. For this reason, I’ve decided to use the connector-classpath configuration in the application definition, placing all the referenced libraries in the lib-connectors/[appname] folder as the custom connector guide suggests to do. I figured I would try to avoid any conflicts from the beginning.

Once I finished core development and unit testing locally in an IDE, I deployed the connector, referenced libraries, and IIQ config to my development environment via the SSB. Upon running my initial tests with the application defined in IIQ, I got a class not found exception for one of the classes in the referenced libraries. The custom connector guide also suggests to deploy your custom connector in a jar file in the same lib-connectors/[appname] folder where all of your references libraries are for the connector-classpath attribute, rather than just letting them live in the WEB-INF/classes directory.

Once I deployed the connector to that lib-connectors/[appname] directory in a jar file, the exceptions went away and things started working as expected. My main question is, am I deploying my custom connector correctly via a jar in the lib-connectors/[appname] directory, and if I am correct, is there an option packaged with the SSB (6.1) to deploy the identityiqCustomizations.[projectname] jar to the lib-connector directory, or do I need to write a custom ant script to do so?

Also, if it helps this is on 8.1p3.

Hey @patrickboston,

Let me reach out to the connector folks on the IIQ team and get some insights for you. Hang tight!

1 Like

Hi @patrickboston,

SSB doesn’t deploy the connector under lib-connectors/[appname] directory automatically.

“If the includeCustomJar setting in build.properties is set to true, the classes will be added to a jar file, which will be placed in the main IdentityIQ installation’s WEB-INF/lib directory. It will be named based on the customer property in build.properties. The jar will become identityiqCustomizations.customer.jar.” - SSB User Guide.

You are welcome to write custom ant script to achieve the desired result though.

Hope, this helps.

2 Likes

It does help. I guess I just want to clarify, is it expected that I need to deploy the custom connector in a jar to lib-connectors to get it to work correctly with the referenced libraries using the connector-classpath attribute? I was just hoping maybe the process wasn’t this complicated :slight_smile: but I get it.

1 Like

Hi @patrickboston,

You’re right. :slight_smile:

Just FYI: If you have multiple java classes (non-connector classes), and if you use includeCustomJar option in SSB, it will not differentiate between custom connector java classes and other java classes.

2 Likes

I have recently added a custom connector .It contains the xhtml forms as well but I don’t know where to place that connector forms to get recognised under ssb folder structure.

WEB-INF/config/connector - here I have placed the custom connector
WEB-INF/config/connector-registry.xml - placed the register file at this location & registered the custom connector.

for xhtml forms - if I see in web apps → iiq , they are at iiq/define/applications. So not exactly sure where to place them exactly. Also please check whether I’ve placed the above two files at correct location or not.
Thanks for your help & support.