Number parameter in custom schedule task in R2

Gurus,
I have a developed a custom schedule task in OIM 11gR2 which has a number parameter as one of the input. I have defined this parm like below in my eventhandler.xml
<number-param required="true" helpText="Number of Records to Be retrieved">Number of Records</number-param>
While reading this value in the schedule task code, I am using this.
try
String records= String.valueOf(attributes.get("Number of Records"));
System.out.println("Records"+records);
catch (Exception e) {
e.printStackTrace();
I even tried with the below but same issue.
try
int records= Integer.parseInt((String)attributes.get("Number of Records"));
System.out.println("Records"+records);
catch (Exception e) {
e.printStackTrace();
But my job is failing is saying number format exception.
Can you please let me know some code snippet to read a number-param in a schedule task.

Here is a tested code for you.
import java.util.HashMap;
import oracle.iam.scheduler.vo.TaskSupport;
public class Test extends TaskSupport {
public void execute(HashMap attributes) {
try {
long recs=((Long)attributes.get("Number of Records")).longValue();
print((int) recs);
catch(Exception e) {
System.out.println("Exception 1:"+e.getMessage());
private void print(int a) {
System.out.println(" a="+a);
public HashMap getAttributes() {
return null;
public void setAttributes() {
}

Similar Messages

  • How to Pass parameter to Custom Scheduler dynamically

    hi ,
    I am new to OIM.
    Need your help in passing parameters dynamically to Custom Scheduler.
    I have created Custom Scheduler by extending Task Support.
    I have registered the plugin through API , using PlatformService.registerPlugin() method.
    As I need to send the parameter(s) to this CustomScheduler, I have defined them in Metadata (CustomScheduleTask.xml) file as below and got it imported into DB
    through weblogicImportMetadata.sh script by providing the path of the file.
    <scheduledTasks xmlns="http://xmlns.oracle.com/oim/scheduler">
    <task>
    <name>CustomScheduleTask</name>
    <class>org.schedule.custom.task.CustomScheduleTask</class>
    <description>Fetch details of the given user_id</description>
    <retry>5</retry>
    <parameters>
    <string-param required="true" helpText="Login Name">Login Name</string-param>
    </parameters>
    </task>
    </scheduledTasks>
    Iam able to import this plugin as well as register the plugin successfully. Now I have defined a job to which this Custom SchedulerTask is mapped.
    Now in order to run this job(schedule task) I need to provide Login name( or id) which needs to be send as a parameter for the scheduler to get executed.
    But while defining the job with this Schedule Task on OIM console, I was not able to define or pass parameter to this job. hence parameter is null in
    CustomSchedule 's execute method .
    Kindly help me how to pass parameter dynamically while running the scheduler from OIM console so that the execute method would be able to receive it.
    Thank you in Advance.
    Regards,
    Kumar

    Hi,
    When you have created the schedule job for your custom schedule task, you should see your Login Name textfield in the schedule task. If not, then there verify your schedule task xml.
    In your schedule class code, add:
    public void execute(HashMap arg0) {
              final String METHOD_NAME = "execute :: ";
              logger.debug(CLASS_NAME + METHOD_NAME + "Entering Method - execute");
              try {
                   String LoginName = arg0.get("Login Name");
    Regards,
    Sunny

  • Error while registering plugin for custom schedule task

    Hello,
    I am trying to register a plugin for creating a custom scheduled task. I have referred to the document
    http://docs.oracle.com/cd/E23943_01/doc.1111/e14309/refsched.htm
    Followed the below steps-
    1. Updated the task.xml as below taken from MDS database
    <task>
    <name>AC Target Source Reconciliation</name>
    <class>com.cgc.iam.customconnector.ac.ReconACTarget</class>
    <description>This schedule task reconciles the active users from AC to OIM. This is a one time initial recon</description>
    <retry>0</retry>
    <parameters>
    <string-param required="true" helpText="IT Resource">IT Resource</string-param>
    <string-param required="true" encrypted="false" helpText="FileName">FileName</string-param>
    <string-param required="true" helpText="Admin">Admin</string-param>
                   <string-param required="true" helpText="AdminPassword">AdminPassword</string-param>
    <string-param required="true" helpText="ConfigurationLookup">ConfigurationLookup</string-param>
                   <string-param required="true" helpText="FilePath">FilePath</string-param>
                   <string-param required="true" helpText="ResourceObject">ResourceObject</string-param>
    </parameters>
    </task>
         <task>
    <name>ACRoleReconTask</name>
    <class>com.cgc.iam.customconnector.ac.ReconACRoles</class>
    <description>This scheduled task will reconcile the ACGroups and AC Roles from a csv file that is stored at a shared location</description>
    <retry>0</retry>
    <parameters>
    <string-param required="true" helpText="Admin">Admin</string-param>
                   <string-param required="true" helpText="AdminPassword">AdminPassword</string-param>
                   <string-param required="true" helpText="FilePath">FilePath</string-param>
    <string-param required="true" helpText="GroupLookup">GroupLookup</string-param>               
    <string-param required="true" helpText="RoleLookup">RoleLookup</string-param>               
                   <string-param required="true" helpText="GroupTableName">GroupTableName</string-param>
                   <string-param required="true" helpText="RoleTableName">RoleTableName</string-param>
    </parameters>
    </task>
    2. Imported the task.xml into MDS.
    3. created the plugin.xml as below-
    <?xml version="1.0" encoding="UTF-8"?>
    <oimplugins xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <plugins pluginpoint="oracle.iam.scheduler.vo.TaskSupport">
    <plugin pluginclass= "com.cgc.iam.customconnector.ac.ReconACTarget" version="1.0.1" name="scheduler element"></plugin>
    <plugin pluginclass= "com.cgc.iam.customconnector.ac.ReconACRoles" version="1.0.1" name="scheduler element">
    </plugin>
    </plugins>
    </oimplugins>
    3. created the plugin.zip with the folder structure as-
    plugin.zip
    plugin.xml
    lib
    jar files
    4. set ant properties
    5. run the command
    java -jar ../../../modules/com.bea.core.jarbuilder_1.7.0.0.jar
    4. registered plugin using ant utility.
    Now, I am getting the below exception-
    oracle.iam.platform.utils.NoSuchServiceException: java.lang.reflect.InvocationTargetException
    Please help.
    Thanks
    sjit

    [echo] at weblogic.rmi.internal.wls.WLSExecuteRequest.run(WLSExecuteRequest.java:118)
    [echo] at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
    [echo] at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
    [echo] Caused by: java.sql.SQLIntegrityConstraintViolationException: ORA-00001: unique constraint (DEV1_OIM.PLUGINS_UNIQUE_NAME) violated
    [echo]
    [echo] at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:462)
    [echo] at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:405)
    [echo] at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:931)
    [echo] at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:481)
    [echo] at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:205)
    [echo] at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:548)
    [echo] at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:217)
    [echo] at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:1115)
    [echo] at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1488)
    [echo] at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3769)
    [echo] at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:3904)
    [echo] at oracle.jdbc.driver.UpdatableResultSet.executeInsertRow(UpdatableResultSet.java:8630)
    [echo] at oracle.jdbc.driver.UpdatableResultSet.insertRow(UpdatableResultSet.java:6428)
    [echo] at weblogic.jdbc.wrapper.ResultSet_oracle_jdbc_driver_UpdatableResultSet.insertRow(Unknown Source)
    [echo] at oracle.iam.platform.pluginframework.DBStore.updatePluginTable(DBStore.java:395)
    [echo] at oracle.iam.platform.pluginframework.DBStore.storePlugins(DBStore.java:193)
    [echo] at oracle.iam.platform.pluginframework.PluginManagerImpl.registerPluginAndReturnStatus(PluginManagerImpl.java:90)
    [echo] at oracle.iam.platformservice.impl.PlatformServiceImpl.registerPluginAndReturnStatus(PlatformServiceImpl.java:106)
    [echo] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [echo] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    [echo] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    [echo] at java.lang.reflect.Method.invoke(Method.java:597)
    [echo] at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
    [echo] at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
    [echo] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
    [echo] at oracle.iam.platform.utils.DMSMethodInterceptor.invoke(DMSMethodInterceptor.java:25)
    [echo] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    [echo] at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
    [echo] at $Proxy735.registerPluginAndReturnStatus(Unknown Source)
    [echo] at oracle.iam.platformservice.api.PlatformServiceEJB.registerPluginAndReturnStatusx(Unknown Source)
    [echo] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [echo] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    [echo] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    [echo] at java.lang.reflect.Method.invoke(Method.java:597)
    [echo] at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
    [echo] at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
    [echo] at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
    [echo] at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
    [echo] at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
    [echo] at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    [echo] at com.oracle.pitchfork.spi.MethodInvocationVisitorImpl.visit(MethodInvocationVisitorImpl.java:34)
    [echo] at weblogic.ejb.container.injection.EnvironmentInterceptorCallbackImpl.callback(EnvironmentInterceptorCallbackImpl.java:54)
    [echo] at com.oracle.pitchfork.spi.EnvironmentInterceptor.invoke(EnvironmentInterceptor.java:42)
    [echo] at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    [echo] at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
    [echo] at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    [echo] at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
    [echo] at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
    [echo] at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    [echo] at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
    [echo] at $Proxy734.registerPluginAndReturnStatusx(Unknown Source)
    [echo] at oracle.iam.platformservice.api.PlatformService_ott20t_PlatformServiceRemoteImpl.__WL_invoke(Unknown Source)
    [echo] at weblogic.ejb.container.internal.SessionRemoteMethodInvoker.invoke(SessionRemoteMethodInvoker.java:40)
    [echo] at oracle.iam.platformservice.api.PlatformService_ott20t_PlatformServiceRemoteImpl.registerPluginAndReturnStatusx(Unknown Source)
    [echo] at oracle.iam.platformservice.api.PlatformService_ott20t_PlatformServiceRemoteImpl_WLSkel.invoke(Unknown Source)
    [echo] at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:667)
    [echo] at weblogic.rmi.cluster.ClusterableServerRef.invoke(ClusterableServerRef.java:230)
    [echo] at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:522)
    [echo] at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
    [echo] at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:146)
    [echo] at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:518)
    [echo] ... 3 more
    [echo] Exception in thread "Main Thread" oracle.iam.platform.pluginframework.PluginStoreException: An error occurred while storing the plugin in store ORA-00001: unique constraint (DEV1_OIM.PLUGINS_UNIQUE_NAME) violated
    [echo]
    [echo] at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:237)
    [echo] at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:348)
    [echo] at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:259)
    [echo] at oracle.iam.platformservice.api.PlatformService_ott20t_PlatformServiceRemoteImpl_1036_WLStub.registerPluginAndReturnStatusx(Unknown Source)
    [echo] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [echo] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    [echo] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    [echo] at java.lang.reflect.Method.invoke(Method.java:597)
    [echo] at weblogic.ejb.container.internal.RemoteBusinessIntfProxy.invoke(RemoteBusinessIntfProxy.java:85)
    [echo] at $Proxy2.registerPluginAndReturnStatusx(Unknown Source)
    [echo] at oracle.iam.platformservice.api.PlatformServiceDelegate.registerPluginAndReturnStatus(Unknown Source)
    [echo] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [echo] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    [echo] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    [echo] at java.lang.reflect.Method.invoke(Method.java:597)
    [echo] at Thor.API.Base.SecurityInvocationHandler$1.run(SecurityInvocationHandler.java:68)
    [echo] at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    [echo] at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
    [echo] at weblogic.security.Security.runAs(Security.java:41)
    [echo] at Thor.API.Security.LoginHandler.weblogicLoginSession.runAs(weblogicLoginSession.java:52)
    [echo] at Thor.API.Base.SecurityInvocationHandler.invoke(SecurityInvocationHandler.java:79)
    [echo] at $Proxy3.registerPluginAndReturnStatus(Unknown Source)
    [echo] at oracle.iam.platformservice.utils.PluginUtility.registerPluginAndReturnStatus(PluginUtility.java:279)
    [echo] at oracle.iam.platformservice.utils.PluginUtility.main(PluginUtility.java:219)
    [echo] Caused by: oracle.iam.platform.pluginframework.PluginStoreException: An error occurred while storing the plugin in store ORA-00001: unique constraint (DEV1_OIM.PLUGINS_UNIQUE_NAME) violated
    [echo]
    [echo] at oracle.iam.platform.pluginframework.DBStore.storePlugins(DBStore.java:222)
    [echo] at oracle.iam.platform.pluginframework.PluginManagerImpl.registerPluginAndReturnStatus(PluginManagerImpl.java:90)
    [echo] at oracle.iam.platformservice.impl.PlatformServiceImpl.registerPluginAndReturnStatus(PlatformServiceImpl.java:106)
    [echo] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [echo] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    [echo] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    [echo] at java.lang.reflect.Method.invoke(Method.java:597)
    [echo] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
    [echo] at oracle.iam.platform.utils.DMSMethodInterceptor.invoke(DMSMethodInterceptor.java:25)
    [echo] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    [echo] at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
    [echo] at $Proxy735.registerPluginAndReturnStatus(Unknown Source)
    [echo] at oracle.iam.platformservice.api.PlatformServiceEJB.registerPluginAndReturnStatusx(Unknown Source)
    [echo] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [echo] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    [echo] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    [echo] at java.lang.reflect.Method.invoke(Method.java:597)
    [echo] at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
    [echo] at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
    [echo] at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    [echo] at com.oracle.pitchfork.spi.MethodInvocationVisitorImpl.visit(MethodInvocationVisitorImpl.java:34)
    [echo] at weblogic.ejb.container.injection.EnvironmentInterceptorCallbackImpl.callback(EnvironmentInterceptorCallbackImpl.java:54)
    [echo] at com.oracle.pitchfork.spi.EnvironmentInterceptor.invoke(EnvironmentInterceptor.java:42)
    [echo] at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    [echo] at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
    [echo] at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    [echo] at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
    [echo] at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    [echo] at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
    [echo] at $Proxy734.registerPluginAndReturnStatusx(Unknown Source)
    [echo] at oracle.iam.platformservice.api.PlatformService_ott20t_PlatformServiceRemoteImpl.__WL_invoke(Unknown Source)
    [echo] at weblogic.ejb.container.internal.SessionRemoteMethodInvoker.invoke(SessionRemoteMethodInvoker.java:40)
    [echo] at oracle.iam.platformservice.api.PlatformService_ott20t_PlatformServiceRemoteImpl.registerPluginAndReturnStatusx(Unknown Source)
    [echo] at oracle.iam.platformservice.api.PlatformService_ott20t_PlatformServiceRemoteImpl_WLSkel.invoke(Unknown Source)
    [echo] at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:668)
    [echo] at weblogic.rmi.cluster.ClusterableServerRef.invoke(ClusterableServerRef.java:230)
    [echo] at weblogic.rmi.internal.wls.WLSExecuteRequest.run(WLSExecuteRequest.java:118)
    [echo] at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
    [echo] at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
    [echo] Caused by: java.sql.SQLIntegrityConstraintViolationException: ORA-00001: unique constraint (DEV1_OIM.PLUGINS_UNIQUE_NAME) violated
    [echo]
    [echo] at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:462)
    [echo] at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:405)
    [echo] at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:931)
    [echo] at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:481)
    [echo] at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:205)
    [echo] at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:548)
    [echo] at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:217)
    [echo] at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:1115)
    [echo] at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1488)
    [echo] at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3769)
    [echo] at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:3904)
    [echo] at oracle.jdbc.driver.UpdatableResultSet.executeInsertRow(UpdatableResultSet.java:8630)
    [echo] at oracle.jdbc.driver.UpdatableResultSet.insertRow(UpdatableResultSet.java:6428)
    [echo] at weblogic.jdbc.wrapper.ResultSet_oracle_jdbc_driver_UpdatableResultSet.insertRow(Unknown Source)
    [echo] at oracle.iam.platform.pluginframework.DBStore.updatePluginTable(DBStore.java:395)
    [echo] at oracle.iam.platform.pluginframework.DBStore.storePlugins(DBStore.java:193)
    [echo] at oracle.iam.platform.pluginframework.PluginManagerImpl.registerPluginAndReturnStatus(PluginManagerImpl.java:90)
    [echo] at oracle.iam.platformservice.impl.PlatformServiceImpl.registerPluginAndReturnStatus(PlatformServiceImpl.java:106)
    [echo] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [echo] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    [echo] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    [echo] at java.lang.reflect.Method.invoke(Method.java:597)
    [echo] at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
    [echo] at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
    [echo] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
    [echo] at oracle.iam.platform.utils.DMSMethodInterceptor.invoke(DMSMethodInterceptor.java:25)
    [echo] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    [echo] at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
    [echo] at $Proxy735.registerPluginAndReturnStatus(Unknown Source)
    [echo] at oracle.iam.platformservice.api.PlatformServiceEJB.registerPluginAndReturnStatusx(Unknown Source)
    [echo] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [echo] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    [echo] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    [echo] at java.lang.reflect.Method.invoke(Method.java:597)
    [echo] at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
    [echo] at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
    [echo] at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
    [echo] at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
    [echo] at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
    [echo] at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    [echo] at com.oracle.pitchfork.spi.MethodInvocationVisitorImpl.visit(MethodInvocationVisitorImpl.java:34)
    [echo] at weblogic.ejb.container.injection.EnvironmentInterceptorCallbackImpl.callback(EnvironmentInterceptorCallbackImpl.java:54)
    [echo] at com.oracle.pitchfork.spi.EnvironmentInterceptor.invoke(EnvironmentInterceptor.java:42)
    [echo] at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    [echo] at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
    [echo] at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    [echo] at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
    [echo] at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
    [echo] at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    [echo] at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
    [echo] at $Proxy734.registerPluginAndReturnStatusx(Unknown Source)
    [echo] at oracle.iam.platformservice.api.PlatformService_ott20t_PlatformServiceRemoteImpl.__WL_invoke(Unknown Source)
    [echo] at weblogic.ejb.container.internal.SessionRemoteMethodInvoker.invoke(SessionRemoteMethodInvoker.java:40)
    [echo] at oracle.iam.platformservice.api.PlatformService_ott20t_PlatformServiceRemoteImpl.registerPluginAndReturnStatusx(Unknown Source)
    [echo] at oracle.iam.platformservice.api.PlatformService_ott20t_PlatformServiceRemoteImpl_WLSkel.invoke(Unknown Source)
    [echo] at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:667)
    [echo] at weblogic.rmi.cluster.ClusterableServerRef.invoke(ClusterableServerRef.java:230)
    [echo] at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:522)
    [echo] at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
    [echo] at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:146)
    [echo] at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:518)
    [echo] ... 3 more
    [echo] classpath=/users/oim/Oracle/Middleware/Oracle_IDM1/server/ext/spring.jar:/users/oim/Oracle/Middleware/Oracle_IDM1/server/ext/jakarta-commons/commons-logging.jar:/users/oim/Oracle/Middleware/Oracle_IDM1/server/platform/iam-platform-context.jar:/users/oim/Oracle/Middleware/Oracle_IDM1/server/platform/iam-platform-utils.jar:/users/oim/Oracle/Middleware/Oracle_IDM1/server/platform/iam-platform-auth-client.jar:/users/oim/Oracle/Middleware/Oracle_IDM1/server/platform/iam-platform-pluginframework.jar:/users/oim/Oracle/Middleware/Oracle_IDM1/server/client/oimclient.jar:/users/oim/Oracle/Middleware/wlserver_10.3/server/lib/wlfullclient.jar:/users/oim/Oracle/Middleware/oracle_common/modules/oracle.jrf_11.1.1/jrf-api.jar
    [echo]
    [echo]
    [echo] was_home=null
    [echo]
    [echo]
    [echo] client_home=null
    [echo]
    [echo]
    [echo] xl_home=null
    [echo]
    [echo]
    [echo] mw_home=null
    [echo]
    [echo]
    [echo] newClasspath=/users/oim/Oracle/Middleware/Oracle_IDM1/server/ext/spring.jar:/users/oim/Oracle/Middleware/Oracle_IDM1/server/ext/jakarta-commons/commons-logging.jar:/users/oim/Oracle/Middleware/Oracle_IDM1/server/platform/iam-platform-context.jar:/users/oim/Oracle/Middleware/Oracle_IDM1/server/platform/iam-platform-utils.jar:/users/oim/Oracle/Middleware/Oracle_IDM1/server/platform/iam-platform-auth-client.jar:/users/oim/Oracle/Middleware/Oracle_IDM1/server/platform/iam-platform-pluginframework.jar:/users/oim/Oracle/Middleware/Oracle_IDM1/server/client/oimclient.jar:/users/oim/Oracle/Middleware/wlserver_10.3/server/lib/wlfullclient.jar:/users/oim/Oracle/Middleware/oracle_common/modules/oracle.jrf_11.1.1/jrf-api.jar.:/sample:null/ext/ojdbc14.jar:null/ext/ucp.jar:null/oracle_common/modules/oracle.jmx_11.1.1/jmxspi.jar:null/lib/oimclient.jar:null/server/lib/wlfullclient.jar:null/ext/jakarta-commons/commons-logging.jar:null/ext/commons-logging.jar:null/ext/spring.jar:null/ext/spring.jar:null/server/lib/webserviceclient+ssl.jar:null/platform/iam-platform-utils.jar:null/server/lib/wlclient.jar:null/server/lib/weblogic.jar:null/platform/iam-platform-auth-client.jar:null/features/iam-features-system-configuration.zip:null/features/iam-features-identity.zip:null/features/iam-features-platformservice.zip:null/ext/log4j-1.2.8.jar:null/lib/XellerateClient.jar:null/lib/xlAPI.jar:null/lib/xlLogger.jar:null/lib/xlVO.jar:null/lib/xlUtils.jar:null/lib/xlCrypto.jar:null/lib/xlAuthentication.jar:null/lib/xlDataObjectBeans.jar:null/ext/oscache.jar:null/ext/javagroups-all.jar:null/lib/xlFvcUtil.jar:../../../iam/iam-lib/internal/jrf-api.jar:null/oracle_common/modules/oracle.jrf_11.1.1/jrf-api.jar:null/ext/jrf-api.jar:null/oracle_common/webservices/wsclient_extended.jar:null/oracle_common/modules/oracle.xdk_11.1.0/xmlparserv2.jar:null/oracle_common/modules/oracle.jmx_11.1.1/jmxspi.jar:null/oracle_common/modules/oracle.jmx_11.1.1/jmxframework.jar
    [echo] Error in registering the plugin. An error occurred while storing the plugin in store ORA-00001: unique constraint (DEV1_OIM.PLUGINS_UNIQUE_NAME) violated
    [echo]
    [echo] Error occured during the use of plugin registering utility. An error occurred while storing the plugin in store ORA-00001: unique constraint (DEV1_OIM.PLUGINS_UNIQUE_NAME) violated
    BUILD SUCCESSFUL
    Edited by: sjit on Nov 23, 2012 5:20 AM

  • Custom Schedule Task ( Null Pointer Exception)

    Hi All,
    I had written Custom Schedule task: Below is the code
    When i run the Schedule task it is failing throwing Null Pointer Exception. the code is not able to fetch userId ,passwordex and passwordwar values in execute method. please help me
    package oracle.iam.sample.notification;
    import java.sql.Date;
    import java.util.ArrayList;
    import java.util.HashMap;
    import java.util.HashSet;
    import java.util.List;
    import java.util.Set;
    import oracle.iam.identity.exception.NoSuchUserException;
    import oracle.iam.identity.exception.UserLookupException;
    import oracle.iam.identity.usermgmt.api.UserManager;
    import oracle.iam.identity.usermgmt.vo.User;
    import oracle.iam.notification.api.NotificationService;
    import oracle.iam.notification.exception.EventException;
    import oracle.iam.notification.exception.MultipleTemplateException;
    import oracle.iam.notification.exception.NotificationException;
    import oracle.iam.notification.exception.NotificationResolverNotFoundException;
    import oracle.iam.notification.exception.TemplateNotFoundException;
    import oracle.iam.notification.exception.UnresolvedNotificationDataException;
    import oracle.iam.notification.exception.UserDetailsNotFoundException;
    import oracle.iam.notification.vo.NotificationEvent;
    import oracle.iam.platform.Platform;
    import oracle.iam.platform.authz.exception.AccessDeniedException;
    import oracle.iam.scheduler.vo.TaskSupport;
    import static oracle.iam.identity.usermgmt.api.UserManagerConstants.AttributeName.MANAGER_KEY;
    import static oracle.iam.identity.usermgmt.api.UserManagerConstants.AttributeName.USER_LOGIN;
    import oracle.iam.platform.kernel.vo.Orchestration;
    public class PasswordExpiry extends TaskSupport {
    public PasswordExpiry() {
    super();
    public void execute(HashMap taskParameters) {
    System.out.println("inside the Execute methode");
    System.out.println("Schedule task Arguments "+taskParameters);
    String userId = (String)taskParameters.get("User Login");
    System.out.println("===========input=============== "+userId);
    String passwordex=taskParameters.get("usr_pwd_expire_date").toString();
    System.out.println("===========input=============== "+passwordex);
    String passwordwar=taskParameters.get("usr_pwd_warn_date").toString();
    System.out.println("===========input=============== "+passwordwar);
    try {
    System.out.println("inside the Try block");
    NotificationService notService = Platform.getService(NotificationService.class);
    NotificationEvent eventToSend = this.createNotificationEvent(userId, passwordex,passwordwar);
    notService.notify(eventToSend);
    } catch (Exception e) {
    e.printStackTrace();
    private NotificationEvent createNotificationEvent(String userKey, String passwordex,
    String passwordwar) throws NoSuchUserException, UserLookupException,
    AccessDeniedException {
    NotificationEvent event = new NotificationEvent();
    //get user IDs to whom notification is to be sent and set it in the
    //event object being created
    String[] receiverUserIds= getRecipientUserIds(userKey);
    event.setUserIds(receiverUserIds);
    //Set template name to be used to send notification for this event
    event.setTemplateName("PasswordWarningNotificationTemplate");
    //Setting senderId as null here and hence default sender ID would
    //get picked up
    event.setSender(null);
    //Create a map with key value pair for the parameters declared at time
    //of configuring notification event
    HashMap<String, Object> map = new HashMap<String, Object>();
    map.put("usr_key", userKey);
    map.put("usr_pwd_warn_date", passwordex);
    map.put("usr_pwd_expire_date",passwordwar);
    event.setParams(map);
    return event;
    private String[] getRecipientUserIds(String userKey) throws NoSuchUserException,
    UserLookupException, AccessDeniedException {
    UserManager usrMgr = Platform.getService(UserManager.class);
    User user = null;
    String userId = null;
    Set<String> userRetAttrs = new HashSet<String>();
    //Sending notification to both the user and his/her manager
    userRetAttrs.add(MANAGER_KEY.getId());
    userRetAttrs.add(USER_LOGIN.getId());
    User manager = null;
    String managerId = null;
    String managerKey = null;
    Set<String> managerRetAttrs = new HashSet<String>();
    managerRetAttrs.add(USER_LOGIN.getId());
    //Retrieving User ID
    user = usrMgr.getDetails(userKey, userRetAttrs, false);
    userId = user.getAttribute(USER_LOGIN.getId()).toString();
    List<String> userIds = new ArrayList<String>();
    userIds.add(userId);
    if (user.getAttribute(MANAGER_KEY.getId()) != null) {
    managerKey = user.getAttribute(MANAGER_KEY.getId()).toString();
    manager = usrMgr.getDetails(managerKey, managerRetAttrs, false);
    //Retrieving User's Manager ID
    managerId = manager.getAttribute(USER_LOGIN.getId()).toString();
    userIds.add(managerId);
    //To return String[] than an Object array
    String[] recipientIDs = userIds.toArray(new String[0]);
    return recipientIDs;
    * Call notification Engine passing an event object to it
    * @param event
    * @throws NotificationException
    private void sendNotification(NotificationEvent event) throws NotificationException {
    try {
    //Call notify method of NotificationService to pass on the event
    //to notification engine
    NotificationService notificationService = Platform.getService(
    NotificationService.class);
    notificationService.notify(event);
    } catch (EventException e) {
    throw new NotificationException(e.getMessage(), e.getCause());
    } catch (UnresolvedNotificationDataException e) {
    throw new NotificationException(e.getMessage(), e.getCause());
    } catch (TemplateNotFoundException e) {
    throw new NotificationException(e.getMessage(), e.getCause());
    } catch (MultipleTemplateException e) {
    throw new NotificationException(e.getMessage(), e.getCause());
    } catch (NotificationResolverNotFoundException e) {
    throw new NotificationException(e.getMessage(), e.getCause());
    } catch (UserDetailsNotFoundException e) {
    throw new NotificationException(e.getMessage(), e.getCause());
    } catch (NotificationException e){
    throw e;
    public HashMap getAttributes() {
    return null;
    public void setAttributes() {}
    Thank you

    The task parameters passed into a scheduled job are the parameters defined for the scheduled task definition in the metadata xml and configured in the scheduled job. They are not the data of an individual user as you seem to be trying to get. In a scheduled task I would expect some sort of search for users to operate on.

  • How to handle timestamp in custom scheduled task written for Target Recon

    Hi,
    I have wriiten a Custom scheduled task to reconciile users from target system..but whenever I run the Target Recon Scheduled task .. it generates the Recon. events for all users.
    How to handle this.. how to pass Timestamp value to custom Target Recon scheduled task.
    Thanks,
    Pallavi

    To add to Kevin's point -
    You will have to have a attribute either in the IT Resource or the Schedule Task. At the begining of the reconciliation searches, get the timestamp of the target system and store it in a variable. Fectch the timestamp attribute value from the IT Resource/Schedule Task and use that value as one of the search criteria of user profiles on the target.
    Once all the user profiles from the target are queried and reconciliation is completed then update either the IT Resource or Schedule Task attribute using OIM API.
    Hope this helps :)

  • Problem creating OIM 11g Custom Schedule task

    hi,
    i am creating custom schedule task in oim . while importing scheduletask metadata xml getting follwoing error.
    Problem invoking WLST - Traceback (innermost last):
    File "/app/Oracle/Middleware/Oracle_IDM1/server/bin/weblogicImportMetadata.py", line 21, in ?
    File "/app/Oracle/Middleware/oracle_common/common/wlst/mdsWLSTCommands.py", line 268, in importMetadata
    File "/app/Oracle/Middleware/oracle_common/common/wlst/mdsWLSTCommands.py", line 727, in executeAppRuntimeMBeanOperation
    File "/app/Oracle/Middleware/oracle_common/common/wlst/mdsWLSTCommands.py", line 697, in getMDSAppRuntimeMBean
    UserWarning: MDS-91002: MDS Application runtime MBean for "OIMMetadata" is not available. "importMetadata" operation failure.
    can any one help me.
    Thanks in Advance.

    Do the following:
    From the oracle home (oracle_idm1) run the command <ORACLE_OIM_HOME>\common\bin\wlst.cmd
    Run the connect() command and connect with the weblogic user to the to the oim managed server (port 14000)
    Use the following command change your from location to the directory where your files are at. The location should be one folder up from the base "db" directory : importMetadata(application='oim', server='oim_server1', fromLocation='e:/files', applicationVersion='*')
    -Kevin

  • Custom scheduled task link

    can i get a thread for sample custom scheduled tasks.... the class files which needs to be exported as jars to .../schedulde tasks folder

    Here it is. Copy and paste in your eclipse. Compile into a jar file and place it in the Schedule Task folder:
    - Create a task scheduler with class name default.SampleScheduler
    - Create RO Attributes
    - Create Process Definition Mappings
    Should be fine.
    package default;
    import java.util.HashMap;
    import Thor.API.Exceptions.tcAPIException;
    import Thor.API.Exceptions.tcObjectNotFoundException;
    import Thor.API.Operations.tcLookupOperationsIntf;
    import Thor.API.Operations.tcPropertyOperationsIntf;
    import Thor.API.Operations.tcReconciliationOperationsIntf;
    import com.thortech.xl.scheduler.tasks.SchedulerBaseTask;
    public class SampleScheduler extends SchedulerBaseTask {
              private tcLookupOperationsIntf tclookupoperationsintf = null;
              private tcPropertyOperationsIntf tcpropertyoperationsIntf = null;          
              private tcReconciliationOperationsIntf reconUtil = null;
              private String ROName = null;
              public SampleScheduler() {
                   public void init() {
                        getAPIClass();
                        ROName = getAttribute("Resource Object");
                   private void getAPIClass() {
                        try {
                   tclookupoperationsintf = (tcLookupOperationsIntf)getUtility("Thor.API.Operations.tcLookupOperationsIntf");               
                   reconUtil = (tcReconciliationOperationsIntf)getUtility("Thor.API.Operations.tcReconciliationOperationsIntf");
                   } catch (tcAPIException e) {
                   throw new RuntimeException("Unable to create API instance " +
                             "instance", e);
                   public void execute() {
                        processReconciliation();
              public void processReconciliation(){
                             try {
                                  HashMap recData = new HashMap();
                                  recData.put("Users.UserID", "Test01");
                                  recData.put("Users.First Name", "TestFN");
                                  recData.put("Users.Last Name", "TestLN");
                                  recData.put("Users.OrganizationName","Xellerate Users");
                                  recData.put("Users.EmployeeType", "Full-Time Employee");
                                  recData.put("Users.UserType", "End-User");
                                  try {
                                       long msRceKey =0;
                                       msRceKey = reconUtil.createReconciliationEvent(ROName, recData,
                                                 true);
                                  } catch (tcAPIException tce) {
                                       // throw new RuntimeException(tce);
                                  } catch (tcObjectNotFoundException ex) {
                                       // throw new RuntimeException(ex);
                             } catch (Exception e) {
                                  throw new RuntimeException(e);
    Thanks
    Sunny

  • Custom Schedule Tasks (Administration WorkList)

    Hi All,
    Is possible create a custom schedule tasks? for example create a interface where I alter the period that execute the job?
    Thanks
    Ivo

    Hello,
    I don't think so you can do it dynamically through an interface.
    But there is another approach to this.
    Have a Process defined that has
    1) a CO of type Service-External service, that reads an R/3 table through an RFC call. You maintain the period parameters in this table
    2) a alternative/decision/process control block that checks for the period.
    if true ,then proceed else loop back to 1)
    3)a CO of type Process Control-Initiate Process (Using Predefined Template) that points to the process  that you wanna start.
    This is just a draft. You can make it look really good.
    Cheers,
    Mandrake!

  • Custom Schedule Task error

    Schedule Task Logic:
    SQL query to get list of user id's
    For each user get resource objects
    Update UPN for AD resource if Status 'provisioned' or 'enabled'
    1) After Schedule task processes 500-600 users i get following error in log for each subsequent user.
    09:42:27,608 ERROR [XELLERATE.DATABASE] Class/Method: tcDataBase/readPartialStatement encounter some problems: ORA-01000: maximum open cursors exceeded
    java.sql.SQLException: ORA-01000: maximum open cursors exceeded
         at oracle.jdbc.driver.SQLStateMapping.newSQLException(SQLStateMapping.java:70)
    2) i do check for isStop() method and try to return from code but Schedule Task keeps running till all the users are processed.
    NOTE: Number of users to be processed are 9-10K.
    Thanks a lot.

    Here is the solution:
    1) Login to the OIM database as sys and run the query:
    SQL> select name,value from v$parameter where name like '%curs%';
    NAME - VALUE
    cursor_space_for_time - FALSE
    session_cached_cursors - 20
    cursor_sharing - EXACT
    open_cursors - 300
    change cursor_sharing parameter to *'FORCE'* in the init.ora or spfile, and bounce the database.
    2) The method should be isStopped() for checking the Stop Execution checkbox in the shceduler.
    Thanks
    Sunny

  • Custom scheduled tasks dissapears in Windows 2012

    I have created custom task in Task Scheduler, but it does no appear under "Active Tasks".
    I found the task in C:\Windows\System32\Tasks, but not in the "schtasks /query".
    What is happening?

    Hi sindred,
    àI have created custom task in Task Scheduler, but it does no appear under "Active Tasks".
    I also create a task in my Lab environment via Task Scheduler. Yeah, as you find, the scheduled task didn't appear under "Active Tasks". However, after that task running, please refresh,
    and then you will find it in "Active Tasks" list.
    àI found the task in C:\Windows\System32\Tasks, but not in the "schtasks /query".
    How you configure Location option in General tab when create this task? After creating the scheduled task, please click Task Scheduler Library and check if find that created task. I also run
    "schtasks /query" command. However, I can find that task which I created. I suggest that check the result of "schtasks /query" command again. Meanwhile, please open this task Properties and click History tab, then check
    if find some relevant events.
    If any update, please feel free to let me know.
    Best regards,
    Justin Gu
    Please remember to mark the replies as answers if they help and unmark them if they provide no help. If you have feedback for TechNet Support, contact [email protected]

  • Error while running custom schedule task.

    Hello,
    I have created a schedule task, when I am running the task from sysadmin, it wont show any error message.
    In diagnostic log, I got the below error
    [2012-11-29T07:00:18.507-08:00] [oim_server1] [ERROR] [] [oracle.iam.transUI.impl] [tid: OIMQuartzScheduler_Worker-7] [userId: oiminternal] [ecid: 80eeb34d89d5ed80:-1384f0e3:13b4bd4b64a:-8000-0000000000000005,1:29060] [APP: oim#11.1.2.0.0] ADP ClassLoader failed to load: com.cgc.iam.customconnector.ac.ReconAC
    Please help.
    Thanks
    sjit

    Make sure you have included the jar file containing the class - com.cgc.iam.customconnector.ac.ReconAC in OIM classpath.

  • Update password custom scheduled task orchestration event handler issue

    Hello experts,
    I am trying to run a custom scheduled to update user password in OIM 11.1.1.5
    Consider there are 5 users in the input feed file
    TSTUSR1
    TSTUSR2
    TSTUSR3
    TSTUSR4
    TSTUSR5
    Problem i am facing is when update of change password fails for a user then for the subsequent users also its getting failed. Say for TSTUSR3 the change password is failed for some reason (consider user not present) then for TSTUSR4 and TSTUSR5 also it is getting failed.
    Note: here the changepassword for TSTUSR4 and TSTUSR5 is getting called but i am getting some orchestration event handler exception as below.
    <Mar 9, 2012 6:26:12 AM CET> <Warning> <oracle.iam.platform.kernel.impl> <IAM-00 80002> <Orchestration validation failed on the event handler - The password change operation failed.>
    Exception occured during change password
    oracle.iam.identity.exception.UserManagerException: The password change operatio n failed.
    at oracle.iam.identity.usermgmt.impl.UserManagerImpl.changePassword(User ManagerImpl.java:3024)
    at oracle.iam.identity.usermgmt.impl.UserManagerImpl.changePassword(User ManagerImpl.java:2959)
    at oracle.iam.identity.usermgmt.api.UserManagerEJB.changePasswordx(Unkno wn Source)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces sorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJo inpointUsingReflection(AopUtils.java:310)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMetho dInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMetho dInvocation.proceed(ReflectiveMethodInvocation.java:149)
    at com.bea.core.repackaged.springframework.aop.support.DelegatingIntrodu ctionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
    at com.bea.core.repackaged.springframework.aop.support.DelegatingIntrodu ctionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMetho dInvocation.proceed(ReflectiveMethodInvocation.java:171)
    at com.bea.core.repackaged.springframework.jee.spi.MethodInvocationVisit orImpl.visit(MethodInvocationVisitorImpl.java:37)
    at weblogic.ejb.container.injection.EnvironmentInterceptorCallbackImpl.c allback(EnvironmentInterceptorCallbackImpl.java:54)
    at com.bea.core.repackaged.springframework.jee.spi.EnvironmentIntercepto r.invoke(EnvironmentInterceptor.java:50)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMetho dInvocation.proceed(ReflectiveMethodInvocation.java:171)
    at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocat ionInterceptor.invoke(ExposeInvocationInterceptor.java:89)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMetho dInvocation.proceed(ReflectiveMethodInvocation.java:171)
    at com.bea.core.repackaged.springframework.aop.support.DelegatingIntrodu ctionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
    at com.bea.core.repackaged.springframework.aop.support.DelegatingIntrodu ctionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMetho dInvocation.proceed(ReflectiveMethodInvocation.java:171)
    at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopPr oxy.invoke(JdkDynamicAopProxy.java:204)
    at $Proxy331.changePasswordx(Unknown Source)
    at oracle.iam.identity.usermgmt.api.UserManager_nimav7_UserManagerRemote Impl.__WL_invoke(Unknown Source)
    at weblogic.ejb.container.internal.SessionRemoteMethodInvoker.invoke(Ses sionRemoteMethodInvoker.java:40)
    at oracle.iam.identity.usermgmt.api.UserManager_nimav7_UserManagerRemote Impl.changePasswordx(Unknown Source)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces sorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at weblogic.ejb.container.internal.RemoteBusinessIntfProxy.invoke(Remote BusinessIntfProxy.java:85)
    at $Proxy195.changePasswordx(Unknown Source)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces sorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflecti on(AopUtils.java:307)
    at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynami cAopProxy.java:198)
    at $Proxy328.changePasswordx(Unknown Source)
    at oracle.iam.identity.usermgmt.api.UserManagerDelegate.changePassword(U nknown Source)
    And below is the code snippet i am using
    try
    CsvReader fileName = new CsvReader(actualPath);
    fileName.readHeaders();
    while (fileName.readRecord()) {
    try
    String username = fileName.get("USR_LOGIN").toUpperCase();
    String password = fileName.get("USR_PASSWORD");
    if(!isNullOrEmpty(username)&& !isNullOrEmpty(password) )
         userAPI.changePassword(username, password.toCharArray(),true);
    else
         System.out.println("Record is empty");
         err.add(fileName.getRawRecord());     
    } catch (Exception e) {
    err.add(fileName.getRawRecord());     
    System.out.println("Exception occured during change password");
    e.printStackTrace();
    System.out.println("Continuing with next record");
    catch (Exception e) {
    e.printStackTrace();
    Your input at the earliest would be helpful.
    Thanks,
    DK
    Edited by: 875142 on Mar 8, 2012 10:56 PM

    It shouldn't but this is an OIM issue. handle yourself the possible cause.
    Myself experienced the same and it was because of policy failure.
    Try to put below check before password update.
    import oracle.iam.passwordmgmt.vo.ValidationResult;
    import oracle.iam.identity.usermgmt.vo.User;
    import oracle.iam.passwordmgmt.api.PasswordMgmtService;
    User searchedUser = null;
    ValidationResult validationResult = null;
    PasswordMgmtService pwdMgmt = Platform.getService(PasswordMgmtService.class);
    searchedUser = userAPI.getDetails(resultSet11g.getString("USR_LOGIN"), null, true);
    //Check if password is as per attached password policy
    validationResult = pwdMgmt.validatePasswordAgainstPolicy(password.toCharArray(), userLogin, searchedUser.getLocale());
    logger.debug("Result" + validationResult.isPasswordValid());
    if (validationResult.isPasswordValid()) {
    //Change the password
    userAPI.changePassword(username, password.toCharArray(),true);
    I suggest even validate if user exist or not.you can handle it using serchedUser(in above code). The above code validating policy only.
    --nayan                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • Custom Schedule Job Issue - OIM 11g R2

    Hi All,
    I deployed a custom schedule task to assign a role to a user and created a schedule job for the same.
    The problem is my job is executing twice even though I ran it for one time and getting exception saying Role already assigned..
    please tell me how to make execute job only once on one execution
    Thanks in advance
    Praveen...

    sorry, for late reply...
    I tried restarting servers... no luck....
    1)java code
    public class TerminateAbscondUsers extends TaskSupport
    ODLLogger logger = ODLLogger.getODLLogger("OIMCP.SAPH");
    UserManager usrMgr = Platform.getService(UserManager.class);
    public HashMap getAttributes()
    return null;
    public void setAttributes()
    public void execute(HashMap hashMap)
    logger.info("Entered TerminateAbscondUsers:execute() method");
    Long abscondDays = (Long)hashMap.get("AbscondDays");
    logger.info("Abscond Days = "+ abscondDays);
    List<User> resultUserList = getUserList();
    disableUsers(resultUserList,abscondDays);
    logger.info("Left TerminateAbscondUsers:execute() method");
    public List<User> getUserList()
    logger.info("Entered TerminateAbscondUsers:getUserList() method");
    HashSet<String> reqAttr = new HashSet<String>();
    reqAttr.add("User Login");
    reqAttr.add("Status");
    //reqAttr.add("EventDate");
    reqAttr.add("DateOfAbsconding");
    List<User> usrList = new ArrayList<User>();
         SearchCriteria usrIDSearchCriteria = new SearchCriteria("Action","AB",SearchCriteria.Operator.EQUAL);
         try
              usrList = usrMgr.search(usrIDSearchCriteria,reqAttr,null);
              logger.info("Absconded userList size ="+ usrList.size());
         catch(UserSearchException use)
              logger.info("UserSearchExecption = " + use.getMessage());
    catch(Exception e)
              logger.info("Exception TerminateAbscondUsers:getUserList() = " +Arrays.toString(e.getStackTrace()));
         logger.info("Absconded usrList = " + usrList.toString());
         logger.info("Left TerminateAbscondUsers:getUserList() method");
         return usrList;
    public void disableUsers(List<User> resultUserList, Long abscondDays)
    logger.info("Entered TerminateAbscondUsers:disableUsers() method");
         UserManagerResult localUserManagerResult1;
         UserManagerResult localUserManagerResult2;
    try
              for(int i=0;i<resultUserList.size();i++)
                   String userLogin = resultUserList.get(i).getLogin();
                   logger.info("User Login = " + userLogin);
                   Long userKey = (Long)resultUserList.get(i).getAttribute("usr_key");
                   String strUsrKey = userKey.toString();
                   logger.info("User key = " + strUsrKey);
                   //Date abscondDate = (Date)resultUserList.get(i).getAttribute("EventDate");
                   Date abscondDate = (Date)resultUserList.get(i).getAttribute("DateOfAbsconding");
                   Date currentDate = new Date();
                   Long diffDate = (Long)((currentDate.getTime() - abscondDate.getTime())/(1000*60*60*24));
                   if( diffDate > abscondDays)
                        logger.info("diff date = " + diffDate);
                        User localUser = new User(strUsrKey);
                        localUser.setAttribute("End Date",(Object)currentDate);
                        localUser.setAttribute("Action","TE");
                        localUserManagerResult1 = usrMgr.modify(localUser);
                        logger.info("Set End Date operation status = " + localUserManagerResult1.getStatus());
                        localUserManagerResult2 = usrMgr.disable(userLogin,true);
                        logger.info("Terminate operation status = " + localUserManagerResult2.getStatus());
    catch(ValidationFailedException vfe)
    logger.info("ValidationFailedException = " + vfe.getMessage());
    catch(UserDisableException ude)
    logger.info("UserDisableException = " + ude.getMessage());
    catch(NoSuchUserException nsue)
    logger.info("NoSuchUserException = " + nsue.getMessage());
    catch(UserModifyException ume)
    logger.info("UserModifyException = " + ume.getMessage());
    catch(Exception e)
         logger.info("Exception TerminateAbscondUsers:getUserList() = " +Arrays.toString(e.getStackTrace()));
         logger.info("Left TerminateAbscondUsers:disableUsers() method");
    2) METADATA XML
    <scheduledTasks xmlns="http://xmlns.oracle.com/oim/scheduler">
    <task>
    <name>Terminate Abscond Users</name>
    <class>com.hdfclife.oracle.iam.customScheduler.user.TerminateAbscondUsers</class>
    <description>Terminate Abscond Users</description>
    <retry>5</retry>
    <parameters>
    <number-param required="true" helpText="No. of days since Absconded">AbscondDays</number-param>
    </parameters>
    </task>
    </scheduledTasks>
    Thanks in Advance...

  • GTC Scheduled task recon error - Bootstrap connections

    Hi,
    Well, I am getting an error when running the scheduled task which is created automatically when we install GTC conn.
    I am running recon of data stored on files and my App Server is IBM WAS.
    I am trying to figure out where I should set up the correct bootstrap port number which in my case SIB_ENDPOINT_SECURE_ADDRESS = 7289, and not 7286.
    It seems to happen only when I run this scheduled task. For example, built-in scheduled tasks and a full custom scheduled task work properly.
    Does anybody know which file or OIM table I should change to redirect it to the right bootstrap port?
    BTW, it is a replicated environment and WAS was installed on a different profile, that is why we have a different bootstrap port numbers, not the default ones.
    Regards,
    Hugo
    +[3/12/10 16:56:20:400 BRT] 00000035 SystemOut O ERROR,12 Mar 2010 16:56:20,399,[XELLERATE.JMS],Class/Method: MessageQueue/connect encounter some problems: CWSIT0006E: It was not possible to contact any of the specified bootstrap servers. Please see the linked exception for further details. Bootstrap connections were attempted to: [Default:7286:BootstrapSecureMessaging]+
    +com.ibm.websphere.sib.exception.SIResourceException: CWSIT0006E: It was not possible to contact any of the specified bootstrap servers. Please see the linked exception for further details. Bootstrap connections were attempted to: [Default:7286:BootstrapSecureMessaging]+

    An update, in case someone got the same error.
    I just changed the file resources.xml which is located in a folder under WAS_HOME.
    Old value: name="ProviderEndpoints" type="java.lang.String" value="Default"
    New value: name="ProviderEndpoints" type="java.lang.String" value="<your hostname>:7289:BootstrapSecureMessaging"
    At least, the error is not being logged anymore.

  • Masked attribute for Schedule Task paramter

    Hello,
    I have a custom schedule task and it takes some parameters like FilePath, Username, and password.
    Now, after I have created my job, in parameters I want the Password field to be masked.
    Does changing the parameter encrypted ="true" makes this masked or it will encrypt the field at run time and in code I have to decrypt that.
    <string-param required="true" encrypted="true" helpText="AdminPassword">AdminPassword</string-param>
    Please suggest any for this.
    Thanks
    Sjit

    Ideally It should be masked. But, I don't think this is happening. And there is no other way to mask as well
    Oracle doc given below info
    encrypted:
    By default, it has a value of false and this can take a value of either true or false.
    If the value of the encrypted attribute is true, then the entered value for the parameter at run time is stored in encrypted form.
    If the value of the required attribute is false, then the entered value for the parameter at run time is stored in plain text.
    So the given value won't be masked rather stored in encrypted form at run time.

Maybe you are looking for

  • Cross Reference incorrect syntax

    Trying to create a partial text cross reference using the suggested code: <fullPara delim=":" includeDelim="false"/> However, InDesign (CC) is giving me an "Incorrect Syntax" message. Ideas? Thanks.

  • Can no longer sync mac with ipad

    Is there any solution to this problem ..... they say you must download ITunes 11....  ok but then when one tries to install it says must update to OSX 10.6.3 which is impossible to download ..... Am I missing something that I could do ?

  • SAP Bank Communications Management

    Hi I wonder if anyone can help?  We are currently exploring with our bank using their facility for transmitting Payment Files directly to them through a secure transfer and also retrieving Statements, Forecasts, Acknowledgments and Rejections.  The P

  • Co-Administrator added to the default directory cannot log in, Error message: No Subscriptions

    So I had set up Azure Subscription earlier this week and activated a Standard website plan. I added co-admins to the default directory but when they try to log in through manage.windowsazure.com they get an error that there are no subsciprtions assoc

  • Web service not visible in web service navigator

    Hi, Whenever i deploy my web service application ear, i am not been able to see the corresponding web service in web service navigator or in web service perspective. For any other project its working fine. but for this specific project its not at all