12 Replies Latest reply: Dec 31, 2012 1:51 AM by 958133 RSS

    Exception while running createReconEvent in 11gR2

    958133
      Hi,

      I am creating a reconn event for a custom connector in 11g (object name: Incident History). I am using createReconciliationEvent() method of 10g (seems to be deprecated) but working fine here!! But i am getting below exception while running:

      oracle.mds.core.MetadataNotFoundException: MDS-00013: no metadata found for metadata object "/db/Incident History"
      Am i missing something, Do i need to register some file in MDS?
        • 1. Re: Exception while running createReconEvent in 11gR2
          Rajiv Dewan
          It is related to Reconciliation Profile which introduced into OIM 11g.


          Use OIM 11g APIs and also did you create Reconciliation Profile (You need to create that from Design Console > Resource Object > Object Reconciliation > Create Reconciliation Profile button) ?
          • 2. Re: Exception while running createReconEvent in 11gR2
            958133
            Yes, It worked but it changed my error to
            Invalid Profile - Incident History
            I am putting the same object name as appering in the Resource Objects>Resource Object Name but still this is giving me this error. I wonder what is going wrong. COuld you please share some idea?

            Can i expect that this is due to deprecated method i am using?
            • 3. Re: Exception while running createReconEvent in 11gR2
              Nishith Nayan
              It may possible.Better use use 11g API
              createReconciliationEvent(java.lang.String objName, java.util.Map inputData,EventAttributes eventAttribs)

              ReconciliationResult createReconciliationEvents(BatchAttributes batchAttribs,InputData[] input) //better use this method It is good for Bulk reconciliation event.

              You can create BatchAttributes objects by passing the profile name and date format. where the profile name would be RA_<RESOURCEOBJECT_NAME><OBJECT_KEY>. verify in oimdb as well
              BatchAttributes(java.lang.String profileName, java.lang.String dateFormat)

              http://docs.oracle.com/cd/E27559_01/apirefs.1112/e28159/index.html?oracle/iam/accesspolicy/api/AccessPolicyService.html
              • 4. Re: Exception while running createReconEvent in 11gR2
                958133
                Thanks NN, It will be a great help if i get some sample code.
                since when i check for the API, event attrs is defined as:

                eventAttribs - EventAttributes like changetype, dateformat etc.

                or batchattrs if i go for:
                batchAttribs - BatchAttributes like resource name, dateformat etc

                No Idea how to set these, Please help..


                big thanks
                • 5. Re: Exception while running createReconEvent in 11gR2
                  Rajiv Dewan
                  You can pass DateFormat as null, it will take DefaultDateFormat from OIM

                  Change Type can have three value DELETE, REGULAR, CHANGELOG ( ChangeType.CHANGELOG)
                  • 6. Re: Exception while running createReconEvent in 11gR2
                    958133
                    Thanks for replying: I have coded my java function as:
                    public static long createReconEvent(String resourceObject, HashMap userInfoMap, ReconOperationsService reconOperationsServiceObj) {
                              String functionName = "createReconEvent()";
                              
                              EventAttributes eventAttribs= new EventAttributes(true, null, ChangeType.CHANGELOG, null);
                              System.out.println("Function ::" + functionName + " createReconEvent ::START");
                              long reconKey=reconOperationsServiceObj.createReconciliationEvent(resourceObject, userInfoMap, eventAttribs);
                              reconOperationsServiceObj.processReconciliationEvent(reconKey);
                              System.out.println("Function ::" + functionName + " Recon Key Generated is ::" + reconKey);
                              return reconKey;
                         }
                    But i am getting same exception again:
                    Function ::createReconEvent() createReconEvent ::START
                    Invalid Profile - Incident History
                    I have clicked on the Create Reconciliation button again and executed the code but no luck!!

                    Please help!
                    • 7. Re: Exception while running createReconEvent in 11gR2
                      958133
                      This is the exception trace:
                      ----------------------------------

                      An exception occurred: oracle.iam.platform.utils.SuperRuntimeException: oracle.iam.platform.utils.SuperRuntimeException: orcKey is null
                      Thor.API.Exceptions.tcAPIException: An exception occurred: oracle.iam.platform.utils.SuperRuntimeException: oracle.iam.platform.utils.SuperRuntimeException: orcKey is null
                           at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:237)
                           at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:348)
                           at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:259)
                           at oracle.iam.reconciliation.api.ReconOperationsService_emc07d_ReconOperationsServiceRemoteImpl_1036_WLStub.processReconciliationEventx(Unknown Source)
                           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                           at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
                           at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                           at java.lang.reflect.Method.invoke(Unknown Source)
                           at weblogic.ejb.container.internal.RemoteBusinessIntfProxy.invoke(RemoteBusinessIntfProxy.java:85)
                           at $Proxy4.processReconciliationEventx(Unknown Source)
                           at oracle.iam.reconciliation.api.ReconOperationsServiceDelegate.processReconciliationEvent(Unknown Source)
                           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                           at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
                           at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                           at java.lang.reflect.Method.invoke(Unknown Source)
                           at Thor.API.Base.SecurityInvocationHandler$1.run(SecurityInvocationHandler.java:68)
                           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 Thor.API.Base.SecurityInvocationHandler.invoke(SecurityInvocationHandler.java:79)
                           at $Proxy5.processReconciliationEvent(Unknown Source)
                           at com.iam.clientcode.OIMClientClass.createReconEvent(OIMClientClass.java:254)
                           at com.iam.clientcode.OIMClientClass.getObjectName(OIMClientClass.java:239)
                           at com.iam.clientcode.OIMClientClass.main(OIMClientClass.java:269)
                      Caused by: Thor.API.Exceptions.tcAPIException: An exception occurred: oracle.iam.platform.utils.SuperRuntimeException: oracle.iam.platform.utils.SuperRuntimeException: orcKey is null
                           at oracle.iam.reconciliation.impl.ReconOperationsServiceImpl.processReconciliationEvent(ReconOperationsServiceImpl.java:1219)
                           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.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 $Proxy699.processReconciliationEvent(Unknown Source)
                           at oracle.iam.reconciliation.api.ReconOperationsServiceEJB.processReconciliationEventx(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.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 $Proxy698.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 oracle.iam.reconciliation.api.ReconOperationsService_emc07d_ReconOperationsServiceRemoteImpl_WLSkel.invoke(Unknown Source)
                           at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:668)
                           at weblogic.rmi.cluster.ClusterableServerRef.invoke(ClusterableServerRef.java:230)
                           at weblogic.rmi.internal.wls.WLSExecuteRequest.run(WLSExecuteRequest.java:118)
                           at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
                           at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
                      Caused by: oracle.iam.reconciliation.exception.CreateAccountException: oracle.iam.platform.utils.SuperRuntimeException: oracle.iam.platform.utils.SuperRuntimeException: orcKey is null
                           at oracle.iam.reconciliation.impl.AccountHandler.applyRule(AccountHandler.java:241)
                           at oracle.iam.reconciliation.impl.AccountHandler.process(AccountHandler.java:216)
                           at oracle.iam.reconciliation.impl.ActionEngine.processEvent(ActionEngine.java:169)
                           at oracle.iam.reconciliation.impl.ReconOperationsServiceImpl.processReconciliationEvent(ReconOperationsServiceImpl.java:1216)
                           ... 42 more
                      Caused by: oracle.iam.platform.utils.SuperRuntimeException: oracle.iam.platform.utils.SuperRuntimeException: orcKey is null
                           at oracle.iam.reconciliation.impl.AccountHandler$3.process(AccountHandler.java:472)
                           at oracle.iam.reconciliation.impl.AccountHandler$3.process(AccountHandler.java:452)
                           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.reconciliation.impl.AccountHandler.provisionUsrAccount(AccountHandler.java:452)
                           at oracle.iam.reconciliation.impl.AccountHandler.create(AccountHandler.java:312)
                           at oracle.iam.reconciliation.impl.AccountHandler.applyRule(AccountHandler.java:239)
                           at oracle.iam.reconciliation.impl.AccountHandler.process(AccountHandler.java:217)
                           ... 44 more
                      Caused by: oracle.iam.platform.utils.SuperRuntimeException: orcKey is null
                           at oracle.iam.reconciliation.impl.AccountHandler$3.process(AccountHandler.java:465)
                           ... 53 more
                      • 8. Re: Exception while running createReconEvent in 11gR2
                        Nishith Nayan
                        Make sure your recon data is populating all your required fields
                        • 9. Re: Exception while running createReconEvent in 11gR2
                          958133
                          Hi NN, I just reverted to deprecated API and i noticed exception logs changed i guess this would be resolvable: Please see, thanks!!
                          -------------------------------------
                          An exception occurred: oracle.iam.platform.utils.SuperRuntimeException: -104: Error occured in XL_SP_RECONEVALUATEACCOUNT while processing Event No 80822 Error occurred in XL_SP_RECONREQDATACHECK while processing Event 80822 *'Event Received' is an invalid event status. Valid event states are Data Received,Data Validation Failed,Being Re-evaluated,Being Re-tried*
                          Thor.API.Exceptions.tcAPIException: An exception occurred: oracle.iam.platform.utils.SuperRuntimeException: -104: Error occured in XL_SP_RECONEVALUATEACCOUNT while processing Event No 80822 Error occurred in XL_SP_RECONREQDATACHECK while processing Event 80822 'Event Received' is an invalid event status. Valid event states are Data Received,Data Validation Failed,Being Re-evaluated,Being Re-tried
                               at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:237)
                               at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:348)
                               at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:259)
                               at oracle.iam.reconciliation.api.ReconOperationsService_emc07d_ReconOperationsServiceRemoteImpl_1036_WLStub.processReconciliationEventx(Unknown Source)
                               at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                               at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
                               at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                               at java.lang.reflect.Method.invoke(Unknown Source)
                               at weblogic.ejb.container.internal.RemoteBusinessIntfProxy.invoke(RemoteBusinessIntfProxy.java:85)
                               at $Proxy4.processReconciliationEventx(Unknown Source)
                               at oracle.iam.reconciliation.api.ReconOperationsServiceDelegate.processReconciliationEvent(Unknown Source)
                               at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                               at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
                               at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                               at java.lang.reflect.Method.invoke(Unknown Source)
                               at Thor.API.Base.SecurityInvocationHandler$1.run(SecurityInvocationHandler.java:68)
                               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 Thor.API.Base.SecurityInvocationHandler.invoke(SecurityInvocationHandler.java:79)
                               at $Proxy5.processReconciliationEvent(Unknown Source)
                               at com.iam.clientcode.OIMClientClass.createReconEvent(OIMClientClass.java:254)
                               at com.iam.clientcode.OIMClientClass.getObjectName(OIMClientClass.java:239)
                               at com.iam.clientcode.OIMClientClass.main(OIMClientClass.java:269)
                          • 10. Re: Exception while running createReconEvent in 11gR2
                            Nishith Nayan
                            create recon profile once again

                            Make sure your Recon rule is active. if not Activate it and then create recon profile
                            • 11. Re: Exception while running createReconEvent in 11gR2
                              958133
                              Everything seems to be inplace, I tried cvreating recon profile again, but no luck same exception, ALl mandatory fields are also getting filled.
                              I am checking this link, but I guess i am already doing the same thing :-(

                              problem in custom trusted reconciliation in OIM 11g
                              • 12. Re: Exception while running createReconEvent in 11gR2
                                958133
                                it worked now!!

                                I just added throws tcAPIException, tcObjectNotFoundException, tcEventNotFoundException, tcEventDataReceivedException with the function.. Dont know how it is linked.
                                But now a new issue.. I could see event is getting generated with user rule getting linked but the Account is not coming in the user Accounts tab.

                                Please suggest if i open a new thread for this.

                                Thanks to you; All the Expert...