Custom scheduling of iBots

I posted the following to the siebel-analytics user group so I apologize in advance for the cross posting.
However, I have a fast approaching deadline and I am hoping that someone on this forum can help me understand the background processes behind Delivers. What I would like to do is to call an iBot from a pl/sql package. I see that the S_NQ_SCHED schema contains four files. When I schedule a job to run I noticed that the S_NQ_JOB table is updated with the various timestamps pertaining to the scheduled iBot's job_id that I would like to run. The columns of interest I believe are shown below in the update statement I've written:
update s_nq_sched.s_nq_job set next_runtime_ts = to_date('30-May-2008 16:26:00', 'dd-Mon-yyyy HH24:MI:SS'),
begin_year = 2008,
begin_month = 5,
begin_day = 30,
start_hour = 9,
start_minute = 26,
end_hour = 9,
end_minute = 26
where job_id = 21
where the next_runtime_ts is the GMT.
If I schedule a job to run in Delivers and then change the next_runtime_ts (and the other above mentioned columns) via my update statement then Delivers will run the job at the newly specified time. If I don't schedule a job in Delivers and just update the next_runtime_ts (et. al.) column of the existing record (where job_id = 21 in above example) then the job does not run. Do you know of the background processes Delivers runs that check to see when to run the next scheduled job? And how that process is initiated? I believe the job that I'm scheduling through Delivers is being cached so is there a programmatic way to turn off/refresh the cache?
Any help or direction you can offer would be greatly appreciated.
Regards,
Joseph

Joseph,
This is what i understand from your post.
1. Need to know the background of delivers
2. How to turn off cache or delete cache.
1. Dashboard delivers is the process by which users can create jobs which they want to occur on a regular basis. Dashboard delivers uses job schedular to schedule and execute the jobs. So every time you create a Ibot in dashboard a job is created in the job schedular but it also created a atr file in the users/ibot user/delivers folder. So job manager uses the entry made in job schedular to execute the specified dashboard job.
2. You can either turn off cache or purge cache. Choice is your depending on your requirement. To turn off you can set the parameter in nqsconfig.ini file. To purge you can create a purge script and schedule it through job manager. There different ways by which you can purge a cache..by user who created or by subject area, or complete or by database it is hitting.
Hope this answers your question.

