Changing Timestamp value of incremental trusted reconciliation

Hi,
I need to run the incremental trusted reconciliation from an earlier date. This means I need to rerun the trusted recon on some of the data on which the recon might have already ran.
Could you please let me know how to acheive this. The problem which I am facing is that if I run the incremental trusted recon then it starts from the date when it was last ran, but I want it to start from an earlier data to which it was ran earlier.
Thanks

all the available trusted recon implement this feature. download any ootb connector (ex: EBSER -eBusiness employee reconciliation creconnector) and look at the code by De-compling jar.
basically you have to use OIM API where you have to supply Scheduler Key and currentTimestamp at end of the task

Similar Messages

  • Handling Multi-Valued attribute in trusted reconciliation

    Hi,
    We have a requirement where an attribute is multi-valued in LDAP(Sun One Directory Server) which is a trusted source for OIM. We wanted to use oracle Out-of-the-Box connector for Sun Java System Directory Server. We wanted to bring in this multi-valued attribute into OIM, concatenate everything and populate it to a OIM User form attribute. Hence though the value is multi-valued in trusted source, we process it and populate as a single valued attribute in OIM. Since we run trusted reconciliation we are unable to bring this multivalued attribute for the user into OIM.
    Can anybody suggest any other workaround available to achieve this functionality without touching connector source code?
    Any help would be greatly appreciated.
    Regards
    Deepa

    I would highly suggest writing your own custom code.
    You'll need to create a UDF that is large enough to handle your concatenated value. A resource object marked as trusted object. A provisioning process defintion to map the value to the field.
    Then write a custom scheduled task that will connect to the LDAP directory, perform your search using the modifytimestamp attribute to get all the values. Concatenate them together in your code and create the reconciliation event.
    It will turn out to be smoother than dealing with an entity adapter that runs everytime an event occurs which might not be related to this item.
    -Kevin

  • Using literal values into AD Trusted Reconciliation

    Hello experts,
    I'm working on a AD trusted reconciliation and, during the user creation, I cant reconcile from AD the mandatory values "Organization" and "User Type" (they don't exist into my AD).
    I thought to create some literary values ("End-User"/"Xellerate User"), but I don't find any way to insert them as literal values: any ideas?
    Thanks

    You can set the values for those fields in your AD User Trusted Recon Scheduler.

  • Lookup.USR_PROCESS_TRIGGERS not working with trusted reconciliation oim 11g

    Hi,
    I am facing one issue while running the trusted incremental reconciliation in OIM 11g.
    In the bulkEvent of the event handler I am checking if the operation is MODIFY then I am comparing some attributes and based of that result I am performing some action.
    Now the issue is that if the first name or last name of the users gets changed in OIM due to trusted reconciliation then the Change First Name or Change Last Name Process task should get execute on the resources provisioned to the user. This is not happening in my case.
    I tried modifying the first name of the user via UI and then the Change First Name Process task got executed.
    Please let me know if I need to do some thing extra to get this working.
    Thanks

    Hi,
    Try creating a custom adapter and attach the adapter to the process task which you have created. This adapter should read the user profile value and populate in the AD provisioning form. Then test the flow for one attribute. As I am suspecting that there would be an issue with OOTB adapter.
    Regards
    Sai

  • Trusted Reconciliation Status mapping does not work - 11g Release2

    Hi all,
    On my process for trusted reconciliation I have mapped my status attribute to Oim 'Status' attribute. It is as follow:
    UserStatus -> Status
    On my custom scheduled task I transform the status data get form HR (my trusted system) with the values 'Active', 'Disabled','Deleted' and create a reconciliation event.
    Even the value I set for the status is 'Active' , afte reconciliation the status is not updated and it is 'Disabled'., what may be the problem? any help is strongly appreciated
    Part of my reconciliation event creation code is as follow :
         params.put(AttributeConstants.TCMB.ROLE, "Consultant");
         params.put(AttributeConstants.TCMB.ORGANIZATION_NAME, "Xellerate Users");
         params.put(AttributeConstants.TCMB.XELLERATE_TYPE, "End-User");
         params.put(AttributeConstants.TCMB.DISPLAY_NAME, resourceData.getName()+" "+resourceData.getSoyadi());
         params.put(AttributeConstants.TCMB.IDENTITY_STATUS, UserManagerConstants.AttributeValues.USER_STATUS_ACTIVE.getId());
         System.out.println("Active param : "+UserManagerConstants.AttributeValues.USER_STATUS_ACTIVE.getId());
         System.out.println("Disabled param : "+UserManagerConstants.AttributeValues.USER_STATUS_DISABLED.getId());
         System.out.println("Deleted param : "+UserManagerConstants.AttributeValues.USER_STATUS_DELETED.getId());
         long result = recObject.createReconciliationEvent("TCMB_PBS_TRUSTED", params, true);
    Thnaks in advance,
    BR
    Aliye

    I would say don't supply status info for recon. OIM will update automatically based on start date and end date.
    If you have special scenario then sure we have to map it and try params.put(AttributeConstants.TCMB.IDENTITY_STATUS,"Active") for same.
    Better ignore passing status attribute. Lets OIM decide.
    --nayan                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • User not created in OIM 11gr2 - trusted reconciliation from OID

    Hello,
    in my tests I'm trying to do a trusted reconciliation from OID to OIM.
    I checked the errors below in the log file and I checked the column on the database. The column is there but I can't understand why this error appear.
    I did a select on this table and this column is empty (select RA_USERLOGIN7C7B96D4 from RA_OIDTRUSTEDUSERBCBD344A).
    INFO: Generic Information: select USR_KEY from usr where USR_MIDDLE_NAME is null and USR_UDF_ORCLGUID=? and USR_FIRST_NAME=? and USR_EMAIL=? and USR_LAST_NAME=? and USR_STATUS=? and USR.USR_STATUS != 'Deleted' AND ((UPPER(USR.USR_LOGIN)=UPPER(RA_OIDTRUSTEDUSERBCBD344A.RA_USERLOGIN7C7B96D4)))
    INFO: Generic Information: Params = [CF7C29EE75F5A78FE040A8C084000DE8, orcladmin, orcladmin, orcladmin, Enabled]
    SEVERE: Generic Information: {0}
    oracle.iam.reconciliation.exception.DBAccessException: Failed SQL:: select USR_KEY from usr where USR_MIDDLE_NAME is null and USR_UDF_ORCLGUID=? and USR_FIRST_NAME=? and USR_EMAIL=? and USR_LAST_NAME=? and USR_STATUS=? and USR.USR_STATUS != 'Deleted' AND ((UPPER(USR.USR_LOGIN)=UPPER(RA_OIDTRUSTEDUSERBCBD344A.RA_USERLOGIN7C7B96D4))) =>PARAMS:: [CF7C29EE75F5A78FE040A8C084000DE8, orcladmin, orcladmin, orcladmin, Enabled]
    at oracle.iam.reconciliation.utils.DBAccessTemplate.executeQuery(DBAccessTemplate.java:71)
    at oracle.iam.reconciliation.impl.BaseEntityTypeHandler.executeSql(BaseEntityTypeHandler.java:508)
    at oracle.iam.reconciliation.impl.UserHandler.getMatchingKeys(UserHandler.java:601)
    at oracle.iam.reconciliation.impl.ReconOperationsServiceImpl.ignoreEvent(ReconOperationsServiceImpl.java:556)
    at oracle.iam.reconciliation.impl.ReconOperationsServiceImpl.ignoreEvent(ReconOperationsServiceImpl.java:535)
    at sun.reflect.GeneratedMethodAccessor3188.invoke(Unknown Source)
    at org.quartz.core.JobRunShell.run(JobRunShell.java:203)
    at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
    Caused by: java.sql.SQLSyntaxErrorException: ORA-00904: "RA_OIDTRUSTEDUSERBCBD344A"."RA_USERLOGIN7C7B96D4": invalid identifier
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:462)
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:405)
    at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:931)
    at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:481)
    at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:205)
    After this error the log shows:
    SEVERE: oracle.iam.connectors.icfcommon.recon.SearchReconTask : handle : Recon event skipped
    oracle.iam.connectors.icfcommon.exceptions.OIMException: Thor.API.Exceptions.tcAPIException: Child tables only supported at account-level
    at oracle.iam.connectors.icfcommon.service.oim11.OIM11Reconciliation.processEvent(OIM11Reconciliation.java:101)
    Please help me on this and tell me if I am missing something here.
    Thanks

    I've found something that worked for me. When executing the trusted recon schedule task, the "Configuration Lookup" field in the "OID Server" IT Resource has to have the value "Lookup.OID.Configuration.Trusted". On the other hand, when executing the user sync recon schedule task, this field must have the value "Lookup.OID.Configuration.Trusted".
    The lookups' names can be different if you've manually renamed them.
    --jtellier                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • Permission change timestamp

    how set permission for other user to change timestamp of file owned by me?
    I can set write permission via 'chmod 664 file' for any user in the same group.  Then these user can write to the file.  but they are not permitted to issue a 'touch file' command, i.e. change the modified timestamp.  This is new for me, on my previous systems, windows and Linux, write permissions automatically include the right to change the timestamp.
    How can I grant this right to the group in Mac OS X?  It is important for a reasonable sync process with external files to be performed by all users of the group.
    cheers, Neo.

    The time modification is performed by the function utime (or on some systems utimes)
    Mac OS X utimes man page:
    If times is NULL, the access and modification times are set to the current time.  The caller must be the owner of the file, have permission to write the file, or be the super-user.
    If times is non-NULL, it is assumed to point to an array of two timeval structures.  The access time is set to the value of the first element, and the modification time is set to the value of the second element.  The caller must be the owner of the file or be the super-user.
    'touch' without the -t argument pass a NULL 'times' structure to the utimes() call.  A non-NULL 'times' structure has the restriction you must be root or the file's owner to change the time.
    Solaris:
    If times is NULL, the access and modification times of the file are set to the current time. A process must be the owner of the file or have write permission to use utime() in this manner.
    If times is not NULL, times is interpreted as a pointer to a utimbuf structure (defined in <utime.h>) and the access and modification times are set to the values contained in the designated structure. Only the owner of the file or a process that has the {PRIV_FILE_OWNER} privilege asserted in its effective set can use utime() in this manner.
    Same basic rules.
    Linux:
    If buf is NULL, then the access and modification times of the file are set to the current time.
    Changing time stamps is permitted when: either the process has appropriate privileges (Linux: has the CAP_FOWNER capability), or the effective user ID equals the user ID of the file, or buf must is NULL and the process has write permission to the file.
    Again, the same basic rules.
    The X/Open standards:
    <http://pubs.opengroup.org/onlinepubs/9699919799/functions/utime.html>
    If times is a null pointer, the access and modification times of the file shall be set to the current time. The effective user ID of the process shall match the owner of the file, or the process has write permission to the file or has appropriate privileges, to use utime() in this manner.
    If times is not a null pointer, times shall be interpreted as a pointer to a utimbuf structure and the access and modification times shall be set to the values contained in the designated structure. Only a process with the effective user ID equal to the user ID of the file or a process with appropriate privileges may use utime() this way.
    Everyone is following the standards

  • OIM Trusted Reconciliation with OID

    Hi all,
    1. i am facing the problem with trusted reconciliation , i mapped AttrName.Recon.OID.Map with OOTB values , and in Reconciliation manager the Event is created with No Match Found,
    2. In provisioning i am using the Entity Adapter to generate the User ID is this causing the error ?.
    3. when i run Trusted Recon ii am getting the following error
    DEBUG,06 Apr 2011 16:49:48,655,[XELLERATE.SERVER],Class/Method: tcDataObj:handleErr - Data: poError.isDescription - Value: Cannot save: Bad SQL operation FATAL REJECT, raw value 2.
    DEBUG,06 Apr 2011 16:49:48,656,[XELLERATE.SERVER],Class/Method: tcDataObj:handleErr - Data: poError.isRemedy - Value:
    DEBUG,06 Apr 2011 16:49:48,656,[XELLERATE.SERVER],Class/Method: tcDataObj:handleErr - Data: poError.isDetail - Value:
    DEBUG,06 Apr 2011 16:49:48,656,[XELLERATE.SERVER],Class/Method: tcErrorList/addError entered.
    DEBUG,06 Apr 2011 16:49:48,656,[XELLERATE.SERVER],Class/Method: tcDataObj/doRollback entered.
    ERROR,06 Apr 2011 16:49:48,656,[XELLERATE.DATABASE],Class/Method: tcDataBase/rollbackTransaction encounter some problems: Rollback Executed From
    java.lang.Exception: Rollback Executed From
    at com.thortech.xl.dataaccess.tcDataBase.rollbackTransaction(Unknown Source)
    at com.thortech.xl.dataobj.tcDataObj.rollback(Unknown Source)
    at com.thortech.xl.dataobj.tcDataObj.doRollback(Unknown Source)
    at com.thortech.xl.dataobj.tcDataObj.save(Unknown Source)
    at com.thortech.xl.dataobj.tcTableDataObj.save(Unknown Source)
    at com.thortech.xl.dataobj.tcRCE.createUserRecord(Unknown Source)
    at com.thortech.xl.ejb.databeansimpl.tcRCEBean.createUserRecord(Unknown Source)
    at com.thortech.xl.ejb.beans.tcRCE_4tknfu_EOImpl.createUserRecord(tcRCE_4tknfu_EOImpl.java:615)
    at com.thortech.xl.ejb.beans.tcRCE_4tknfu_EOImpl_WLSkel.invoke(Unknown Source)
    at weblogic.rmi.internal.activation.ActivatableServerRef.invoke(ActivatableServerRef.java:85)
    at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:477)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:147)
    at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:473)
    at weblogic.rmi.internal.wls.WLSExecuteRequest.run(WLSExecuteRequest.java:118)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    INFO,06 Apr 2011 16:49:48,656,[XELLERATE.DATABASE],Class/Method: tcDataBase/setTransaction: ##########setTransaction getting called from: #######
    DEBUG,06 Apr 2011 16:49:48,656,[XELLERATE.SERVER],Class/Method: tcDataObj/doRollback left.
    DEBUG,06 Apr 2011 16:49:48,656,[XELLERATE.SERVER],Class/Method: tcDataObj/save left.
    DEBUG,06 Apr 2011 16:49:48,657,[XELLERATE.SERVER],Class/Method: tcRCE/createUserRecord left.
    DEBUG,06 Apr 2011 16:49:48,825,[XELLERATE.SERVER],Class/Method: tcErrorList/getErrors entered.
    DEBUG,06 Apr 2011 16:49:48,825,[XELLERATE.SERVER],Class/Method: tcErrorList/getErrors left.
    DEBUG,06 Apr 2011 16:49:48,887,[XELLERATE.SERVER],Class/Method: tcErrorList/ getRejections entered.
    DEBUG,06 Apr 2011 16:49:48,887,[XELLERATE.SERVER],Class/Method: tcErrorList/ getRejections left.
    DEBUG,06 Apr 2011 16:49:48,997,[XELLERATE.SERVER],Class/Method: tcDataBase/readEncryptedStatement entered.
    DEBUG,06 Apr 2011 16:49:48,998,[XELLERATE.SERVER],Class/Method: tcDataBase/readPartialStatement entered.
    Thank you.

    Hi Khanh,
    [This is not good for my use case.  I don't want the users from OID to be created in OIM]
    Remember this Ldap Sync we use when we want all users in OID -OIM to be in Synch. Otherwise you should have disabled Ldap Sync and used OID 11g Connector.
    So if you want to link users in OIM using OID process form/resouce, then its must to use OID 11g Connector.
    ~J

  • EBS Trusted reconciliation error if we keep user email id blank

    Hi,
    We are executing EBS trusted reconciliation. It works fine and create user in OIM prefectly. But if user's email is blank then in that case its throwing below validation exception. I wanted to ask this is default behaviour of OIM at time of trusted recon? How can we handle this issue with blank email at time of truste reconciliation? One more thing if we create user in OIM manually with blank email id then its not throwing such exception.
    Please let me know if you have any idea on this issue.
    Exception logs:
    [2013-07-22T08:56:09.246-05:00] [oim_server1] [ERROR] [] [oracle.iam.reconciliation.scheduledtasks] [tid: OIMQuartzScheduler_Worker-9] [userId: oiminternal] [ecid: 0000Jzalan_ALQK6yVAhMG1HtGzH000002,1:29622] [APP: oim#11.1.2.0.0] Generic Information: {0}[[
    Thor.API.Exceptions.tcAPIException: An exception occurred: oracle.iam.platform.kernel.ValidationFailedException: Orchestration validation failed on the event handler - CreateUserValidationHandler
    at oracle.iam.reconciliation.impl.ReconOperationsServiceImpl.processReconciliationEvent(ReconOperationsServiceImpl.java:993)
    at sun.reflect.GeneratedMethodAccessor10816.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:601)
    at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
    at oracle.iam.platform.utils.DMSMethodInterceptor.invoke(DMSMethodInterceptor.java:25)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
    at $Proxy493.processReconciliationEvent(Unknown Source)
    at oracle.iam.reconciliation.api.ReconOperationsServiceEJB.processReconciliationEventx(Unknown Source)
    at sun.reflect.GeneratedMethodAccessor10842.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:601)
    at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
    at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
    at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    at com.oracle.pitchfork.spi.MethodInvocationVisitorImpl.visit(MethodInvocationVisitorImpl.java:34)
    at weblogic.ejb.container.injection.EnvironmentInterceptorCallbackImpl.callback(EnvironmentInterceptorCallbackImpl.java:54)
    at com.oracle.pitchfork.spi.EnvironmentInterceptor.invoke(EnvironmentInterceptor.java:42)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
    at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
    at $Proxy494.processReconciliationEventx(Unknown Source)
    at oracle.iam.reconciliation.api.ReconOperationsService_emc07d_ReconOperationsServiceRemoteImpl.__WL_invoke(Unknown Source)
    at weblogic.ejb.container.internal.SessionRemoteMethodInvoker.invoke(SessionRemoteMethodInvoker.java:40)
    at oracle.iam.reconciliation.api.ReconOperationsService_emc07d_ReconOperationsServiceRemoteImpl.processReconciliationEventx(Unknown Source)
    at sun.reflect.GeneratedMethodAccessor10841.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:601)
    at weblogic.ejb.container.internal.RemoteBusinessIntfProxy.invoke(RemoteBusinessIntfProxy.java:85)
    at $Proxy151.processReconciliationEventx(Unknown Source)
    at sun.reflect.GeneratedMethodAccessor10840.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:601)
    at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
    at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:198)
    at $Proxy273.processReconciliationEventx(Unknown Source)
    at oracle.iam.reconciliation.api.ReconOperationsServiceDelegate.processReconciliationEvent(Unknown Source)
    at sun.reflect.GeneratedMethodAccessor10816.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:601)
    at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
    at oracle.iam.platform.utils.DMSMethodInterceptor.invoke(DMSMethodInterceptor.java:25)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
    at $Proxy274.processReconciliationEvent(Unknown Source)
    at oracle.iam.reconciliation.scheduledtasks.ReconRetrySchedulerTask.process(ReconRetrySchedulerTask.java:46)
    at oracle.iam.reconciliation.scheduledtasks.ReconRetrySchedulerTask.execute(ReconRetrySchedulerTask.java:36)
    at oracle.iam.scheduler.vo.TaskSupport$1.processWithoutResult(TaskSupport.java:135)
    at oracle.iam.platform.tx.OIMTransactionCallbackWithoutResult.process(OIMTransactionCallbackWithoutResult.java:9)
    at oracle.iam.platform.tx.OIMTransactionCallback.doInTransaction(OIMTransactionCallback.java:13)
    at oracle.iam.platform.tx.OIMTransactionCallback.doInTransaction(OIMTransactionCallback.java:6)
    at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:128)
    at oracle.iam.platform.tx.OIMTransactionManager.execute(OIMTransactionManager.java:22)
    at oracle.iam.scheduler.vo.TaskSupport.executeJob(TaskSupport.java:116)
    at sun.reflect.GeneratedMethodAccessor5561.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:601)
    at oracle.iam.scheduler.impl.quartz.QuartzJob$TaskExecutionAction.run(QuartzJob.java:266)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
    at weblogic.security.Security.runAs(Security.java:41)
    at Thor.API.Security.LoginHandler.weblogicLoginSession.runAs(weblogicLoginSession.java:52)
    at oracle.iam.scheduler.impl.quartz.QuartzJob.execute(QuartzJob.java:75)
    at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
    at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
    Caused by: oracle.iam.reconciliation.exception.CreateException: oracle.iam.platform.kernel.ValidationFailedException: Orchestration validation failed on the event handler - CreateUserValidationHandler
    at oracle.iam.reconciliation.impl.EntityTypeHandler.create(EntityTypeHandler.java:102)
    at oracle.iam.reconciliation.impl.EntityTypeHandler.applyRule(EntityTypeHandler.java:80)
    at oracle.iam.reconciliation.impl.EntityTypeHandler.process(EntityTypeHandler.java:53)
    at oracle.iam.reconciliation.impl.ActionEngine.processEvent(ActionEngine.java:175)
    at oracle.iam.reconciliation.impl.ReconOperationsServiceImpl.processReconciliationEvent(ReconOperationsServiceImpl.java:990)
    ... 76 more
    Caused by: oracle.iam.platform.kernel.ValidationFailedException: Orchestration validation failed on the event handler - CreateUserValidationHandler
    at oracle.iam.platform.kernel.impl.OrchProcessData.runValidationEvents(OrchProcessData.java:248)
    at oracle.iam.platform.kernel.impl.OrchestrationEngineImpl.validate(OrchestrationEngineImpl.java:704)
    at oracle.iam.platform.kernel.impl.OrchestrationEngineImpl.process(OrchestrationEngineImpl.java:552)
    at oracle.iam.platform.kernel.impl.OrchestrationEngineImpl.orchestrate(OrchestrationEngineImpl.java:490)
    at oracle.iam.platform.kernel.impl.OrchestrationEngineImpl.orchestrate(OrchestrationEngineImpl.java:408)
    at sun.reflect.GeneratedMethodAccessor2132.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:601)
    at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
    at oracle.iam.platform.utils.DMSMethodInterceptor.invoke(DMSMethodInterceptor.java:25)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
    at $Proxy251.orchestrate(Unknown Source)
    at oracle.iam.reconciliation.impl.UserHandler.orchestrate(UserHandler.java:218)
    at oracle.iam.reconciliation.impl.UserHandler.executeSingleEvent(UserHandler.java:180)
    at oracle.iam.reconciliation.impl.EntityTypeHandler.create(EntityTypeHandler.java:98)
    ... 80 more
    Caused by: oracle.iam.platform.kernel.EventFailedException: IAM-3050096:An error occurred while generating the Username. Invalid values passed for attribute Email.:Email
    at oracle.iam.identity.usermgmt.utils.UserManagerUtils.createEventFailedException(UserManagerUtils.java:278)
    at oracle.iam.identity.usermgmt.utils.UserManagerUtils.createEventFailedException(UserManagerUtils.java:260)
    at oracle.iam.identity.usermgmt.impl.handlers.base.UserValidationHandler.generateUserLoginIfNotPresent(UserValidationHandler.java:1859)
    at oracle.iam.identity.usermgmt.impl.handlers.base.UserValidationHandler.performCreateUserCommonValidations(UserValidationHandler.java:1257)
    at oracle.iam.identity.usermgmt.impl.handlers.create.CreateUserValidationHandler.validate(CreateUserValidationHandler.java:193)
    at oracle.iam.platform.kernel.impl.OrchProcessData.validate(OrchProcessData.java:258)
    at oracle.iam.platform.kernel.impl.OrchProcessData.runValidationEvents(OrchProcessData.java:203)
    ... 97 more
    Caused by: oracle.iam.identity.exception.UserNameGenerationException: IAM-3050096 : An error occurred while generating the Username. Invalid values passed for attribute Email.:Email
    at oracle.iam.identity.usermgmt.utils.UserNameGenerationUtil.checkEmailFormat(UserNameGenerationUtil.java:529)
    at oracle.iam.identity.usermgmt.utils.UserNameGenerationUtil.validateInputData(UserNameGenerationUtil.java:372)
    at oracle.iam.identity.usermgmt.utils.UserNameGenerationUtil.generateUserNameFromPolicy(UserNameGenerationUtil.java:126)
    at oracle.iam.identity.usermgmt.utils.UserNameGenerationUtil.generateUserNameFromDefaultPolicy(UserNameGenerationUtil.java:110)
    at oracle.iam.identity.usermgmt.impl.handlers.base.UserValidationHandler.generateUserLoginIfNotPresent(UserValidationHandler.java:1827)
    ... 101 more
    Thanks

    Check for two things:
    - Open your resource object, go to reconciliation tabe. Check attribute email. make sure required flag for this attribute is set to false. If its true, set it to false and click on Create reconciliation profile button. And retry your use case.
    - Check if you have created any validationevent handler or your OOTB connector might have created it for validation purposes which is looking for some valid value in email. You may need to modify this validation  handler.
    regards,
    GP

  • How do I change TimeStamp from US server to UK time

    Hello,
    I am based in the UK. My hosting company is based in the US. I am using a MySql database. All the database tables have timestamps that are set to the local machine time.
    I would like to change the timestamp so that it is GMT.
    Can you please tell me how I would go about doing this?
    Is their any code available to enable me to insert the timestamp as a GMT date or do I set the value from the mysql database end.
    Thanks
    Andrew

    Timestamp values in Java (java.sql.Timestamp) are GMT internally (actually, they're implemented as a long giving the number of milliseconds since 1. january, 1970).
    Date values in SQL, on the other hand, are normally stored in the local time zone.
    What you need to do, is tell JDBC what time zone you want the stored values to be in, like this:
    When inserting (using a PreparedStatement):
      stmt.setTimestamp(column, myTimestamp, Calendar.getInstance(TimeZone.getTimeZone("GMT")));When reading back from a ResultSet:
      Timestamp ts = rs.getTimestamp(column, Calendar.getInstance(TimeZone.getTimeZone("GMT")));Now, you know that the timestamp value you've read back from the database does not have any bias to it introduced by the local timezone of the database server. The next step is to represent the Java Timestamp value to the user, and at this stage you may want to specify which time zone you want for the rendered timestamp, like this:
      import java.text.DateFormat;
      import java.text.SimpleDateFormat;
      // convert the Timestamp to a String in a controlled manner
      // see the documentation for SimpleDateFormat for how you specify the format string
      DateFormat df = new SimpleDateFormat("yyyy.MM.dd HH.mm.ss");
      // need to set the time zone, or the server's time zone will be used
      // if you can somehow figure out the time zone where the user is
      // sitting, you may use that instead, to provide dates relative to
      // the user instead of the server
      df.setTimeZone(TimeZone.getTimeZone("GMT"));
      String outValue = df.format(myTimestamp);
      // output the converted value, maybe
      System.out.println(outValue);Similarly, you may use the parse() method of DateFormat to parse a String as a java.util.Date, which may then be converted into a Timestamp.
    The general principles are as follows:
    - internally, Java Timestamps, Dates etc. are stored relative to 1. january 1970, GMT
    - when getting date values into or out of Java, time zones may have to be considered
    - for converting to/from Strings (eg. for UI purposes), use the java.text.DateFormat class
    - for communicationg with an SQL database via JDBC, use the set/get-Timestamp methods with the added Calendar argument
    NB! Please be aware that I didn't actually try to compile this code, so bugs may be present.

  • OIM 11g DBAT connector - trusted reconciliation for user roles

    Hi,
    We have a database table containing a bunch of user records, and a table with a foreign key that contains all the associations user-group. We would like to do trusted reconciliation from those two tables into OIM. I already did that for target reconciliation but now I am having a look at the DBAT connector docs, and I have found this:
    "Child Table/View Names
    If you want to use the connector for trusted source reconciliation, then do not enter a
    value. If you want to use the connector for target resource reconciliation and if user data is
    spread across parent and child tables, then enter a comma-separated list of child table
    names."
    Does this mean that role membership trusted reconciliation is not supported by the DBAT connector?
    thanks in advance

    DBAT connector does not support trusted source with child data.
    But that does not mean you cannot configure user table as trusted source.
    What is it that you want to do with child table ?

  • OIM - GTC database trusted reconciliation not importing passwords

    Hi,
    I am using the latest available database connector (9.1.0.5.0) with OIM 9.1.0.2 BP07 and i have an issue with password reconciliation.
    Let's say i have a table MY_USERS with users login data and i want to use it as a source for trusted reconciliation.
    I have followed the tutorial available in the DBAT documentation and i get the following results:
    -if i don't map the password field from the recon staging with the one of the OIM account, original password is ignored and OIM password is set to the username
    - if i map the password field from the recon staging with the one of the OIM account i get an exception and reconciliation fails. To succeed i have to proceed as described in this tutorial http://st-curriculum.oracle.com/obe/fmw/oim/10.1.4/oim/obe12_using_gtc_for_reconciliation/using_the_gtc.htm , modifying the password field in the Design Console from "User password" to "Identity". Actually, this makes the recon work, but what happens is that original password is written in the USR table in the USR_FSS field and not in the USR_PASSWORD field (which is set to the username as above), and therefore the change is useless.
    I would like to know what should i do to import the original password from database table.
    Thanks in advance
    Alex

    AFAIK, we can't reconcile user's password from Trusted Reconciliation. If in your case you have to bring only those passwords which resides in DB Table then you can write some custom utility/sch task which will read through DB Table and update user's password using OIM APIs.

  • Strange Timestamp value problem

    Hi gurus,
    Please help me. And thanks in advance!
    I have a stored procedure that creates an xml document, which includes a timestamp value converted from a date type column. When this procedure is run through a job, the converted timestamp value is considered invalid by our partner in that it has a plus (+) sign and some 0's at the end. But when I run the procedure manually from SQL*Plus, the timestamp value comes out valid. Here is what I have for the results.
    Result when run from within the server through a job:
    <ScheduleFor>
    <ScheduledDateTime>2007-10-23T10:15:43+00:00</ScheduledDateTime>
    </ScheduleFor>
    Result when manually run from SQL*Plus:
    <ScheduleFor>
    <ScheduledDateTime>2007-10-23T10:16:36-05:00</ScheduledDateTime>
    </ScheduleFor>
    And here is the SQL for the above:
    select xmlelement("ScheduleFor",
         xmlelement("ScheduledDateTime", to_char(to_timestamp_tz(to_char(sysdate,
         'YYYY-MM-DD HH24:MI:SS'), 'YYYY-MM-DD HH24:MI:SS.FF'),'YYYY-MM-DD"T"HH24:MI:SSTZH:TZM'))
         ) into v_xml
         from dual;
    Does anyone have an idea why I get this? We are on Oracle 10g Enterprise Edition Release 10.2.0.3.0.
    Thanks a lot.
    Ben

    Thanks again! You are right. This does change the time zone to 8:0:
    ALTER SESSION SET TIME_ZONE = '-8:0';
    select xmlelement("ScheduleFor",
    xmlelement("ScheduledDateTime", to_char(to_timestamp_tz(to_char(sysdate,
    'YYYY-MM-DD HH24:MI:SS'), 'YYYY-MM-DD HH24:MI:SS.FF'),'YYYY-MM-DD"T"HH24:MI:SSTZH:TZM'))
    from dual;
    <ScheduleFor><ScheduledDateTime>2007-10-24T08:37:05-08:00</ScheduledDateTime></ScheduleFor>
    I will tell the DBA to fix it.
    Thanks again!
    Ben

  • Change item value when a specific item has changed... how can i do that?

    Hi guys, i need to ask something...
    Is it possible to have a process or a computation, that gives value to an item, only when one specific item has changed.
    I have other items on my page too, but this two are related, and i need to give a specific value to the first one, only when the value of the second has changed...
    Help please
    tsveti:)

    Hey Farhan, i guess i need some help on that easy javascript...
    i havent done much thing with it so i have almost none experience with js....
    So in 'HTML Form Element Attributes' for the second item I m trying this :
    onchange="javascript:{document.getElementById('P1_SUBPROJECT').value = '-1';}"
    but when i change the value of this second item, the first one (P1_SUBPROJECT) dont get -1
    what am i doing wrong?

  • SPEL? make REASON field required if user has changed the value in SALARY

    I have a requirement to make REASON field required if user has changed the value in SALARY field. Is it possible using spel? what are my options?

    Karan,
    You can change the Rendered Property through personalization.
    But in your requirement you need to attach the Spell through personalization & extend the existing CO to set the value of the SPELL based upon the condition.
    Note - Refer this thread http://forums.oracle.com/forums/thread.jspa?threadID=2176729&tstart=0. If you have worked on SSHRParams kindly help the user.
    Regards,
    Gyan

Maybe you are looking for

  • Cannot send or receive email through Verizon server after Thunderbird update

    After updating Thunderbird, Verizon server no longer recognizes my password, so authentication keeps failing. I can neither send nor receive email. Account settings are correct. Any ideas? Thanks.

  • How to use RIDC calls in webcenter application

    hi, We have lot of portlets developed in weblogic portal and consuming content using RIDC calls. How to consume data from UCM repository (site studio pages) in Webcenter JSF pages. Thanks Manu

  • Profiles in N900

    Hi, Is it possible to create and/or modify the profiles in the N900? Mine got only Normal and silence.

  • Problems Saving my VI's

    Hi, every time I want to save my application it takes almost one minute, until it's done, sometimes even longer. I don't know what the problem could be, but I noticed that some sub-vi's, which I converted from LabVIEW 5.1 to LabVIEW 6 take a long tim

  • Back Up table DBA_PROFILES, DBA_USERS

    How can i take the backup of these two tables. ? Do i need to create roles ? I read - Oracle provides a script entitled catexp.sql. This script creates the EXP_FULL_DATABASE and IMP_FULL_DATABASE roles. You can grant these to a user who will be execu