Request Data Validator is not working

Hi Guys,
I am trying to invoke a plugin while submitting a request through CATALOG in OIM 11gR2. The user case i am trying to achieve is - (1) User/Admin login to OIM and go to CATALOG option (2) Select an Application instance, fill the values in the form and checkout (3) While submitting this validator should invoke which will validate the request data and throw exception if any.
For this i was thinking to utilize the plugin for oracle.iam.request.plugins.RequestDataValidator "This is used for custom validation of request data after submission"
My plugin.xml looks like
<?xml version="1.0" encoding="UTF-8"?>
<oimplugins>
<plugins pluginpoint="oracle.iam.request.plugins.RequestDataValidator">
<plugin pluginclass="com.test.oim.TestRequestValidator" version="1.0" name="TestReqValidator">
</plugin>
</plugins>
</oimplugins>
And i am using simple code as below
package com.test.oim;
import oracle.iam.request.exception.InvalidRequestDataException;
import oracle.iam.request.plugins.RequestDataValidator;
import oracle.iam.request.vo.RequestData;
+public class TestRequestValidator implements RequestDataValidator {+
+public TestRequestValidator() {+
super();
+}+
+public void validate (RequestData reqDta) throws InvalidRequestDataException{+
System.out.println("************************************************");
System.out.println("***Justification***" reqDta.getJustification());+
throw new InvalidRequestDataException(new Exception("Invalid User"));
+}+
+}+
My plugin directory contains the plugin.xml file and the jar file (with above class) under lib directory. I placed the zip file under OIM_HOME/Plugin directory and even restarted the servers.
However this code is not invoking and i can successfully create the request (i tried from user and admin both). Please advise if anyone has any idea. Thanks

Hi Duncan,
I have mapped the DataSet validator element in my plugin.xml file
+<?xml version="1.0" encoding="UTF-8"?>+
+<oimplugins>+
+<plugins pluginpoint="oracle.iam.request.plugins.RequestDataValidator">+
+<plugin pluginclass="com.test.oim.OIMREQValidate" version="1.2" name="OIMREQValidate">+
+<metadata name="Data Validator">+
+<value>AssignRolesDataSet|ModifyUserDataset</value>+
+</metadata>+
+</plugin>+
+</plugins>+
+</oimplugins>+
Still my request data validator is not getting invoked. I can successfully create the request. (Per this validator every request should fail and logs should getting logged). My validate method code is below
+public void validate (RequestData reqDta) throws InvalidRequestDataException{+
RequestLogger.LOGGER.logp(Level.WARNING, "OIMREQValidate", "validate", "CALLING THE CUSTOM PLUGIN");
System.out.println("***Justification***" reqDta.getJustification());+
throw new InvalidRequestDataException(new Exception("Invalid User"));
+}+

