14 Replies Latest reply: Mar 20, 2013 2:23 AM by AG IAM RSS

    Flat File GTC Recon Error

    kavatam
      Hi All,

      I created a flat file GTC with the following mappings,

      login -> User Login
      firstName -> First Name
      lastName -> Last Name
      eMail -> Email
      organization [number] -> act_key
      Employee Type -> Xellerate Type
      User Type -> Role

      Checked a few forums, and it says to map the following,
      User Type-> Design Console Access
      but could not find 'Design Console Access' in Mapping phase of GTC creation.

      So followed the above specified mapping and created GTC. Ran the scheduled job for Trusted Recon and facing below exception,

      [oim_server1] [ERROR] [] [XELLERATE.GC.FRAMEWORKRECONCILIATION] [tid: OIMQuartzScheduler_Worker-4] [userId: oiminternal] [ecid: 0000Jp0fdDvFw000jzwkno1HDrXW000002,0] [APP: oim#11.1.1.3.0] Reconciliation Encountered error: [[
      java.lang.NullPointerException
           at com.thortech.xl.ejb.beansimpl.GCOperationsBean.lookup(GCOperationsBean.java:300)
           at Thor.API.Operations.GCOperationsIntfEJB.lookupx(Unknown Source)
           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
           at java.lang.reflect.Method.invoke(Method.java:597)
           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.bea.core.repackaged.springframework.jee.spi.MethodInvocationVisitorImpl.visit(MethodInvocationVisitorImpl.java:37)
           at weblogic.ejb.container.injection.EnvironmentInterceptorCallbackImpl.callback(EnvironmentInterceptorCallbackImpl.java:54)
           at com.bea.core.repackaged.springframework.jee.spi.EnvironmentInterceptor.invoke(EnvironmentInterceptor.java:50)
           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 $Proxy324.lookupx(Unknown Source)
           at Thor.API.Operations.GCOperationsIntf_l8qb7l_GCOperationsIntfRemoteImpl.__WL_invoke(Unknown Source)
           at weblogic.ejb.container.internal.SessionRemoteMethodInvoker.invoke(SessionRemoteMethodInvoker.java:40)
           at Thor.API.Operations.GCOperationsIntf_l8qb7l_GCOperationsIntfRemoteImpl.lookupx(Unknown Source)
           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
           at java.lang.reflect.Method.invoke(Method.java:597)
           at weblogic.ejb.container.internal.RemoteBusinessIntfProxy.invoke(RemoteBusinessIntfProxy.java:85)
           at $Proxy143.lookupx(Unknown Source)
           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
           at java.lang.reflect.Method.invoke(Method.java:597)
           at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
           at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:198)
           at $Proxy321.lookupx(Unknown Source)
           at Thor.API.Operations.GCOperationsIntfDelegate.lookup(Unknown Source)
           at com.thortech.xl.gc.runtime.GCScheduleTask.execute(GCScheduleTask.java:76)
           at com.thortech.xl.scheduler.tasks.SchedulerBaseTask.execute(SchedulerBaseTask.java:384)
           at oracle.iam.scheduler.vo.TaskSupport.executeJob(TaskSupport.java:145)
           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
           at java.lang.reflect.Method.invoke(Method.java:597)
           at oracle.iam.scheduler.impl.quartz.QuartzJob.execute(QuartzJob.java:196)
           at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
           at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)

      .
      .
      .
      .
      .
      [oim_server1] [ERROR] [] [org.quartz.impl.jdbcjobstore.JobStoreCMT] [tid: QuartzScheduler_OIMQuartzScheduler-orclfmw.example.com1362590146524_MisfireHandler] [userId: oiminternal] [ecid: 0000Jp0fdDvFw000jzwkno1HDrXW000002,0] [APP: oim#11.1.1.3.0] MisfireHandler: Error handling misfires: Unexpected runtime exception: null[[
      org.quartz.JobPersistenceException: Unexpected runtime exception: null [See nested exception: java.lang.NullPointerException]
           at org.quartz.impl.jdbcjobstore.JobStoreSupport.doRecoverMisfires(JobStoreSupport.java:3042)
           at org.quartz.impl.jdbcjobstore.JobStoreSupport$MisfireHandler.manage(JobStoreSupport.java:3789)
           at org.quartz.impl.jdbcjobstore.JobStoreSupport$MisfireHandler.run(JobStoreSupport.java:3809)
      Caused by: java.lang.NullPointerException
           at org.quartz.SimpleTrigger.computeNumTimesFiredBetween(SimpleTrigger.java:800)
           at org.quartz.SimpleTrigger.updateAfterMisfire(SimpleTrigger.java:514)
           at org.quartz.impl.jdbcjobstore.JobStoreSupport.doUpdateOfMisfiredTrigger(JobStoreSupport.java:944)
           at org.quartz.impl.jdbcjobstore.JobStoreSupport.recoverMisfiredJobs(JobStoreSupport.java:898)
           at org.quartz.impl.jdbcjobstore.JobStoreSupport.doRecoverMisfires(JobStoreSupport.java:3029)
           ... 2 more


      Please provide the solution.

      Thanks in Advance.
        • 1. Re: Flat File GTC Recon Error
          Daniel Redfern
          Hi,

          Looks like you followed the Oracle website (which has a couple of issues with it)

          Maybe the following links for GTC flat file recon will be of assistance?

          HOW TO: Video
          http://www.technicalconfessions.com/posts.php?post_id=137&title=OIM%2011g%20GTC%20trusted%20Reconciliation%20-%20Flat%20File%20Feed

          Step-by-step guide
          http://www.technicalconfessions.com/posts.php?post_id=125&title=HOW%20TO:%20create%20a%20GTC%20Flat%20file%20HR%20import%20(Trusted%20Recon)

          Regards,
          Daniel
          • 2. Re: Flat File GTC Recon Error
            Vamsi Krishna
            Follow this (Note: These are only meant for GTC mappings)
            login ->login -> User Login
            firstName -> firstName -> First Name
            lastName->lastName -> Last Name
            eMail->eMail -> Email
            organization->organization -> Organization
            This can take the values of the organizations that are already present in OIM (OOTB values are: Xellerate Users or Requests)
            Employee Type->EmployeeType -> Role
            Employee Type can take the values of: Full-Time, Contractor, Other, Consultant
            UserType->User Type -> User Type
            User Type can take the values of : End-User, End-User Administrator
            Note: This is considered as Design console Access.

            Note: One of the mappings should have matching only key to define the reconciliation rules.

            -Vamsi.
            • 3. Re: Flat File GTC Recon Error
              kavatam
              Hi Daniel,

              I followed all the steps provided in ur link. But still same error. Neither user is getting created nor Recon event.-

              I am using OIM 11.1.1.5.

              Please suggest next step.

              Thanks.

              Edited by: 992399 on Mar 11, 2013 11:28 AM
              • 4. Re: Flat File GTC Recon Error
                Vamsi Krishna
                What do you see in the server logs?

                Cheers,
                Vamsi.
                • 5. Re: Flat File GTC Recon Error
                  kavatam
                  Hi Vamshi,

                  Am facing the error specified in my first post (pasted below again) ... I have checked mapping specified by you also... it was also satisified... but still not working...


                  [oim_server1] [ERROR] [] [XELLERATE.GC.FRAMEWORKRECONCILIATION] [tid: OIMQuartzScheduler_Worker-4] [userId: oiminternal] [ecid: 0000Jp0fdDvFw000jzwkno1HDrXW000002,0] [APP: oim#11.1.1.3.0] Reconciliation Encountered error: [[
                  java.lang.NullPointerException
                  at com.thortech.xl.ejb.beansimpl.GCOperationsBean.lookup(GCOperationsBean.java:300)
                  at Thor.API.Operations.GCOperationsIntfEJB.lookupx(Unknown Source)
                  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                  at java.lang.reflect.Method.invoke(Method.java:597)
                  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.bea.core.repackaged.springframework.jee.spi.MethodInvocationVisitorImpl.visit(MethodInvocationVisitorImpl.java:37)
                  at weblogic.ejb.container.injection.EnvironmentInterceptorCallbackImpl.callback(EnvironmentInterceptorCallbackImpl.java:54)
                  at com.bea.core.repackaged.springframework.jee.spi.EnvironmentInterceptor.invoke(EnvironmentInterceptor.java:50)
                  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 $Proxy324.lookupx(Unknown Source)
                  at Thor.API.Operations.GCOperationsIntf_l8qb7l_GCOperationsIntfRemoteImpl.__WL_invoke(Unknown Source)
                  at weblogic.ejb.container.internal.SessionRemoteMethodInvoker.invoke(SessionRemoteMethodInvoker.java:40)
                  at Thor.API.Operations.GCOperationsIntf_l8qb7l_GCOperationsIntfRemoteImpl.lookupx(Unknown Source)
                  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                  at java.lang.reflect.Method.invoke(Method.java:597)
                  at weblogic.ejb.container.internal.RemoteBusinessIntfProxy.invoke(RemoteBusinessIntfProxy.java:85)
                  at $Proxy143.lookupx(Unknown Source)
                  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                  at java.lang.reflect.Method.invoke(Method.java:597)
                  at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
                  at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:198)
                  at $Proxy321.lookupx(Unknown Source)
                  at Thor.API.Operations.GCOperationsIntfDelegate.lookup(Unknown Source)
                  at com.thortech.xl.gc.runtime.GCScheduleTask.execute(GCScheduleTask.java:76)
                  at com.thortech.xl.scheduler.tasks.SchedulerBaseTask.execute(SchedulerBaseTask.java:384)
                  at oracle.iam.scheduler.vo.TaskSupport.executeJob(TaskSupport.java:145)
                  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
                  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                  at java.lang.reflect.Method.invoke(Method.java:597)
                  at oracle.iam.scheduler.impl.quartz.QuartzJob.execute(QuartzJob.java:196)
                  at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
                  at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)

                  .
                  .
                  .
                  .
                  .
                  [oim_server1] [ERROR] [] [org.quartz.impl.jdbcjobstore.JobStoreCMT] [tid: QuartzScheduler_OIMQuartzScheduler-orclfmw.example.com1362590146524_MisfireHandler] [userId: oiminternal] [ecid: 0000Jp0fdDvFw000jzwkno1HDrXW000002,0] [APP: oim#11.1.1.3.0] MisfireHandler: Error handling misfires: Unexpected runtime exception: null[[
                  org.quartz.JobPersistenceException: Unexpected runtime exception: null [See nested exception: java.lang.NullPointerException]
                  at org.quartz.impl.jdbcjobstore.JobStoreSupport.doRecoverMisfires(JobStoreSupport.java:3042)
                  at org.quartz.impl.jdbcjobstore.JobStoreSupport$MisfireHandler.manage(JobStoreSupport.java:3789)
                  at org.quartz.impl.jdbcjobstore.JobStoreSupport$MisfireHandler.run(JobStoreSupport.java:3809)
                  Caused by: java.lang.NullPointerException
                  at org.quartz.SimpleTrigger.computeNumTimesFiredBetween(SimpleTrigger.java:800)
                  at org.quartz.SimpleTrigger.updateAfterMisfire(SimpleTrigger.java:514)
                  at org.quartz.impl.jdbcjobstore.JobStoreSupport.doUpdateOfMisfiredTrigger(JobStoreSupport.java:944)
                  at org.quartz.impl.jdbcjobstore.JobStoreSupport.recoverMisfiredJobs(JobStoreSupport.java:898)
                  at org.quartz.impl.jdbcjobstore.JobStoreSupport.doRecoverMisfires(JobStoreSupport.java:3029)
                  ... 2 more

                  Thanks,
                  • 6. Re: Flat File GTC Recon Error
                    user9212679
                    Does you flat file gets moved to the archive folder when you run the recon?
                    • 7. Re: Flat File GTC Recon Error
                      kavatam
                      Hi,

                      No file is created in Archive location.

                      Also, just wanted to know whether will Archive file be created, even though Recon event is not created?

                      Thanks.
                      • 8. Re: Flat File GTC Recon Error
                        user9212679
                        Have you submitted the button "Create Reconciliation Profile" after specifying all the mapping.

                        Please try that.. for this you need to login to design console

                        Search your resource object and then in the Object Reconciliation tab --> click on "Create Reconciliation Profile" button.

                        Try running flat file active sync again and let us know if it works.
                        • 9. Re: Flat File GTC Recon Error
                          Vamsi Krishna
                          File should have been archived if there is any problem with the mapping. If the file is not archived, then it seems that the input file is not being read or could not move the input file into archive folder.

                          Check if the location specified for archive directory exists and have enough permissions to read/write the files into that location.

                          Cheers,
                          Vamsi.
                          • 10. Re: Flat File GTC Recon Error
                            kavatam
                            Tried "create reconciliation profile".

                            The folder containing csv file, folder to which archive file will be created and csv file have read and write permissions.


                            Still the issue persists.

                            Thanks
                            • 11. Re: Flat File GTC Recon Error
                              AG IAM
                              Did you resolved the issue??? This thread is marked as Answered...
                              • 12. Re: Flat File GTC Recon Error
                                kavatam
                                No. The issue is not resolved. Am not sure y its showing as Answered.

                                Tried all the possible ways. Please provide the solution.
                                • 13. Re: Flat File GTC Recon Error
                                  kavatam
                                  Not yet answered
                                  • 14. Re: Flat File GTC Recon Error
                                    AG IAM
                                    Hi,

                                    First Create a txt file that will include your user data e.g. HRidentites.txt it should be the File Prefix value during GTC creation.
                                    Put it in staging dir <IDM_HOME>\Staging\Import
                                    Create Archive dir <IDM_HOME>\Staging\Complete

                                    Format for txt file:
                                    #GTC Trusted Source
                                    login|firstname|lastname|organization|displayname
                                    UID|ABC|DEF|Xellerate Users|DN

                                    Create fresh GTC for csv recon.

                                    Staging Directory (Parent identity data) --> <IDM_HOME>\Staging\Import
                                    Archiving Directory ---> <IDM_HOME>\Staging\Complete
                                    File Prefix ---> HRidentites
                                    Specified Delimiter ----> |
                                    Unique Attribute (Parent Data) ---> login
                                    File Encoding ---> UTF8
                                    Reconciliation Type ---> Full

                                    Mapp the attributes as below.
                                    In the Mapping window source & Reconciliation Staging will be the attributes from the txt file .
                                    Add Role & UserType attribute in Reconciliation Staging and map them to literal values OTHER & End-User respectively.

                                    Now Map Recon Staging and OIM attributes as below

                                    login ->User Login
                                    firstName -> First Name
                                    lastName->Last Name
                                    organization->Organization
                                    UserType->User Type
                                    Role -> Role
                                    displayname -> Display Name

                                    Note: One of the mappings should have matching only key to define the reconciliation rules e.g. User Login

                                    Save it.

                                    Login to Design Console

                                    Search your resource object and then in the Object Reconciliation tab --> click on "Create Reconciliation Profile" button.

                                    Make sure you have selected Schedule Type     as Single . Apply the changes and Run recon.
                                    Now run the recon task and share the result. It should work fine!

                                    Edited by: AG on Mar 20, 2013 12:22 AM