Similar Messages

  • Custom Scheduling

    I am asking my question prematurely as the business requirement is fluid at the moment. The need here is to schedule reports based on the last business day of the week. If the end of month fall mid-week, then the report should run on that day too.
    My thoughts are that I could create a custom table having 3 columns, run_date, start_date & end_date (start & end to be used as criteria to restrict data & start date would typically be the prior run date). Use this table in the 'Conditional Request' tab.
    What would you recommend I do in such a scenario. Has anyone out there actually done some custom scheduling?
    Thanks,
    Dinesh.

    Joseph,
    This is what i understand from your post.
    1. Need to know the background of delivers
    2. How to turn off cache or delete cache.
    1. Dashboard delivers is the process by which users can create jobs which they want to occur on a regular basis. Dashboard delivers uses job schedular to schedule and execute the jobs. So every time you create a Ibot in dashboard a job is created in the job schedular but it also created a atr file in the users/ibot user/delivers folder. So job manager uses the entry made in job schedular to execute the specified dashboard job.
    2. You can either turn off cache or purge cache. Choice is your depending on your requirement. To turn off you can set the parameter in nqsconfig.ini file. To purge you can create a purge script and schedule it through job manager. There different ways by which you can purge a cache..by user who created or by subject area, or complete or by database it is hitting.
    Hope this answers your question.

  • 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

  • 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

  • Custom Scheduler Error  and guidance required

    Hello Experts,
    I am creating a custom scheduler on OIM 11g R1, while running the importmetadata.bat am getting the following error:
    FYI: OIM on win 32 platform:
    While running script first am getting the your environment has been set then the following error, this is the first time am creating a custom scheduler
    And i have done the following things:
    1. created a plugins.xml and OIMsamplescheduledtask.zip in pluginsutillity
    2. created a task folder in which i have custom folder where I have placed samplescheduledtask.xml
    3. edited weblogic.properties file where I have changed
    metadata_from_loc=C:\Oracle\Middleware\Tasks
    and after running script getting this response:
    Initializing WebLogic Scripting Tool (WLST) ...
    Welcome to WebLogic Server Administration Scripting Shell
    Type help() for help on available commands
    Starting import metadata script ....
    Please enter your username :weblogic
    Please enter your password :
    Please enter your server URL [t3://localhost:7001] :192.168.1.2:7001
    Connecting to t3://192.168.1.2:7001 with userid weblogic ...
    Successfully connected to Admin Server 'AdminServer' that belongs to domain 'idm
    domain'.
    Warning: An insecure protocol was used to connect to the
    server. To ensure on-the-wire security, the SSL port or
    Admin port should be used instead.
    Location changed to domainRuntime tree. This is a read-only tree with DomainMBea
    n as the root.
    For more help, use help(domainRuntime)
    Problem invoking WLST - Traceback (innermost last):
    File "C:\Oracle\Middleware\Oracle_IDM1\server\bin\weblogicImportMetadata.py",
    line 21, in ?
    File "C:\Oracle\MIDDLE~1\ORACLE~1\common\wlst\mdsWLSTCommands.py", line 268, i
    n importMetadata
    File "C:\Oracle\MIDDLE~1\ORACLE~1\common\wlst\mdsWLSTCommands.py", line 727, i
    n executeAppRuntimeMBeanOperation
    File "C:\Oracle\MIDDLE~1\ORACLE~1\common\wlst\mdsWLSTCommands.py", line 697, i
    n getMDSAppRuntimeMBean
    UserWarning: MDS-91002: MDS Application runtime MBean for "@applicationname" is
    not available. "importMetadata" operation failure.
    Kindly suggest
    regards,
    KK
    Edited by: 958122 on Jan 10, 2013 8:37 PM

    both servers are running fine, now getting this error
    Initializing WebLogic Scripting Tool (WLST) ...
    Welcome to WebLogic Server Administration Scripting Shell
    Type help() for help on available commands
    Starting import metadata script ....
    Please enter your username :weblogic
    Please enter your password :
    Please enter your server URL [t3://localhost:7001] :192.168.1.2:7001
    Connecting to t3://192.168.1.2:7001 with userid weblogic ...
    Successfully connected to Admin Server 'AdminServer' that belongs to domain 'idm
    domain'.
    Warning: An insecure protocol was used to connect to the
    server. To ensure on-the-wire security, the SSL port or
    Admin port should be used instead.
    Location changed to domainRuntime tree. This is a read-only tree with DomainMBea
    n as the root.
    For more help, use help(domainRuntime)
    Problem invoking WLST - Traceback (innermost last):
    File "C:\Oracle\Middleware\Oracle_IDM1\server\bin\weblogicImportMetadata.py",
    line 21, in ?
    File "C:\Oracle\MIDDLE~1\ORACLE~1\common\wlst\mdsWLSTCommands.py", line 268, i
    n importMetadata
    File "C:\Oracle\MIDDLE~1\ORACLE~1\common\wlst\mdsWLSTCommands.py", line 733, i
    n executeAppRuntimeMBeanOperation
    File "C:\Oracle\MIDDLE~1\ORACLE~1\common\wlst\mdsWLSTCommands.py", line 996, i
    n saveStackAndRaiseException
    WLSTException: MDS-90034: The source directory or archive "C:OracleMiddlewareTas
    ks" for importing metadata is invalid.MDS-91009: Operation "importMetadata" fail
    ure. Use dumpStack() to view the full stacktrace.
    Edited by: 958122 on Jan 11, 2013 8:43 PM

  • BAPI for customer scheduling aggrement (VA31)

    Hi,
    I want to create customer scheduling aggrement using BAPI, but i hav't find any BAPI for this.
    So please tell me is their any BAPI available to create scheduling aggrement.
    <REMOVED BY MODERATOR - REQUEST OR OFFER POINTS ARE FORBIDDEN>
    Thanks,
    Rahul
    Edited by: Alvaro Tejada Galindo on Aug 22, 2008 4:21 PM

    Dear Jelena,
    'BAPI_SAG_CREATE' is used for creating Purchase Scheduling Agreement Tcode u2013 ME31L but my requirement is for creating customer scheduling agrrement Tcode - VA31.
    Pl. confirm is it possible to use the above BAPI for VA31 or not.
    Thanks,
    Rahul

  • Bapi for customer scheduling agreement

    hi ,
    please tell a bapi for customer scheduling agreement(va31).
    Thanks,
    sridhar

    Hi Reddy ,
    what happend ? u told that u got the BAPI ?
    i already seen that FM ,Do one thing ? search for COMMIT WORK in VA31 program , i think u will get some idea.
    regards
    Prabhu
    Message was edited by: Prabhu Peram

  • Exception while running custom scheduler OIM 11g R1

    I have OIM 11g R1 installed on win 32 platform, and am getting the following exception while running the custom scheduler: Samplescheduledtask
    <Jan 12, 2013 7:37:13 PM IST> <Warning> <oracle.iam.scheduler.impl> <BEA-000000>
    <XSD Validation Exception: org.xml.sax.SAXParseException: cvc-elt.1: Cannot fin
    d the declaration of element 'scheduledTasks'.>
    <Jan 12, 2013 7:37:13 PM IST> <Warning> <oracle.iam.scheduler.impl> <BEA-000000>
    <XSD Validation Exception: org.xml.sax.SAXParseException: cvc-elt.1: Cannot fin
    d the declaration of element 'scheduledTasks'.>
    <Jan 12, 2013 7:37:13 PM IST> <Warning> <oracle.iam.scheduler.impl> <BEA-000000>
    <XSD Validation Exception: org.xml.sax.SAXParseException: cvc-elt.1: Cannot fin
    d the declaration of element 'scheduledTasks'.>
    <Jan 12, 2013 7:37:13 PM IST> <Warning> <oracle.iam.scheduler.impl> <BEA-000000>
    <XSD Validation Exception: org.xml.sax.SAXParseException: cvc-elt.1: Cannot fin
    d the declaration of element 'scheduledTasks'.>
    <Jan 12, 2013 7:37:13 PM IST> <Warning> <oracle.iam.scheduler.impl> <BEA-000000>
    <XSD Validation Exception: org.xml.sax.SAXParseException: cvc-elt.1: Cannot fin
    d the declaration of element 'scheduledTasks'.>
    <Jan 12, 2013 7:37:13 PM IST> <Warning> <oracle.iam.scheduler.impl> <BEA-000000>
    <XSD Validation Exception: org.xml.sax.SAXParseException: cvc-elt.1: Cannot fin
    d the declaration of element 'scheduledTasks'.>
    java.lang.ClassNotFoundException: ADP ClassLoader failed to load: oracle.iam.sam
    ple.scheduledtask.SampleScheduledTask
    at com.thortech.xl.dataobj.tcADPClassLoader.findClass(tcADPClassLoader.j
    ava:219)
    at oracle.iam.transUI.impl.CustomTaskLoaderImpl.getClassInstance(CustomT
    askLoaderImpl.java:12)
    at oracle.iam.scheduler.impl.quartz.QuartzJob.execute(QuartzJob.java:146
    at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
    at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.j
    ava:529)
    java.lang.ClassNotFoundException: ADP ClassLoader failed to load: oracle.iam.sam
    ple.scheduledtask.SampleScheduledTask
    at com.thortech.xl.dataobj.tcADPClassLoader.findClass(tcADPClassLoader.j
    ava:219)
    at oracle.iam.transUI.impl.CustomTaskLoaderImpl.getClassInstance(CustomT
    askLoaderImpl.java:12)
    at oracle.iam.scheduler.impl.quartz.QuartzJob.execute(QuartzJob.java:146
    at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
    at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.j
    ava:529)
    java.lang.ClassNotFoundException: ADP ClassLoader failed to load: oracle.iam.sam
    ple.scheduledtask.SampleScheduledTask
    at com.thortech.xl.dataobj.tcADPClassLoader.findClass(tcADPClassLoader.j
    ava:219)
    at oracle.iam.transUI.impl.CustomTaskLoaderImpl.getClassInstance(CustomT
    askLoaderImpl.java:12)
    at oracle.iam.scheduler.impl.quartz.QuartzJob.execute(QuartzJob.java:146
    at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
    at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.j
    ava:529)
    Following is the code of the custom scheduler:
    package oracle.iam.sample.scheduledtask;
    import java.util.HashMap;
    import oracle.iam.scheduler.vo.TaskSupport;
    public class SampleScheduledTask extends TaskSupport {
    public void execute(HashMap hashMap) throws Exception {
    // Display a message when this scheduled task is run
    System.out.println("Running the OIM Sample Scheduled Task...");
    public HashMap getAttributes() {
    return null;
    public void setAttributes() {
    kindly suggest......
    Regards,
    KK
    Edited by: 958122 on Jan 12, 2013 11:38 PM

    Hi,
    Please use the below commands to register the plugin:
    set the environment variable ORACLE_HOME, OIM_ORACLE_HOME, ANT_HOME,JAVA_HOME,MW_HOME and execute
    $ORACLE_HOME/server/plugin_utility/ant -f pluginregistration.xml register
    and provide the necessary input.
    $ORACLE_HOME/server/bin/PurgeCache.sh All
    and provide the necessary input
    Restart the OIM managed server
    http://docs.oracle.com/cd/E21764_01/doc.1111/e14309/plugins.htm#CHDHECGH
    Regards,
    Sunny

  • 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.

  • 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() {
    }

  • 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 :)

  • Calendar popup in OIM custom scheduler

    Hi,
    can anybody let me know how to add the calender popup in custom scheduler.xml parameter which accepts the selected date and time
    Thnx,
    Siva

    Check the Reconciliation action rules.

  • OIM 11g: Custom Scheduler code

    Hi
    I need to develop custom scheduler in OIM 11g. But I am struck at how to use execute() method.
    public class CustomScheduler extends oracle.iam.scheduler.vo.TaskSupport {
    *//How to use execute(HashMap argMap) -- What hashmap data I need to pass to this method*
    Please help me out with a code snippet.

    Hi
    I created a scheduler job in OIM with parameters as IT Resource and Resource Object.
    Now through my custom scheduler I need to get the value of Parameter IT Resource.
    I don't want to extend SchedulerBaseTask class to get task attributes. Instead I am trying to get values of those attributes using oracle.iam.scheduler.vo.TaskSupport class.
    I tried with the below code. But it throws compile time error.
    public class HRReconciliationTask extends oracle.iam.scheduler.vo.TaskSupport {
         public void init()
              String itResource = getAttribute("IT Resource");//Error: getAttribute() is undefined for type HRReconciliationTask
         public void execute()
              //code here
    Pls help with code snippet.

  • Editing a event that repeats on a custom schedule

    I had lots of custom schedules for repeating events in iCal 2, under Tiger. Now, with iCal 3, under Leopard, I see that I can't edit those schedules. Instead, I need to delete the old event, and create a new one in iCal 3. The new iCal 3 event then has the up and down arrow next to "Custom" that can be clicked to further edit the schedule. The events from iCal 2 have only ". . . " next to Custom.
    Anyone else having this problem, or anyone else who has figured out a way around this?
    Anyone else getting the feeling that iCal 3 is the lamest stuff that Apple has put out in a long, long time?
    Ted in NC

    I option + drag an event (which copies it) to each of the days it occurs. For example, if you have a 9AM touchbase meeting for a new project Monday, Wednesday and Friday this week and then another meeting the following week on Tuesday at 10AM, just option+drag the original event that you typed into Monday onto the other days and just change the time on the Tuesday event. Easy as pie.
    Hope that helped.

  • Code snippet for custom scheduler

    Hi,
    I need to write a custom scheduler as per one of the solutions present in doc in metalink (doc id:1109539.1). Few lines of information in the doc is as below:
    A better solution is to:
    1. Create a custom scheduled task.
    2. The task should run every 10 minutes, and should do a simple call to the server using the singleton instance.
    3. This will assure that the instance is kept alive, hence it will not timeout.
    As per the above solution, what exactly is meant by "do a simple call to the server using the singleton instance". Does anyone help me to provide a code snippet to do the same.
    Thanks
    DPK

    That Metalink ID is not related to your requirement.
    It is a workaround if someone is using Singleton Pattern in their code.
    If they are using Singleton then session will expire after some time and it throws error that's why they are suggesting to use that instance by creating a schedule task after every 10 min so that instance should be alive. It's no where related to your use case. Don't use Singleton Pattern in your code.
    You can read here about Singleton
    http://java.sun.com/developer/technicalArticles/Programming/singletons/

Maybe you are looking for

  • How to use CWPictureDisp of Measurement Studio in VB ?

    Is there an example of using the CWPictureDisp object of ComponentWorks/Measurement Studio in Visual Basic? I am developing a display for a system that will track an underwater vehicle and I would like to show a vehicle shaped icon that would move ar

  • Please Suggest - new java.text.DecimalFormat Question

    table2.setValueAt( "$"+new java.text.DecimalFormat("#.##").format     ((Double.valueOf(table2.getValueAt(row,1).toString())).doubleValue())*     ((Double.valueOf(table2.getValueAt(row,2).toString())).doubleValue()) row, 3 );Is there a way to force De

  • Multiple EUL Connections in Discoverer 9i Plus

    Discoverer 9i Plus doesn't allow you to change your default EUL anymore. I currently have to set up different connections for each EUL. Is there a way to set up one connection and change between my EULs like it had done in previous versions?

  • Very basic Applescript help (from not-a-programming-newbie)

    Is it possible for an AppleScript to find out how it was invoked e.g. by what keyboard shortcut?

  • Crate XML file and send that XML file from R3 to SIBEL

    Hi Friends,           Is SAP provided any idoc type and Message type for Goods Receipt (MIGO)?? My requirement is to create XML file having 4 fields from MIGO then that XML file to be display in SIBEL system. Can anybody help me how can I do this.