Xellerate USR Process Triggers 11g

By default in OIM 11g, process triggers do not fire as the setting of XLUserResource.ProvisionMode is set to DB.
In an earlier discussion thread about "some issues in OIM password generation", it was stated that it is not recommended to change the setting to "JAVA" which re-enables the process triggers.
Why would I not want to change the setting back to "JAVA"?
Thanks.

In 11g, Recon is stored procedure based.
If you change it to Java then it won't utilize new feature of OIM 11g so performance will be down.

Similar Messages

  • OIM 11g R1: Usr Process Triggers Not Working on Concurrent Calls

    Version: 11.1.1.5.7
    I am making two API calls to change a user's password.
    The first call uses the ADMIN to generates a random password for a user.
    The second call uses the user to change his/her own password.
    I am getting an issue where one of the calls does not kickoff the Usr Process Trigger.
    This happens like 1 in 15 tries.
    Is this a bug or am i missing sometime?
    Given below is the test code.
    import java.util.Hashtable;
    import java.util.Random;
    import java.util.logging.Logger;
    import oracle.core.ojdl.logging.ODLLogger;
    import oracle.iam.identity.usermgmt.api.UserManager;
    import oracle.iam.platform.OIMClient;
    import oracle.iam.selfservice.self.selfmgmt.api.AuthenticatedSelfService;
    public class Test
        public static final Logger logger = ODLLogger.getLogger(Test.class.getName());
        public static void main(String args[]) throws Exception
            String authwlConfigPath = "/home/oracle/Oracle/Middleware/Oracle_IDM1/designconsole/config/authwl.conf";
            System.setProperty("java.security.auth.login.config", authwlConfigPath);
            String ctxFactory = "weblogic.jndi.WLInitialContextFactory";
            String serverURL = "t3://localhost:14000";
            Hashtable env = new Hashtable();
            env.put(OIMClient.JAVA_NAMING_PROVIDER_URL, serverURL);
            env.put(OIMClient.JAVA_NAMING_FACTORY_INITIAL, ctxFactory);
            OIMClient oimClient = new OIMClient(env);
            OIMClient userOimClient = new OIMClient(env);
            //Admin changes User Password
            oimClient.login("xelsysadm", "Password1".toCharArray());
            UserManager usrMgrOps = oimClient.getService(UserManager.class);
            String generatedPassword = "a" + generateRandomUserPassword(30);
            System.out.println("Generated Password: " + generatedPassword);
            usrMgrOps.changePassword("tstark", generatedPassword.toCharArray(), true);
            //User changes their own Password
            userOimClient.login("tstark", generatedPassword.toCharArray());
            String myPassword = "Password20";
            AuthenticatedSelfService authOps = userOimClient.getService(AuthenticatedSelfService.class);
            authOps.changePassword(generatedPassword.toCharArray(), myPassword.toCharArray() , myPassword.toCharArray());
            System.out.println("My Password: " + myPassword);
            oimClient.logout();
            userOimClient.logout();
        public static String generateRandomUserPassword(int length){
            if(length < 1)
                throw new IllegalArgumentException("length < 1: " + length);
            char[] characters = new char[62];
            char[] randomUserPassword = new char[length];
            Random random = new Random();
            for (int i = 0; i < 10; ++i)
                  characters[i] = (char) ('0' + i);
            for (int i = 10; i < 36; ++i)
              characters[i] = (char) ('a' + i - 10);
            for (int i = 36; i < 62; ++i)
              characters[i] = (char) ('A' + i - 36);
            for (int i = 0; i < randomUserPassword.length; ++i)
                randomUserPassword[i] = characters[random.nextInt(characters.length)];
            return new String(randomUserPassword);

    Set the "Off-line" flag to true in your "Change User Password" process task.

  • Process Triggers for USR_PASSWORD

    Hi All,
    I have wriiten a custom code to update a field when the user password in OIM is changed. I have created an Xellerate User Process Task and mapped it as decode against "USR_PASSWORD" in the lookup table - Lookup.USR_PROCESS_TRIGGERS.
    Also, I have set the system property(Xellerate User resource provision mode) value from "DB" to "JAVA".
    When XELSYSADM changes the password of the user, the process task is triggered. But when the user tries to change his password, the code doesnot trigger.
    Please let me know how to achive this.

    What does your task on the Xellerate User do? Also, what does your log say when the end user resets their password? I wonder if there is a permission issue preventing the task for running.
    If you are just propagating the password, i suggest you put the task on your resource instances, and not the xellerate user.
    Another option you have is to create a PostProcessor Event Handler on the user. Just put an if statement to see if the orchestration parameters contain "usr_password" and the operation is modify. Then put your code here to perform your tasks.
    -Kevin

  • Dependency in Xellerate User process task

    I create a process task in xellerate user process and in de dep table create de dependency, to execute before the add user task, but the task never start. I modify to execute before System Validation with the same result.
    The task is not conditional, allow multiple instances and required for termination.
    Why the task don't start, is this normal with oim11g?

    If you are using OIM 11g you may want to look at using an event handler to manage such user process customizations rather than Xellerate user adapters. These are the newest way of handling such customizations on user objects and I think may give you better compatibility going forward. In your case a pre-process handler seems appropriate. Refer to the OIM developers guide for details.

  • How to catch rollback in Disable user process task in Xellerat User Process

    hi ...
    I want to send an email to manager group of the user, once the user is disabled from the OIM (when end date is reached). I created an adapter and attached it to the ‘Changed User Disabled’ process task in the ‘xellerate user provisioning’ process and add a new row in the “Lookup.USR_PROCESS_TRIGGERS” Lookup definition. (code key: USR_DISABLED and Decode: Change User Disabled ). This adapter executes only when the user status is equal to “disabled”.
    This works correctly when the OIM user disabling process execute without any errors. But sometimes while disabling the user it gives an error (“resource is not configured properly”) and rolls back everything and make the user active. But at the same time my adapter runs and sends the mail informing user is disabled but yet user is active.
    My problem is how can I find or catch rolls back transaction in the “Disable User” process task (which is in “Xellerate User” process”) ??? If I can get to know that a roll back is occurred then I can send a mail to OIM administrator, informing that user disable process is failed.
    Can someone please help me to find this..
    Thanks in advance :)
    Regards,
    i.k.

    Hi Rajiv,
    Error occurs while disabling the user due to resource configuration problems. ( error message is : DOBJ.RESOURCE_NOTCONFIGURED_PROPERLY -- One or more provisioned resource is not configured properly) In this case i know the problem and how to solve it. But what I want to know is in any case if disable process get fail and if things get roll back again, then how can I track that situation and send a mail to OIM Admin(informing the failure) instead of sending a mail to user managers saying that user account has been disabled.
    I think now my problem is clear…. Can u please help me to find this.
    Regards,
    i.k.

  • Can we add process tasks to Xellerate User process?

    Hi,
    Can I add a process task- unconditional one to "Xellerate User" process definition?
    I want certain fields to be populated in User Profile Form, when the user is created/updated.
    Please advice

    I could manage to trigger the Xellerate User Process Task and it runs fine, but when trying to update the OIM user field, it throws the below error:
    oracle.iam.platform.authz.exception.AccessDeniedException: You do not have permission to modify the [USR_UDF_IPWD] attributes of the user with user key null.
    at oracle.iam.identity.usermgmt.impl.UserManagerImpl.modify(UserManagerImpl.java:830)
    at oracle.iam.identity.usermgmt.impl.UserManagerImpl.modify(UserManagerImpl.java:971)
    usrManager.modify("User Login",sUserLogin.toString().toUpperCase(), new User(null, usrDetails));
    usDetails hashmap contains the key, value pair which needs to be updated.

  • Xellerate User Process Tasks

    Hi experts,
    When I see AD user or iPlanet User process definition, it contains tasks for Update attributes (like first name, lastname,telephone...). But when I see Xellerate User Process, it doesn't have it. So how does attributes update happens in OIM? Also, there is nothing in Add User task in Xelerate User. I mean no adapter integration, then how does it go?
    Please explain me or point me to approp. url. Thanks.

    User attibute update via trusted reconciliation .
    What you see in AD Process definition are the task responsible for pushing the info from OIM to AD Target.
    For OIM user , trusted reconciliation should bring in all the updates
    Thanks
    Suren

  • BPM Process triggered externally

    I have created a BPM process and I am able to test it from NWA -> Process repository. But When I am testing from WS Navigator then I am getting an error like-> Web Service returned an error. Fault Code: "(http://schemas.xmlsoap.org/soap/envelope/)Server" Fault String: "Process start has been triggered."
    But my process is started fine. Actualy I want to access this WSDL URL from other applications. Can anybody help me?
    Thanks,
    Somnath

    Hi Somnath,
                       u will get the fault message , when u test the services in ws navigator for trigerring the BPM Process. check this article for Starting the BPM process
    [http://help.sap.com/saphelp_nwce711/helpdata/en/59/b2af840e67514f8e8973d97d494c9b/content.htm]
    Hope it helps
    Thanks and regards

  • Migrating 10g Human Task Bpel process to 11g - No task flow

    Hi All,
    I have migrated a bpel process that has a human task to 11g. I need to stipulate the uri so that it will show on the worklist.
    Apparently there is a file in the WEB-INF folder that i must reference. I went into the folder and there is many xml files(adfc-config.xml,faces-config.xml,trindad-config.xml, web.xml, weblogic.xml) there is no file generated from the migration. Hence how do i go about to get the correct uri and for the worklist to show.
    Below is an incomplete uri
    /workflow/ExceptionHandlerTaskForm//faces/adf.task-flow?_id=ExceptionHandler_WF_1_TaskFlow&_document=WEB-INF/

    failed to get solution

  • How to identify default version for a process in 11g EM Console

    Hi,
    In 10g, we had a "star" next to the default version in the bpel console to identify the default process.
    How does it work in 11g...how to identify the default process quickly.
    Thanks,
    Amit

    ok..i got something...want to know if this is the best method..
    if one clicks on soa-infra, on the right pane, it shows all deployed composites (across partitions).
    Here it is showing a small green circle just before the default version.
    Is this the only way...actually i was expecting the same behavior when we select a particular partition.

  • Processing Triggers - part 2

    Hello,
    I would like to solve the following problem using triggers:
    I need to change the DeptNo for all Emps working for Dept 20 to 50;
    Trigger (or triggers) has to create Deptno 50 and copy the data from DeptName (dname) and DeptLocation (loc) to new row Where DeptNo is 50;
    After that, the old DeptNo 20 has to be deleted from Dept.
    The following triggers works fine:
    -- step 1 --
    Create or Replace Trigger TrigEmp
    Before Insert or Update On Emp
    For each row
    Begin
    INSERT INTO dept(deptno)
    SELECT :NEW.deptno
    FROM dual
    WHERE NOT EXISTS (SELECT NULL
    FROM dept
    WHERE deptno = :NEW.deptno);
    End;
    -- step 2 --
    Create or Replace Trigger TrigDept
    Before Insert or Update of Deptno On Dept
    For each row When(new.Deptno=50)
    Begin
    :New.dname := 'Sunshine';
    :New.loc := 'Hawaii';
    End;
    The problem I have with step 3 because I have to perform DML (Delete) operation on Dept withing a trigger and I get "Mutating" error again...))
    Is there any way to solve it?
    Thank you for your consideration
    P.S. I am still using 9i

    I found the solution anyway!
    Here is the code:
    Create or Replace Trigger TrigEmp
    Before Insert or Update On Emp
    For each row
    Begin
    INSERT INTO dept(deptno)
    SELECT :NEW.deptno
    FROM dual
    WHERE NOT EXISTS (SELECT NULL
    FROM dept
    WHERE deptno = :NEW.deptno);
    End;
    Create or Replace Trigger TrigDept
    Before Insert or Update of Deptno On Dept
    For each row When(new.Deptno=50)
    Begin
    :New.dname := 'Sunshine';
    :New.loc := 'Hawaii';
    End;
    Create or replace Procedure delete_dept
    (Message in varchar2) is
    BEGIN
    DBMS_OUTPUT.PUT_LINE(Message);
    END;
    Create or replace trigger TrigDept2
    After insert or update of DeptNo on Dept
    For each row When(new.Deptno=50)
    Begin
    delete_dept(' ! Message for DBA - All data copied into new Dept - Deptno 20 deleted !');
    End;
    Create or replace trigger TrigDept3
    After insert or update on Emp
    For each row When(old.Deptno=20)
    Begin
    delete from dept
    where deptno=20;
    End;
    runs fine and tables are not mutating anymore...!!
    the idea was only to learn how to create triggers, nothing more...
    I know how to create triggers using form builder in developer suite but it is always nice to understand what processes run under when you press buttons...))
    thank you for help...

  • Process triggering wrong time ( Urgent ! )

    We created a process and we want to trigger it when a button process.
    Process Name : PROCESS_CREATE_ORDER
    Button Name : P_CREATE_ORDER
    In Conditional Processing part of PROCESS_CREATE_ORDER
    When Button Pressed (Process After Submit When this Button is Pressed) attiribute set P_CREATE_ORDER button.
    But process is triggering every time page submitted.
    So it cause errors.
    we are using HTMLDB 1.6 version.

    Ali,
    Just taking a quick look at one of my pages, I have many pages that do similar things, where I have a button to perform a process, but a conditional process (depends on which button is preesed).
    On the process page, I also specify under the "Conditional Computations", the "Condition Type" - "Request = Expression1", and then then under the "Expression1" field, I specify the button name (in your case it would be "P_CREATE_ORDER" (no quotes).
    Right off hand, that's about all I can think of, other than trying to create another process that does nothing. It seems like your process is not conditional to be executing every time the page is submitted.
    Bill Ferguson

  • Load Process in 11g

    Hi,
    How do you model a load process in BPM 11g using the new BPMN palette. The load process queries an external oracle database table and creates tasks for the end users in the workspace. Each task has a user interface that will display the data passed in.
    thanks.

    OracleStudent,
    I am not going to recommned to fiddle with your redo log size and that will be my last option if I have to.
    number of record = 8413427
    Txt fiel size = 3.59GB
    columns = 91
    you said remote server, is that the case? i've have no idea could you tell mean what is meaning of remote server?? plz tell me how can i check this???? i've recenly join this campany i asked to developer who show me the code where he is using direct = ture. plz help me this process of loading is very annoying for me. plz tell what i need to check
    Couple of questions.
    How are you loading this data? You mentioend using some .NET application my question, is this .NET applicaiton resides on the same server as your database or does it run from a different machine. Also if you are invoking sqlldr (as you mentioned), please post your sqlldr control file. Also during the load it should be generating a log file , check and look for following line to verify and confirm you are using direct path.
    Number to load: ALL
    Number to skip: 0
    Errors allowed: 50
    Continuation:    none specified
    Path used:      Direct2. Do you have any indexes on this table, if yes how many and what type? I mean regular btree or bitmap or both?
    3. Does this table in logging or nologging state?
    Regards

  • Scheduling BPEL Process in 11g using native SOA Suite functionatliy

    I have spent a significant amount of time reviewing documentation and the forums and have been unable to find a definitive answer on the ability to schedule a BPEL process in SOA Suite 11g.
    A similar question was asked here with no response:
    BPEL(SOA11G) and Quartz
    In SOA Suite 10.1.3.x it is discussed frequently:
    http://www.oracle.com/technology/tech/soa/soa-suite-best-practices/soa_best_practices_1013x_drop1.pdf
    Re: BPEL Adapters & Scheduling
    It appeared to be an actual feature in one of the technology previews:
    http://biemond.blogspot.com/2008/01/scheduling-processes-in-soa-suite-11g.html
    Can anyone provide an definitive answer on whether a BPEL process can be scheduled using functionality native to SOA Suite 11g. I understand there are external workarounds such as calling BPEL process from DBMS_JOB, using external scheduling framework etc. I am interested in solutions which are native to the SOA Suite itself if there is such a solution.
    If there is no definitive answer I will open a support case and post the results here for the benefit of the group.

    Hi-
    You can refer to the below link.
    http://darwin-it.blogspot.com/2008/01/how-to-create-bpel-job-scheduler.html
    I have not personally tried but I think it should work.
    PLease let us know how it goes.
    Thanks,
    Dibya

  • Secure a BPEL process in 11g with username/pass

    Hi All,
    How to secure a BPEL process with username and password.

    As mentioned in my previous post and link I provide this is done in the Enterprise Manager.
    In 11g we have composites so more often than not you want the composite to be secure then you pass the credentials to the other components, e.g. BPEL.
    1. Go to Enterprise Manager
    2. Click on the composite that has the BPEL process
    3. Click the policy Tab
    4. Select the BPEL process in the Attach To/Detach From" drop down. If BPEL is not the component that invokes the composite then select that component.
    5. Select wss_username_token_service_policy, click attach
    6. If in step 4 you have a mediation step in front of your BPEL process then select your BPEL process in the drop down and attach the policy wss11_saml_token_with_message_protection_client_policy.
    The user name password is taken from the WLS authentication, so this will be something like weblogic/welcome1
    hope this helps.
    James

Maybe you are looking for

  • OBIEE EXECUTE PHYSICAL sql as Data Model Query

    The following SQL was generated using OBIEE. I'd like to use it as the SQL query for my data model. It works fine it I hard code all of the values into the where clase. However when I attempt to pass parameter values (:ACCOUNTING_PERIOD & :FISCAL_YEA

  • Both DVD drives open in  bootcamp

    I'm running bootcamp on a MacPro with dual DVD's. When I use the keyboard to open the top DVD drawer, BOTH of them open, first the top, then the bottom. That's going to make it inconvenient to use the DVD drives separately. BTW, neither of them close

  • Special G/L indicator X is not defined for down payments (Message no. F505)

    {{{ Special G/L indicator X is not defined for down payments Message no. F5053 The specified special G/L indicator is not classified as "down payment" or not listed in the list of the target special G/L indicators for indicator "F".}}} *I have Create

  • PDF-File in Smartform Window

    Hi Experts, is there any chance to include a pdf-file in a smartforms window? We don't want to attach a pdf-file as second page but need to show the content of a pdf-document in a window. Regards Nicola

  • Need help. Speech Analysis tool

    Hello. The problem comes when I try to use the " Speech Analysis" tool in Adobe Premier CC . In the process of export , the Media Encoder uses the .AIFF format and not in the format .CIT And in Adobe Premier shows no text Metadata section . I need he