IOM API Exception

package com.oracle.oim.sample;
java.awt.List Import;


Import Java.util;

import java.util.Date;

import java.util.HashMap;

import java.util.Hashtable;

to import java.util.Iterator;

import java.sql.Connection;

to import java.sql.DriverManager;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.util.ArrayList;

to import java.util.Collection;

import java.sql. *;





Import Thor.API.tcResultSet;

Import Thor.API.tcUtilityFactory;

Import Thor.API.Exceptions.tcAPIException;
Import Thor.API.Operations.tcEmailOperationsIntf;

Import Thor.API.Operations.tcITResourceInstanceOperationsIntf;

Import Thor.API.Operations.tcLookupOperationsIntf;

Import Thor.API.Operations.tcObjectOperationsIntf;

Import Thor.API.Operations.tcProvisioningOperationsIntf;

Import Thor.API.Operations.tcReconciliationOperationsIntf;

Import Thor.API.Operations.tcRequestOperationsIntf;

Import Thor.API.Operations.tcUserOperationsIntf;



import com.thortech.xl.crypto.tcCryptoUtil;

import com.thortech.xl.crypto.tcSignatureMessage;

import com.thortech.xl.dataaccess.tcClientDataAccessException;
import com.thortech.xl.dataaccess.tcDataProvider;

import com.thortech.xl.dataobj.util.tcEmailNotificationUtil;

import com.thortech.xl.orb.dataaccess.tcDataAccessException;
import com.thortech.xl.scheduler.tasks.SchedulerBaseTask;
import com.thortech.xl.util.config.ConfigurationClient;



import com.thortech.xl.dataobj.tcDataSet;

import com.thortech.xl.dataobj.util.tcEmailNotificationUtil;

import com.thortech.xl.dataaccess.tcDataBaseClient;

import com.thortech.xl.dataaccess.tcDataProvider;
import com.thortech.xl.gc.util.oximmodel.Lookup;

import java.util.Vector;
Import org.apache.log4j.Logger;

public class unlinkUser extends SchedulerBaseTask {}
private static Logger LOGGER = Logger.getLogger ("Xellerate.WebApp");
private tcLookupOperationsIntf lookupIntf;
private tcReconciliationOperationsIntf reconIntf;
private tcUserOperationsIntf userIntf;
private tcObjectOperationsIntf objIntf;
private tcRequestOperationsIntf reqIntf;
private tcITResourceInstanceOperationsIntf rtIntf;
private tcProvisioningOperationsIntf provisionIntf;
private tcDataProvider db;

public void init() {}
try {}
Config ConfigurationClient.ComplexSetting = ConfigurationClient.getComplexSettingByPath ("Discovery.CoreServer");
final Hashtable env = config.getAllSettings ();
tcUtilityFactory ioUtilityFactory = new tcUtilityFactory (env, "xelsysadm", "privatekey");
userIntf = (tcUserOperationsIntf) ioUtilityFactory.getUtility ("Thor.API.Operations.tcUserOperationsIntf");
reconIntf = (tcReconciliationOperationsIntf) ioUtilityFactory.getUtility ("Thor.API.Operations.tcReconciliationOperationsIntf");
reqIntf = (tcRequestOperationsIntf) ioUtilityFactory.getUtility ("Thor.API.Operations.tcRequestOperationsIntf");
lookupIntf = (tcLookupOperationsIntf) ioUtilityFactory.getUtility ("Thor.API.Operations.tcLookupOperationsIntf");
provisionIntf = (tcProvisioningOperationsIntf) ioUtilityFactory.getUtility ("Thor.API.Operations.tcProvisioningOperationsIntf");
DB = getDataBase();


}
{} catch (tcAPIException e)
throw new RuntimeException ("Unable to create instance API" +)
"instance", e);
}
catch (System.Exception e)
{
System.out.println (e);

}

}
{} public void execute()
Boolean returnValue;
returnValue = unlink ("KIRAN_KHER", "User OID");
System.out.Print (returnValue);

}
public boolean unlink (String UserLogin, String ResourceName)
{
long objKey = 0;
long prockey = 0;
long take = 0;
try {}
UserMap HashMap = new HashMap();
userMap.put ("Users.User ID", UserLogin);
tcResultSet userSet = userIntf.findAllUsers (userMap);
Take = userSet.getLongValue ("Users.Key");
System.out.Print ("key to the user for the connection of the user" + UserLogin + "is" + take);

tcResultSet items = userIntf.getObjects (take);
int count = objects.getRowCount ();
If (Count < 1)
Returns false;

for (int j = 0; j < objects.getRowCount (); j ++) {}
objects.goToRow (j);

String objName = objects.getStringValue ("Objects.Name");
If (objName.equalsIgnoreCase ("user OID")) {}
prockey = Objects.getLongValue ("process Instance.Key");
System.out.println ("Resource" + objname);
System.out.println ("process button" + prockey);
objKey = objects.getLongValue ("Objects.Key");
System.out.println ("obj." + key objKey);
}
}
}