Similar Messages

  • Getting error when view - Requested data type does not match with existing

    I have the siebel web service
    In the BI publisher as mentioned in the 'Siebel_BI_Publisher_Integration_Concepts.pdf', I have imported the siebel web service
    BI can recognize the 'Web service' and methods.
    I have created the paramters. The data type is 'String'
    When I try to view the report using the BI publisher, I am getting teh following error in th UI
    "Requested data type does not match with existing data type"
    This is the first time I am using BI publisher to call the Siebel web service. I don't know what this error means
    I don't know whether any log file generated wit the details of this erro message
    Any help is much appriciated
    Thanks,
    Kavitha

    Hi all,
    have you find a fix for this issue? Im facing the same situation, using Complex type, and String data type both in the service and Bi publisher. We are consuming CC&B services, and we have noticed this error appears when BIPublisher is running on WebLogic (10.3) but it does not appear when BIPublisher is running on OC4J , of course running the same report on both application servers.
    Any idea?
    Thanks a lot, regards
    Nestor

  • Date parameter does not work in SharePoint 2010 report using SQL 2008 Server Reporting Service

    Here is the settings:
    SharePoint 2010 with SQL server 2008 reporting services configured
    When create a report for a SP list using SQL server report builder (3.0) the date parameter does not work.
    The data parameter is set as "date and time" type and field name equals the col name in the SP list
    When run the report, the whatever dates I select, the result is always the same, so the parameters do not take any effect.
    Is any step missing?
    Thanks for any advice !

    Hi ,
    How did you configure you "date and time" type parameter and field name equals the col name in the SP list?
    Have you tested if other type parameter worked?
    Have you tried typing the date format as 20140722 in your date parameter filed before run the report?
    http://whitepages.unlimitedviz.com/2012/02/using-sharepoint-filters-with-reporting-services-parameters-for-personalized-reports/
    Thanks,
    Daniel Yang
    Forum Support
    Please remember to mark the replies as answers if they help and unmark them if they provide no help. If you have feedback for TechNet Subscriber Support, contact
    [email protected]
    Daniel Yang
    TechNet Community Support

  • Request to post Icloud not working locations. for 2 days almost from Ventura CA. I think they are not being truthful about th eamount of folks affected!

    request to post Icloud not working locations. for 2 days almost from Ventura CA. I think they are not being truthful about the percentage of folks affected!
    and what's with the minimalist response? We're working on it for 2 days? You can do beter than that for exsisting loyal customers can't you?

    I just spoke to a Support person with Apple.  I got the same answer, "We Don't Know", "but they are working on it...Blah, Blah.  I too live in Ventura, and have been without email since yesterday approx. 3:00 pm.
    The guy said, it's the same if you brought your computer into the shop.  We have to determine if it's hardware, or software, then fix the problem.
    Well, What about a BACK UP SERVER?  No real answer to that one.  Just, "Thanks, for your Patience."
    This really blows!!!

  • Pie chart with two measures and date dimension navigation not working

    Hi Experts,
    Pie chart with two measures and date dimension navigation not working. Any help is appreciated.
    Thanks
    V

    Hi Deepak,
    I had time dimension in the RPD.
    I have stacked bar chart with same time dim like year & month in the report. when I go to legand and set navigation it is working fine. But not with pie chart.
    I am not not sure what is the problem. When I click on Pie chart it is not navigating to the target report. Can it be any other issues..???

  • Unable to log into iCloud because old email pops up requesting password. Password not working and unable to receive reset

    I changed the main email on my Appleid a few months back. Everything worked fine until uppgrading to iOS7 on my phone. I am now unable to log into iCloud because the old email pops up and requesting password which is not working. I cannot rest the password because my old email is unvalid as I have changed network provider. The id works fine on Appstore and iTunes so its only iCloud that making trouble.
    Any suggestions to remedy this problem?

    I'm also experiencing the same issue.
    I've had to reset my password 3 times in the last 3 days.
    At first, I couldn't get my email. I sweated it out for 12 hours, reset my password and I was good to go again. 48 hours later, I ran into the same issue. Only problem is, not only do I get the 'Incorrect username or password' on my device, but my iCloud.com login no longer works. so now I can't read my messages on the web OR on my device/computer.
    I have went to appleid.apple.com and reset my password there: no luck.
    I have reset the settings on my device: no luck.
    I have Erase and Installed iOS 6.1.2: no luck.
    I have restored my device back to factory settings: no luck.
    I have performed a DFU restore: no luck.
    This is my main account for, well everything.

  • Oracle date parameter query not working?

    http://stackoverflow.com/questions/14539489/oracle-date-parameter-query-not-working
    Trying to run the below query, but always fails even though the parameter values matches. I'm thinking there is a precision issue for :xRowVersion_prev parameter. I want too keep as much precision as possible.
    Delete
    from CONCURRENCYTESTITEMS
    where ITEMID = :xItemId
    and ROWVERSION = :xRowVersion_prev
    The Oracle Rowversion is a TimestampLTZ and so is the oracle parameter type.
    The same code & query works in Sql Server, but not Oracle.
    Public Function CreateConnection() As IDbConnection
    Dim sl As New SettingsLoader
    Dim cs As String = sl.ObtainConnectionString
    Dim cn As OracleConnection = New OracleConnection(cs)
    cn.Open()
    Return cn
    End Function
    Public Function CreateCommand(connection As IDbConnection) As IDbCommand
    Dim cmd As OracleCommand = DirectCast(connection.CreateCommand, OracleCommand)
    cmd.BindByName = True
    Return cmd
    End Function
    <TestMethod()>
    <TestCategory("Oracle")> _
    Public Sub Test_POC_Delete()
    Dim connection As IDbConnection = CreateConnection()
    Dim rowver As DateTime = DateTime.Now
    Dim id As Decimal
    Using cmd As IDbCommand = CreateCommand(connection)
    cmd.CommandText = "insert into CONCURRENCYTESTITEMS values(SEQ_CONCURRENCYTESTITEMS.nextval,'bla bla bla',:xRowVersion) returning ITEMID into :myOutputParameter"
    Dim p As OracleParameter = New OracleParameter
    p.Direction = ParameterDirection.ReturnValue
    p.DbType = DbType.Decimal
    p.ParameterName = "myOutputParameter"
    cmd.Parameters.Add(p)
    Dim v As OracleParameter = New OracleParameter
    v.Direction = ParameterDirection.Input
    v.OracleDbType = OracleDbType.TimeStampLTZ
    v.ParameterName = "xRowVersion"
    v.Value = rowver
    cmd.Parameters.Add(v)
    cmd.ExecuteNonQuery()
    id = CType(p.Value, Decimal)
    End Using
    Using cmd As IDbCommand = m_DBTypesFactory.CreateCommand(connection)
    cmd.CommandText = " Delete from CONCURRENCYTESTITEMS where ITEMID = :xItemId and ROWVERSION = :xRowVersion_prev"
    Dim p As OracleParameter = New OracleParameter
    p.Direction = ParameterDirection.Input
    p.DbType = DbType.Decimal
    p.ParameterName = "xItemId"
    p.Value = id
    cmd.Parameters.Add(p)
    Dim v As OracleParameter = New OracleParameter
    v.Direction = ParameterDirection.Input
    v.OracleDbType = OracleDbType.TimeStampLTZ
    v.ParameterName = "xRowVersion_prev"
    v.Value = rowver
    v.Precision = 6 '????
    cmd.Parameters.Add(v)
    Dim cnt As Integer = cmd.ExecuteNonQuery()
    If cnt = 0 Then Assert.Fail() 'should delete
    End Using
    connection.Close()
    End Sub
    Schema:
    -- ****** Object: Table SYSTEM.CONCURRENCYTESTITEMS Script Date: 1/26/2013 11:56:50 AM ******
    CREATE TABLE "CONCURRENCYTESTITEMS" (
    "ITEMID" NUMBER(19,0) NOT NULL,
    "NOTES" NCHAR(200) NOT NULL,
    "ROWVERSION" TIMESTAMP(6) WITH LOCAL TIME ZONE NOT NULL)
    STORAGE (
    NEXT 1048576 )
    Sequence:
    -- ****** Object: Sequence SYSTEM.SEQ_CONCURRENCYTESTITEMS Script Date: 1/26/2013 12:12:48 PM ******
    CREATE SEQUENCE "SEQ_CONCURRENCYTESTITEMS"
    START WITH 1
    CACHE 20
    MAXVALUE 9999999999999999999999999999

    still not comming...
    i have one table each entry is having only one fromdata and one todate only
    i am running below in sql it is showing two rows. ok.
      select t1.U_frmdate,t1.U_todate  ,ISNULL(t2.firstName,'')+ ',' +ISNULL(t2.middleName ,'')+','+ISNULL(t2.lastName,'') AS NAME, T2.empID  AS EMPID, T2.U_emp AS Empticket,t2.U_PFAcc,t0.U_pf 
       from  [@PR_PRCSAL1] t0 inner join [@PR_OPRCSAL] t1
       on t0.DocEntry = t1.DocEntry
       inner join ohem t2
       on t2.empID = t0.U_empid  where  t0.U_empid between  '830' and  '850'  and t1.U_frmdate ='20160801'  and  t1.u_todate='20160830'
    in commond promt
      select t1.U_frmdate,t1.U_todate  ,ISNULL(t2.firstName,'')+ ',' +ISNULL(t2.middleName ,'')+','+ISNULL(t2.lastName,'') AS NAME, T2.empID  AS EMPID, T2.U_emp AS Empticket,t2.U_PFAcc,t0.U_pf 
       from  [@PR_PRCSAL1] t0 inner join [@PR_OPRCSAL] t1
       on t0.DocEntry = t1.DocEntry
       inner join ohem t2
       on t2.empID = t0.U_empid  where  t0.U_empid between  {?FromEmid} and  {?ToEmid} and t1.U_frmdate ={?FDate} and  t1.u_todate={?TDate}
    still not showing any results..

  • My international data roaming is not working in china, why?

    I am currently traveling in mid-east china, but my data roaming is not working. it shows good single bar, but when I try to receive emails (from gmail or AOL account), it gives me error messages. it is very frustrating. it has been 3 days that I can't retrieve emails. I do have voice service though.

    You might need to contact VZW for some trouble shooting help. Unless you are using a 3rd party simcard...then you might have to check with them to make sure their isn't an issue.

  • Use member on data form does not work

    Hello,
    "Use member on data" option does not work on composite Data Form. Business rule associated with composite form.
    Who is resolve this problem?
    Version hyperion: 11.1.2
    Thanks

    I don't have a solution for you but more steps to solve the problem
    You are ultimately on the right track in some ways but break it down into it's components.
    The problem could like in the business rule, the form connection, the variables, even the order of operations could all be in play.
    So I would strip this baby down to its bare bones then build it back up.
    1) Run the business rule. Each one separately and only after the previous ones is complete without variables and without touching the form
    Is it successful: go to 2
    If it isn't successful: trouble shoot the calc and or try running in EAS natively to see if that gives you ideas
    2) Run the calc outside the form but with variables included. Did it prompt you correctly.
    Is it successful: go to 3
    If it isn't. What is wrong with the variable
    3) Now attach it to the form but don't hide the prompts
    Still good go to 4
    4) hide the prompts and run on save
    And if it fails on step four then it's not picking up the right variables in the prompt. And you need to look at why it wouldn't grab the right item.
    This will isolate your problem for you and give you steps to fix it. Ultimately 99% of the time something did change in the structure for example that is impacting the calc. And when you isolate the problem this will reveal itself quite quickly.

  • I have iPhone 4 and I update it to iOS 7 and when I try to start the personal hotspot it crashed and for sometime my cellular data was also not working then allot a sudden the personal hotspot icon disappeared from my settings

    I have iPhone 4 and I update it to iOS 7 and when I try to start the personal hotspot it crashed and for sometime my cellular data was also not working then allot a sudden the personal hotspot icon disappeared from my settings.
    Has anyone faced a problem like this!!!

    No. If you go Settings App > General > Reset > "Erase All Content and Settings", you will have the same iOS that was on the iPhone when you tapped the Erase button. If you believe your iPhone is Jailbroken, then this will not work. If you use iTunes on computer, this will put iPhone to current iOS which is iOS 7.0.2

  • Why Strict validation is not working

    Hi,
    Why the Strict validation is not working in the XMLDB. I validated successfully the same file from XML Spy. The error in Oracle is:
    begin
    for x in (select warehouse_spec from xml_validate where warehouse_id=51) loop
    x.warehouse_spec.schemaValidate();
    end loop;
    end;
    ORA-31154: invalid XML document
    ORA-19202: Error occurred in XML processing
    LSX-00011: internal error: LsxvPushCandidate array overflow
    ORA-06512: at "SYS.XMLTYPE", line 345
    ORA-06512: at line 3
    Thanks in advance
    Rizly

    The error is LSX-00011: internal error: LsxvPushCandidate array overflow
    This might be helpfull
    Error in STRICT Validation
    Regards,
    Remy

  • Since last week my date & time have not worked on my 5c. The date & time are constantly wrong. I've shut down, doesn't work. Set it automatically, doesn't work. I don't get texts or calls when it's sleeping. Any suggestions?

    Since last week my date & time have not worked on my 5c. The date & time are constantly wrong. I've shut down, doesn't work. Set it automatically, doesn't work. I don't get texts or calls when it's sleeping. Any suggestions?

    try a reset.
    Hold the home & power buttons down simultaneously until you see the Apple logo appear.
    Note: no data will be lost.

  • Droid Razr Maxx HD Data & SMS does NOT work in South Korea

    If you are going to South Korea this phone only operates as a "dumb phone" for phone calls ONLY. Data & SMS does not work at all. I contacted Global Support daily for one week with no resolution! I received conflicting information with 2 support folks telling me that the fix was to do a factory reset. So I reluctantly did this and it did not fix anything. It only wasted my time especially re-installing all my apps, etc. Then 4 support folks told me that you should never do this out of the country!! Anyway the last person i spoke to which was a network technician was very honest. He told me that I was "SOL" and he had no idea how to fix this problem. He said that he would have to get some teams together to try to fix the problem. And I was told that I would receive an email with an update. And of course I have not received any email of correspondence from Verizon. Very frustrating...

    I found a solution. Okay so with the most recent update Verizon made the switch from sending text messages over their 1x network and moved them to their LTE (and possibly 3g) network, hence the reason they are sending so much faster. Today I was in a classroom that is underground and has terrible reception and noticed that I was getting delivery reports again but that my texts were sending slower, like they used to. I dug around in the phones programing menu and found a new option call "MO SMS over IMS" and it was enabled. Disabling it switches your texts back onto the old 1x network. So if you choose to make the switch, your delivery reports will come back but sending will go back to being a little slower. To get to this menu open up your dialer and type in ##7764726. Next hit send and when prompted with a password type in 000000 and hit verify. Scroll down to SMS/MMS settings and select it. Next scroll to the bottom, select "MO SMS over IMS", and disable it. Now your good delivery reports back!

  • Publishing HTML(Page content) field required field validation is not working

    The required field validation is not working on Site Column of type "Full HTML content with formatting and constraints for publishing". I found a link i.e.
    https://social.msdn.microsoft.com/Forums/office/en-US/7b544aae-2562-4b8e-8e5b-36a1d47a4d14/publishing-htmlpage-content-field-required-field-validation-is-not-working?forum=sharepointdevelopment
    which tells this is a hot fix in July 2014 CU . Can anyone help me with what all Fixes are there in July 2014 CU. So that I can update only if it required!
    Or any other alternative where I can use the required field validator on "Full HTML content with formatting and constraints for publishing" column type?

    You could add a scripteditor webpart on the newform.aspx page and add client side validation using jQuery.
    $(document).ready(function()
     var fname = document.getElementById('fname').val();
     var lname = document.getElementById('lname').val();
     var age = document.getElementById('age').val();
     /*Do not know how to get element by class and that too, two different type. Have to check if user chose anything or not*/
      $("#submit").click(function()
       if(fname.length === 0)
        alert("Please input a first name");
       else if(lname.length === 0)
        alert("Please input a last name");
       else if(age.length === 0)
        alert("Please input an age");

  • Request Scope for portlets? Sharing data tutorial does not work for portlet

    I created 2 identical applications, one that was a regular JSF web app, and one a JSR168 portlet. By following the "Sharing Data Between Two Pages" tutorial, I can get this technique to work without a problem in the web app, but the portlet (deployed locally using the pluto server) does not work. What is the difference between a regular app and a portlet app?
    This shows that portlets apparently handle scope much differently than other applications, so any information relating to this would be helpful to pass along.

    Portlet Life Cycle Differences
    A portlet page is the same as a web application page in the Creator 2 application
    model with differences only in the page life cycle. To best understand the life
    cycle differences, you must first understand how a portal interacts with a portlet.
    This interaction between portals and portlets is defined by the JSR-168 Portlet
    specification. Typically a portal display in the web browser shows multiple
    portlets. That is, when the portal page is displayed, there are actually multiple
    portlets displaying or rendering their content. The job of the portal is to manage
    how these portlets are displayed. Internally, the portal is responsible for telling
    each portlet two things:
    1. When to display itself
    2. If there has been an action, such as a button press, performed inside that
    portlet.
    When a portal wants portlets to display their contents, the portal sends a render
    request to each portlet showing in the portal. If one of the portlets showing in the
    portal has a button tied to an action request, when that button is pushed, the
    portal fires an action request for that portlet. In addition, the portal generates a
    render request for the portlet and all other portlets on the page. You should note
    that the portal implementation fires both action and render requests for each
    action method on a portlet showing in the portal. The implication of this
    interaction means the portlet page being rendered can not make assumptions
    about the state of the values to be shown. Unlike a normal web application page,
    a portlet page can't assume that the page being rendered in the Render Response
    phase is the same page that was built in Restore View. If a portlet wants to
    maintain state across repeated render requests, the portlet must use the session
    bean to store stateful information.
    The main point to remember is a portlet page must always be prepared to render
    it's values from scratch or session data. This implies you should never bind
    portlet page UI components to page bean properties or request bean properties.
    Also, you should never rely on page bean instance variables that might be set
    during an action event.
    Hope this helps.

Maybe you are looking for

  • How to use images

    I need to use some pics in an application I'm developing, but I don't know how to. Can you name some libraries that I can use to display GIF files?

  • How to edit a CS5 photoshop ext in configurator for CS6

    I am very new to ext manager and to configurator. I have a "homemade" ext panel, done for CS5. It is shown in both EXT MGR for CS5 and for EXT MGR for CS6. The panel is active in both CS5 and CS6. I would like to change it so that the panel picks up

  • Smartform Language Conversion

    Hi, The Origin of Smartform is in GERMAN Lang. Afterthat  Changes(added 4 fields to display using text elements) has been Done in ENGLISH. Now the Issue while Display the Smartform in French the values for the above four fields are not getting displa

  • Sort 'albums' to date order

    I recently upgraded to OS Yosemite X and my photos transferred from iPhotos to Photos. Frankly, Photos is a mess and not user friendly. My problem is that my hundreds of 'iPhoto events' appeared in an 'iPhoto Events' folder within 'Photos albums'. I

  • M127-M128 Printer stuck on Lanuage screen

    Completed all the setup as instructed.  Plugged printer in per intstructions using USB.  Touch screen is stuck on lanuage screen. Unplugged for 30 seconds at least with no change.  Printer does print but have no access to touch screen as it will only