Monday, June 22, 2015

OIM 11GR2 Custom Transformation Provider GTC

  1. Create a class which will implement com.thortech.xl.gc.spi.TransformationProvider.
  2. You will need to add the jar file xlGenConnector.jar to the classpath which can be found in the OIM server lib
  3. This class can be a part of your JavaTasks jar or can be in a different jar altogether. This has to be uploaded to JavaTasks using the UploadJar Utility
  4. The following MDS file need to be uploaded to the location: /db/GTC/ProviderDefinitions
  5. Make sure to update the class,name and the response codes in the below xml file
      1. <?xml version='1.0' encoding='UTF-8'?>
        <Provider>
           <Transformation>
             <TransformationProvider class="com.suncorp.javatasks.CustomTransformationProvider"
                                     name="CustomTransformationProvider">
               <Configuration>
                 <Parameter type="Runtime" datatype="String" required="YES" encrypted="NO" name="Input"/>
                 <Response code="REMQUOTES_INPUTSTR_MISSING" description="Input String is Missing"/>
               </Configuration>
             </TransformationProvider>
          </Transformation>
        </Provider>
          
  6.  You will need to create 2 resource bundle files. And they should be named after the transformationprovider name you have specified in the xml above. In my case they will be as shown below:
      1. CustomTransformationProvider.properties
      2. CustomTransformationProvider_en.properties
  7. The following will be the contents of the property file:
  8. ###### Transformation Provider  ######


    #gc.provider.TransformationProvider.CustomTransformationProvider=CustomTransformationProvider
    TransformationProvider.CustomTransformationProvider.Input.label=Input
    TransformationProvider.CustomTransformationProvider.Input.description=UserLogin
    #gc.error.TransformationProvider.CustomTransformationProvider.REMQUOTES_INPUTSTR_MISSING= Input String Missing

    GC.GCPROV.TransformationProvider.CustomTransformationProvider.REMQUOTES_INPUTSTR_MISSING=Input String Missing
    GC.GCPROV.TransformationProvider.CustomTransformationProvider.REMQUOTES_INPUTSTR_MISSING.description=The input string is missing.
     
  9. Upload the above resource bundles to the following location using the UploadResourceBundles Utility which will be option "2": Connector Resources
  10. Once all this is in place you should be able to see the transformation provider in the modify GTC connector UI as shown below:

  11. You should be good to go and test your transformation.