catch (System.Exception e)
{
System.out.println (e);
}
if(objKey == 0)
{
System.out.Print ("object key is 0");
Returns false;
}
System.out.Print ("obj key" + objKey + "key proc" + prockey + "user key" + take);
String query = "UPDATE Ouedraogo SET OST_key = (Select ost_key from the ost where obj_key =" + objKey + "and OST_status ="Revoked") WHERE usr_key = ' + take +" and orc_key = "+ prockey;»
Logger.info (Query);
System.out.Print ("after query definition');

try {}
System.out.Print ("in try");
db.writeStatement (query);

Returns true;
} catch (tcDataAccessException e) {}
e.printStackTrace ();
} catch (tcClientDataAccessException e) {}
e.printStackTrace ();
}
Returns false;


}
Public Shared Sub main (String [] args) {}
UU unlinkUser = new unlinkUser();
uu.init ();
uu. Execute();
}


}


_____________________________________________________________________________________________

Refer to the code above. It defines the State of the resource, service to a basic user key, user key and key of the object
The sql query works fine from the command prompt: sqlplus.
But when it is run in eclipse: it gives following error in the console:

key to the user for the connection of the user KIRAN_KHER is 4ResourceOID user
process key21
obj key21
obj 21proc key key key 4after 21user request defnin tryException in thread "main" java.lang.NullPointerException
* to com.oracle.oim.sample.unlinkUser.unlink(unlinkUser.java:175) *.
* to com.oracle.oim.sample.unlinkUser.execute(unlinkUser.java:124) *.
* to com.oracle.oim.sample.unlinkUser.main(unlinkUser.java:190) *.

Just look at your other thread. I gave the prepared sample for use of Statemnt. It will help you get any question.

But the thing that you're trying to do, how that will work, I'm not sure. Any change of status is not enough. It will be bound.

You can call APIs to revoke this user if you do then the user will not remove OID.

Tags: Fusion Middleware

Similar Questions

  • Object via IOM API production Thor.API.Exceptions.tcObjectNotFoundException of cancellation

    Hello

    I use code below for the service of objects assigned to the user, however object not found exception is generated:

    int counter = 0;

    String [] users = new String() {"User1", "user2"};

    String resource = "ITAX_GTC";

    for {(String userID1:users)

    counter ++;

    UserManager usermgr = client.getService (UserManager.class);

    user oracle.iam.identity.usermgmt.vo.User = usermgr.getDetails (Pseudo1, attrNames, true);

    value = provIntf.findObjects ("revoke", new String [] {user.getEntityId ()}, "U", searchCriteria);

    for (int i = 0; i < set.getTotalRowCount (); i ++) {}

    set.goToRow (i);

    If (set.getStringValue("Objects.Name").equalsIgnoreCase (resource)) {}

    long objInstanceKey = set.getLongValue ("Instance.Key object");

    Printer.println (getTimeStamp () + "cancellation instance of the object key:" + objInstanceKey);

    userIntf.revokeObject (Long.parseLong (user.getEntityId ()), objInstanceKey);

    }

    }

    }

    Special suite is generated:

    Thor.API.Exceptions.tcObjectNotFoundException

    at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:234)

    at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:348)

    at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:259)

    at Thor.API.Operations.tcUserOperationsIntf_e9jcxp_tcUserOperationsIntfRemoteImpl_1035_WLStub.revokeObjectx (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)

    to $Proxy2.revokeObjectx (Unknown Source)

    at Thor.API.Operations.tcUserOperationsIntfDelegate.revokeObject (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)

    to 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)

    to $Proxy3.revokeObject (Unknown Source)

    at com.infotech.tra.organization.RoleAssignment.ProvisionResources(RoleAssignment.java:1066)

    at com.infotech.tra.organization.RoleAssignment.main(RoleAssignment.java:60)

    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.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:56)

    Caused by: Thor.API.Exceptions.tcObjectNotFoundException

    at com.thortech.xl.ejb.beansimpl.tcUserOperationsBean.revokeObject(tcUserOperationsBean.java:3184)

    at Thor.API.Operations.tcUserOperationsIntfEJB.revokeObjectx (unknown Source)

    at sun.reflect.GeneratedMethodAccessor3410.invoke (unknown Source)

    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)

    to $Proxy344.revokeObjectx (Unknown Source)

    at Thor.API.Operations.tcUserOperationsIntf_e9jcxp_tcUserOperationsIntfRemoteImpl.__WL_invoke (unknown Source)

    at weblogic.ejb.container.internal.SessionRemoteMethodInvoker.invoke(SessionRemoteMethodInvoker.java:40)

    at Thor.API.Operations.tcUserOperationsIntf_e9jcxp_tcUserOperationsIntfRemoteImpl.revokeObjectx (unknown Source)

    at Thor.API.Operations.tcUserOperationsIntf_e9jcxp_tcUserOperationsIntfRemoteImpl_WLSkel.invoke (unknown Source)

    at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:667)

    at weblogic.rmi.cluster.ClusterableServerRef.invoke(ClusterableServerRef.java:230)

    to weblogic.rmi.internal.BasicServerRef$ 1.run(BasicServerRef.java:522)

    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)

    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:146)

    at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:518)

    at weblogic.rmi.internal.wls.WLSExecuteRequest.run(WLSExecuteRequest.java:118)

    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)

    at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)

    You can try using "User-object Instance to User.Key instead of"Object Instance.Key"

  • IOM API to reallocate applications?

    I am trying to find a way to set or change the assignee who is responsible for approving the request.

    I look in the following IOM API:

    oracle.iam.api.OIMService

    oracle.iam.request.api.RequestService

    I was able to create a query using 'oracle.iam.api.OIMService' API, but I couldn't find a way to set the approver (default IOM, SYSTEM ADMINISTRATORS).

    I know that IOM has a feature of the user interface to redirect a request to another user or group (photo attached for example). I would like to know if there is an API for this.

    Screen Shot 2015-04-28 at 3.01.33 PM.png

    It is not the API of the IOM to reassign an application.  You will need to use the API of SOA BPEL to reassign the tasks on the side of the SOA.

    Code like this:

    public void reassignTask() {}

    List = new ArrayList ()users;

    Assignee ITaskAssignee = null;

    assignee = new TaskAssignee ("". toLowerCase(), "user");

    Users.Add (assignee);

    int counter = 0;

    tasks of long [] = new long [] {};

    for (long task: task) {}

    counter ++;

    try {}

    System.out.println (counter + "|" + tasks.length + "\tReassigned:" + taskService.reassignTask (iWorkflowContextQuery, taskQueryService.getTaskDetailsByNumber (iWorkflowContextQuery, Integer.valueOf (String.valueOf (task))), users));

    } catch (Exception e) {}

    System.out.println (e.getLocalizedMessage ());

    }

    }

    }

    -Kevin

  • Thor.API.Exceptions.tcAPIException: No value is provided for the required fields

    Hello

    I use IOM APIs to create the user. I have provided all the required fields. but didn't the user to create
    This exception: == Thor.API.Exceptions.tcAPIException: no value provided for required fields

    Here is my code:

    {} public void createUser()
    try {}
    tcUserOperationsIntf moUserUtility = (tcUserOperationsIntf) ioUtilityFactory
    .getUtility ("Thor.API.Operations.tcUserOperationsIntf");
    Hashtable CreateUserCriteria = new Hashtable();
    createUserCriteria.put ("ID Users.User", "Devesh1");
    createUserCriteria.put ("name of the Users. First","Victor");
    createUserCriteria.put ("name of the Users. Last","Fish");
    createUserCriteria.put ("Organizations.Organization name",
    "Xellerate users");
    createUserCriteria.put (Type "Users.Xellerate", "End user");
    createUserCriteria.put ("Users.Role", "Full time");
    createUserCriteria.put ("Users.Password", "abcd1234");

    moUserUtility.createUser (createUserCriteria);
    } catch (tcInvalidAttributeException e) {}
    e.printStackTrace ();
    } catch (tcAttributeMissingException e) {}
    e.printStackTrace ();
    } catch (tcDuplicateUserException e) {}
    e.printStackTrace ();
    } catch (tcAPIException e) {}
    e.printStackTrace ();
    }
    }


    Journal: is

    Thor.API.Exceptions.tcAPIException: No value is provided for the required fields
    at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:234)
    at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:348)
    at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:259)
    at com.thortech.xl.ejb.beans.tcUserOperations_voj9p2_EOImpl_1032_WLStub.createUser (unknown Source)
    at Thor.API.Operations.tcUserOperationsClient.createUser (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)
    to Thor.API.Base.SecurityInvocationHandler$ 1.run (unknown Source)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs (unknown Source)
    at weblogic.security.Security.runAs(Security.java:41)
    at Thor.API.Security.LoginHandler.weblogicLoginSession.runAs (unknown Source)
    at Thor.API.Base.SecurityInvocationHandler.invoke (unknown Source)
    to $Proxy0.createUser (Unknown Source)
    at the commune. DemoOim.createUser (DemoOim.java:83)
    at the commune. DemoOim.main (DemoOim.java:100)
    Caused by: Thor.API.Exceptions.tcAPIException: no value provided for required fields
    at com.thortech.xl.ejb.beansimpl.tcUserOperationsBean.createUser (unknown Source)
    at com.thortech.xl.ejb.beansimpl.tcUserOperationsBean.createUser (unknown Source)
    at com.thortech.xl.ejb.beans.tcUserOperationsSession.createUser (unknown Source)
    at com.thortech.xl.ejb.beans.tcUserOperations_voj9p2_EOImpl.createUser(tcUserOperations_voj9p2_EOImpl.java:3773)
    at com.thortech.xl.ejb.beans.tcUserOperations_voj9p2_EOImpl_WLSkel.invoke (unknown Source)
    at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:589)
    at weblogic.rmi.cluster.ClusterableServerRef.invoke(ClusterableServerRef.java:230)
    to 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)

    Replace
    createUserCriteria.put ("Organizations.Organization name",
    "Xellerate users");

    with

    createUserCriteria.put("Organizations.Key","1");

  • Object instantiation of IOM API tcUtilityFactory

    Hi all
    I am trying to open the object of tcUtilityFactory in the following way:

    ================
    System.setProperty ("XL. HomeDir"," C:/Oracle/OIM_DC/xlclient");
    System.setProperty ("java.security.policy", "C:/Oracle/OIM_DC/xlclient/Config/xl.policy");
    System.setProperty ("java.security.auth.login.config", "C:/Oracle/OIM_DC/xlclient/Config/auth.conf");
    System.setProperty ("java.naming.provider.url", "t3://weblogic1.domain.com:7001");
    System.setProperty ("java.naming.factory.initial", "weblogic.jndi.WLInitialContextFactory");

    Config ConfigurationClient.ComplexSetting = ConfigurationClient.getComplexSettingByPath ("Discovery.CoreServer");
    System.out.println ("login...");
    Hashtable env = config.getAllSettings ();
    tcUtilityFactory ioUtilityFactory = new tcUtilityFactory (env, "xelsysadm", "Oracle123");
    ================

    and to get the output on the following all current run/debug console:
    ================
    C:/Oracle/OIM_DC/xlclient
    C:/Oracle/OIM_DC/xlclient/config/XL. Policy
    C:/Oracle/OIM_DC/xlclient/config/auth.conf
    T3://weblogic1.domain.com:7001
    weblogic.jndi.WLInitialContextFactory
    Starting...
    Get the configuration...
    Opening session...
    log4j: WARN no appenders could be found for logger (XELLERATE. ACCOUNTMANAGEMENT).
    log4j: WARN Please initialize log4j correctly system.
    Thor.API.Exceptions.tcUserAccountInvalidException
    at Thor.API.tcUtilityFactory.createLoginException (unknown Source)
    to Thor.API.tcUtilityFactory. < init >(Unknown Source)
    at FirstAPITest.main (FirstAPITest.java:33)
    ================

    I use Eclipse and followed all the steps mentioned in the thread - new to the coding in IOM
    that is, I'm assuming since the Metalink I see the same info in a metalink doc.

    Please let me know if I am missing some step.

    Thank you

    In my view, what is of weblogic application server

    Make following changes:

    C:/Oracle/OIM_DC/xlclient/config/auth.conf

    C:/Oracle/OIM_DC/xlclient/config/authwl.conf

  • Need help on IOM API

    Hi all

    Have we not all API IOM to validate the challenge questions and challenge responses specifically?

    I was trying to restore the password functionality using the API of the IOM resetForgottenPassword(). But, for the first time it has been reset the password perfectly and then from the 2nd time... it gives an error message that is mentioned below.

    ERROR, April 13, 2010 06:16:55, 982, [XELLERATE. SERVER], class/method: tcUSR/changePasswordForSelf error: password cannot be changed.
    ERROR, April 13, 2010 06:16:55, 984, [XELLERATE. SERVER], class/method: tcUnauthenticatedOperationsBean/resetForgottenPassword some problems: error occurred while resetting the password.
    ERROR, April 13, 2010 06:16:55, 984, [XELLERATE. SERVER], class/method: tcUnauthenticatedOperationsBean/resetForgottenPassword some problems: error occurred while resetting the password.
    Thor.API.Exceptions.tcAPIException: An error has occurred just by resetting the password.
    at com.thortech.xl.ejb.beansimpl.tcUnauthenticatedOperationsBean.resetForgottenPassword (unknown Source)
    at com.thortech.xl.ejb.beans.tcUnauthenticatedOperationsSession.resetForgottenPassword (unknown Source)
    at com.thortech.xl.ejb.beans.tcUnauthenticatedOperationsSession_j7uqe_EOImpl.resetForgottenPassword(tcUnauthenticatedOperationsSession_j7uqe_EOImpl.java:77)
    at com.thortech.xl.ejb.beans.tcUnauthenticatedOperationsSession_j7uqe_EOImpl_WLSkel.invoke (unknown Source)
    at weblogic.rmi.internal.ServerRequest.sendReceive(ServerRequest.java:174)

    Can someone help me please on the thing. If not, please suggest no work around for this.

    Thanks in advance.

    Siva NAKI.

    Here are the API under tcUserOperationsIntf:

    compareChallengeValuesForSelf
    Boolean compareChallengeValuesForSelf (java.util.Map phQuestionAnswer)
    throws Thor.API.Exceptions.tcNumberOfChallengesMismatchException,
    Thor.API.Exceptions.tcAPIException,
    tcAPIExceptionCompares questions and answers entered by the user against those stored in the database

    Parameters:
    phQuestionAnswer - a map of questions / answers for the current of the connected user.
    Returns:
    true if all the answers are correct to the appropriate questions
    Throws:
    tcNumberOfChallengesMismatchException
    tcAPIException

    You must post as a user, so you will need authentication by private key code in your adapter for this specific user during the validation of the challenge questions.

    -Kevin

  • Try to export using IOM API via tcExportOperationsIntf

    Hi all

    I wrote a custom code for exports of components to IOM API Help and I am able to take exports from

    Research, resources, process form and process definitions.

    But I'm not able to export role, resource, Access Policy, policy on the approval and debugging has been established that

    ExportOperationsIntf.findObjects (Type, Name); Returns null for role, resource, Access Policy, policy on the approval.

    If I try to research role, resource, Access Policy, political approval using OOTB Deployment Manager export then I can see my components required, but the API, I am not able to do.

    I tried to give the name as * DemoRole * and "TestDemoRole" [name], but it didn't work.

    Fact ExportOperationsIntf.findObjects (Type, Name); data only works for resouce?

    All the world is facing this problem?

    IOM Env = 11.1.2.2.0

    Thank you

    Rahul

    The categories should match while yours are slightly poorly named.

    You can get a list of available categories using the following code snippet:

    tcExportOperationsIntf = dm.getService (tcExportOperationsIntf.class) operations;
    Categories collection = operations.retrieveCategories ();
    for (String category: categories)
    System.out.println (Category);

    For reference, in OIM 11 g R2 PS2, the following categories may be used:

    -CustomResourceBundle
    -eventhandlers
    -Form process
    -CertificationDefinition
    -Organization
    -RiskConfiguration
    -ITResource
    -NOTIFICATIONTEMPLATE
    -PasswordPolicy
    -RequestDataset
    -DataObjectDef
    -CertificationConfiguration
    -Metadata role
    -User group
    -PrepopAdapter
    -Process
    -Plugin
    -ITResourceDef
    -Resources
    -EmailDef
    -TaskAdapter
    -SystemProperties
    -ApplicationInstance
    -GenericConnector
    -GTCProvider
    -Rule
    -User metadata
    -CatalogDefinition
    -ApprovalPolicy
    -Job
    -Jar
    -Metadata Org
    -Search
    -Task
    -ErrorCode
  • IOM API create event of reconciliation for organizations

    I use OIM 11.1.2.2.0

    I need to create a custom jobs planned for the reconciliation of the organizations.

    When a try to use this code doesn't work

    String resourceName = "Xellerate organization";

    Parent map = new HashMap();

    parentdata.put ("name of Org", "TestOrg");

    parentdata.put ("client organization Type", "Department" ");

    reconkey = reconOperationsService.createReconciliationEvent (resourceName, parent, evAtri);

    and displays this error

    Thor.API.Exceptions.tcAPIException: An exception occurred: oracle.iam.platform.kernel.ValidationFailedException: the mandatory Type Customer organization attribute was not provided.

    Have you defined the recon areas on your resource object?  You have them mapped on your definition of process for real fields?  You have created your profile of reconciliation?  You use the same names as your recon fields on the resource object in your event?

    -Kevin

  • Change password with IOM api using already defined password plocy: 11 G R2

    Hello

    When the user is created with a recon trust I want to change the password that is generated based on the default policy. With IOM api can generate the password by using a password Plocicy defined on IOM?

    To be more clear, I want to do something like that;

    1. download the strategy defined with IOM api
    2. generate the password with it
    3. configure the password generated recently in postporocess with the changePassword method eventhandler api IOM (this part I am able to do by the generation of password on my way, the thing I want is to generate the password using the phases 1 and 2)


    Is this possible?

    ARO
    Aliye

    Use this method to check your generated password:

    PasswordMgmtService validatePasswordAgainstDefaultPolicy()

    Or

    PasswordMgmtService validatePasswordAgainstPolicy()

    http://docs.oracle.com/cd/E27559_01/apirefs.1112/e28159/oracle/iam/passwordmgmt/api/PasswordMgmtService.html#validatePasswordAgainstDefaultPolicy_char___oracle_iam_identity_usermgmt_vo_User__java_util_Locale_

  • Thor.API.Exceptions.tcAPIException: An error occurred finding shapes

    Need help...

    I need key for fine o process form.
    This is my code:

    tcFormDefinitionOperationsIntf formOp = ioUtilityFactory.getUtility ("Thor.API.Operations.tcFormDefinitionOperationsIntf") (tcFormDefinitionOperationsIntf);
    Hashtable FormSearchCri = new Hashtable();
    formSearchCri.put ("Name of the Structure Utility.Table", "UD_LAPTOP");
    rst = formOp.findForms (searchCriteriaMap) tcResultSet;
    for (int i = 0; i < rst.getRowCount (); i ++) {}
    rst.goToRow (i);
    long formKey = rst.getLongValue ("Structure Utility.Key");
    System.out.println ("form key =" + formKey);
    }

    exception: ==

    Thor.API.Exceptions.tcAPIException: An error occurred finding shapes
    at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:234)
    at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:348)
    at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:259)
    at com.thortech.xl.ejb.beans.tcFormDefinitionOperations_1kx3fy_EOImpl_1032_WLStub.findForms (unknown Source)
    at Thor.API.Operations.tcFormDefinitionOperationsClient.findForms (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)
    to Thor.API.Base.SecurityInvocationHandler$ 1.run (unknown Source)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs (unknown Source)
    at weblogic.security.Security.runAs(Security.java:41)
    at Thor.API.Security.LoginHandler.weblogicLoginSession.runAs (unknown Source)
    at Thor.API.Base.SecurityInvocationHandler.invoke (unknown Source)
    to $Proxy2.findForms (Unknown Source)
    at oim.api.test.AccessPolicyCreation.createAccessPolicy(AccessPolicyCreation.java:48)
    at oim.api.test.AccessPolicyCreation.main(AccessPolicyCreation.java:65)
    Caused by: Thor.API.Exceptions.tcAPIException: error occurred finding shapes
    at com.thortech.xl.ejb.beansimpl.tcFormDefinitionOperationsBean.findForms (unknown Source)
    at com.thortech.xl.ejb.beansimpl.tcFormDefinitionOperationsBean.findForms (unknown Source)
    at com.thortech.xl.ejb.beans.tcFormDefinitionOperationsSession.findForms (unknown Source)
    at com.thortech.xl.ejb.beans.tcFormDefinitionOperations_1kx3fy_EOImpl.findForms(tcFormDefinitionOperations_1kx3fy_EOImpl.java:629)
    at com.thortech.xl.ejb.beans.tcFormDefinitionOperations_1kx3fy_EOImpl_WLSkel.invoke (unknown Source)
    at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:589)
    at weblogic.rmi.cluster.ClusterableServerRef.invoke(ClusterableServerRef.java:230)
    to 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)

    Try again with

    Replace

    policyCriteriaMap.put ('Access Policies.Retrofit Flag', ' yes');
    policyCriteriaMap.put ("Access Policies.By Request", "No");

    With

    policyCriteriaMap.put ("Access Policies.Retrofit Flag", "1");
    policyCriteriaMap.put ("Policies.By application access","0");

  • IOM Login authentication fails when the IOM API call

    Hello

    We have a small custom application written to make the update of some attributes of the user on OIM. This app works great on the development system, as well as the test system. However, when you run the program on the live system, it generates the error below. Please note that we use the IOM 11.1.1.5, test and production are under linux, while the development system is running windows 7. The test system is a single instance, while IOM in a production environment is clustered. Quick response will be very useful.

    We checked the path provided for authwl.conf and that's okay. Here is the thrown error:

    oracle.iam.platform.utils.NoSuchServiceException: java.lang.reflect.InvocationTargetException
    at oracle.iam.platform.OIMClient.getServiceDelegate(OIMClient.java:197)
    at oracle.iam.platform.OIMClient.getService(OIMClient.java:174)
    at oracle.iam.platform.OIMClient.loginSessionCreated(OIMClient.java:209)
    at oracle.iam.platform.OIMClient.login(OIMClient.java:136)
    at oracle.iam.platform.OIMClient.login(OIMClient.java:129)
    at com.infotech.tra.organization.RoleAssignment.updateUserAttributes(RoleAssignment.java:274)
    at com.infotech.tra.organization.RoleAssignment.main(RoleAssignment.java:73)
    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.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:56)
    Caused by: java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0 (Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
    at oracle.iam.platform.OIMClient.getServiceDelegate(OIMClient.java:193)
    ... 11 more
    Caused by: oracle.iam.platform.utils.NoSuchServiceException: javax.naming.AuthenticationException [Root exception is java.lang.SecurityException: user: weblogic, could not be authenticated.]
    to oracle.iam.platformservice.api.ClientLoginSessionServiceDelegate. < init >(Unknown Source)
    ... 16 more
    Related: javax.naming.AuthenticationException [Root exception is java.lang.SecurityException: user: weblogic, could not be authenticated.]
    at weblogic.jndi.internal.ExceptionTranslator.toNamingException(ExceptionTranslator.java:42)
    at weblogic.jndi.WLInitialContextFactoryDelegate.toNamingException(WLInitialContextFactoryDelegate.java:788)
    at weblogic.jndi.WLInitialContextFactoryDelegate.pushSubject(WLInitialContextFactoryDelegate.java:682)
    at weblogic.jndi.WLInitialContextFactoryDelegate.newContext(WLInitialContextFactoryDelegate.java:469)
    at weblogic.jndi.WLInitialContextFactoryDelegate.getInitialContext(WLInitialContextFactoryDelegate.java:376)
    at weblogic.jndi.Environment.getContext(Environment.java:315)
    at weblogic.jndi.Environment.getContext(Environment.java:285)
    at weblogic.jndi.WLInitialContextFactory.getInitialContext(WLInitialContextFactory.java:117)
    at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:667)
    at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:288)
    at javax.naming.InitialContext.init(InitialContext.java:223)
    to javax.naming.InitialContext. < init > (InitialContext.java:197)
    at org.springframework.jndi.JndiTemplate.createInitialContext(JndiTemplate.java:114)
    at org.springframework.jndi.JndiTemplate.execute(JndiTemplate.java:86)
    at org.springframework.jndi.JndiTemplate.lookup(JndiTemplate.java:130)
    at org.springframework.jndi.JndiTemplate.lookup(JndiTemplate.java:155)
    ... more than 17
    Caused by: java.lang.SecurityException: user: weblogic, could not be authenticated.
    at weblogic.common.internal.RMIBootServiceImpl.authenticate(RMIBootServiceImpl.java:116)
    at weblogic.common.internal.RMIBootServiceImpl_WLSkel.invoke (unknown Source)
    at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:667)
    to weblogic.rmi.internal.BasicServerRef$ 1.run(BasicServerRef.java:522)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:146)
    at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:518)
    at weblogic.rmi.internal.wls.WLSExecuteRequest.run(WLSExecuteRequest.java:118)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)

    There was incorrect values in the jndi.properties file causing problems. After the correction of the connection of IOM file worked properly.

  • Code to get the data in the child table in composite SOA using the IOM APIs

    Hi all

    I am a new bie to IOM. I have a query related to obtaining data in the child table using the API of the IOM in the task of embeded java SOA composite.

    I've created a workflow that has a form of child of providing service of slef. I created a composite SOA custom also approval. In the composite approval I have embedded java code and I want to get the values entered in the child form using the API IOM inot the java code embeded in composite SOA.

    I tried gettting the child form data by using getChildAttributes(), but I'm getting the following exception.

    The local Exception stack:
    Exception [EclipseLink-7242] (Eclipse - 2.1.3.v20110304 persistence Services - r9073): org.eclipse.persistence.exceptions.ValidationException
    Description of the exception: an attempt was made to navigate a relationship using indirection that had a null Session. This often happens when an entity has a relationship of LAZY not instantiated is serialized and this lazy relationship is crossed after serialization. To avoid this problem, instantiate the LAZY relationship before serialization.
    at org.eclipse.persistence.exceptions.ValidationException.instantiatingValueholderWithNullSession(ValidationException.java:994)
    at org.eclipse.persistence.internal.indirection.UnitOfWorkValueHolder.instantiate(UnitOfWorkValueHolder.java:218)
    at org.eclipse.persistence.internal.indirection.DatabaseValueHolder.getValue(DatabaseValueHolder.java:83)
    at oracle.iam.request.vo.RequestBeneficiaryEntityAttribute.getChildAttributes(RequestBeneficiaryEntityAttribute.java:100)
    to com. CASApproval.main (CASApproval.java:137)

    Please suggest me if I'm following the correct procedure of the child form data or if we can use another approach.

    Can we get the data using formInstanceOperationsIntf.getProcessFormChildData ().

    Thanks in advance for the help.

    Thank you
    PT

    When you're in approvals, there is no form of process data. Process form data would come only when approvals are completed. If you want to read data from the child form of the DataSet (i.e. the form object as in OIM9.x) you can use the RequestService on the id of the request and read the data. Or another approach would be to the child the dataset data value in the payload of the request and read the XML payload in the composite.
    Let me know if you need more information about the second approach. As for the first approach, search through the forums here and you should find my previous posting on how to reach child dataset values using the ask service API.

    -Marie

    Found these for you:
    OIM11G: Way to get values from dataset of the application for approval
    Re: How to get the value of the AD details of payload of SOA user group

  • IOM API Bug

    Hi all:

    I'll have to implement a logic via the API of the IOM, but I realized that the API has a bug.

    I want back the Manager and the Organization of the users of the IOM. I have a method that retrieves the information from the user, but when I want to get the method below User Manager throws the following exception:

    Iterator it = users.iterator ();
    While (it.hasNext ()) {}
    User u = it.next () (user);
    u.getManagerKey ();
    }


    Exception in thread "main" java.lang.ClassCastException: java.lang.Long cannot be cast to java.lang.String
    at oracle.iam.identity.usermgmt.vo.User.getManagerKey(User.java:553)

    the getManagerKey() method fails try to recover Manager key. As the same way the getOrganizationKey() method fails too.

    Anyone who has already faced this problem?

    Thanks in advance

    One of my friends got this problem, but I have no chance to work on it.

    But there is another way to get these values:

    String orgKey = users.get (i).getAttribute("act_key").toString ();
    String orgKey = users.get (i).getAttribute("usr_manager_key").toString ();

    It can help you.

  • IOM API: Unable to change roles with a t3 VIP

    Hi all

    We are facing a problem where we cannot change a user to Admin-> user via a t3 connection, which is defined on a F5 load balancer.

    I was wondering if t3 passes session information in the application that we use AuthenticatedSelfService API calls to achieve this use case without having to log in again. Global trust has been activated among servers.

    Architecture: 3 - IOM Cluster node

    Version of IOM: 11.1.2.2.5

    Use case:

    (1) connection with 1 user with administrator privileges

    2) change of user 2 user admin role

    (3) Logout and now connect with user 2

    (4) try to change 1 user to Admin-> user, receive following error:

    < WARNING > < oracle.iam.platform.authopss.impl > < BEA-000000 > < 26 user does not have permission for deleteAdmin to the scope: 4 AdminRoleMembership = AdminRoleMembership [roleMembershipId = 34, userId = 46, customer = OrclOIMUserAdmin, scopeId = 4]>


    This issue occur if we close 2 on 3 nodes. We already tried-

    env.put (weblogic.jndi.WLContext.ENABLE_SERVER_AFFINITY, "true");  by http://docs.oracle.com/cd/E23943_01/web.1111/e13709/load_balancing.htm#CLUST180

    to ensure that requests are served up to the server managed by IOM even since looks like this Native T3 load balancing is not really load balancing of API calls after that Initial context has been set by

    http://docs.Oracle.com/CD/E24329_01/Web.1211/e24389/LOAD_BALANCE.htm#WLRMI265

    Any suggestions would be much appreciated.

    Hello!

    have you tried to activate t3 tunneling over http?

  • IOM api to run a scheduled task

    Hello

    I use OIM 11.1.2.2.

    I run a scheduled task with the api and a failed idea. I saw this api Thor.API.Operations.tcuserOperationsIntf and that have what I need.

    Can you help me?

    SchedulerService (Oracle Fusion Middleware Java QAnywhere for Oracle Identity Manager), APIs will do it.

    triggerNow

    void triggerNow(java.lang.String jobName) throws SchedulerException, SchedulerAccessDeniedException
    
    Runs the specified job
    Parameters:
    jobName-The work that needs to be triggered
    Throws:
    SchedulerException -when an error occurs in the Quartz engine or Scheduler is not running.
    SchedulerAccessDeniedException -This exception will be thrown if the access permission for the operation is not available for the user

    -Kevin

Maybe you are looking for