ORDS 3.0 - How to set VPD Context before executing SQL Template?

I need to set a couple of attributes in an Oracle Session Context before the SQL/PLSQL template handler is executed, as we rely on Oracle VPD/Row-Level-Security for the data access.
Is there a hook/functionality in ORDS 3.0 where I can register a PL/SQL (e.g. set_security_context(authenticated_user)) procedure, so this 'set_security_context' procedure is executed before and for each execution of a SQL/PLSQL template handler?

I tried to log the request at Oracle REST Data Services (ORDS) but I could only start a new discussion: Possibility to register Pre-/Post-Procedures for an SQL Template Handler
As I mentioned there, the PL/SQL handler approach works for me as long as I have no or only little data to send back to the client (e.g. put/post/delete succeeded or an error message why the call failed).
If I need to return a lot of data from the PL/SQL handler I would need to, as far as I understand, to marshal the data to JSON and write it to the response body in the PL/SQL handler.
I don't want to do the marshaling, because ORDS does it better.
However, this works for me:
I write a pipelined stored procedure that takes as input the attributes I need to set in the session context. I then can reference it in the SQL handler:
select * from table(my_pipelined_function(:USER, ....)
Now the JSON/HTTP response is created by ORDS again.
I still needed to code a couple of lines, but it is way better than duplicating the functionality already existing in ORDS.
With the hooks it would be perfect because I would not have to write any code (apart from the procedure to set the session context attributes), just configure the REST services in ORDS.

Similar Messages

  • How to set the timeout to execute sql by jdbc?

    Connection con = getConnection();
    Statement stmt = con.createStatement();
    stmt.execute("update table1 set colum1='abc' where key = '1' ");before run this java class
    I exectue the sql(update table1 set colum1='abc' where key = '1' ) in sqlplus
    but not commit.thus the database will lock the item .
    then I run the java class.
    so the class will waite the sqlplus commit.
    I want kill the run thread when the java class waite 1000 seconds.
    how can I do?

    o
    I have tried it.
    but it seems the method can not work well
    if I use
    stmt.setQueryTimeout(30) the jdbc operate will be cancled after 4 minutes not 30seconds

  • How to set portal context using Java/JPDK api.

    Hi,
    I am in the process of converting pl/sql based database provider contect portlets to Java based JPDK. I ran into issue where the database provider portlet users were getting context auto matically. Now with Java/JPDK portlets , I am receiving no data found error, since the context is not set. The pl/sql is setting wwctx_private_api.set_context ('portal') to set the context. From Java if we call this api, it is taking a toll on the performance and the portlet times out.
    Can any help how to set the context for a web provider using JPDK or any other better solution. Any immediate help is highly appreciated.
    Thanks,
    Rav.

    Hi
    We are trying to access content views for e.g portal.wwsbr_all_items s, portal.wwsbr_all_content_areas c,portal.wwsbr_all_folders f, from aweb provider portlet. When we do a select on those objects , we are getting java sql exception saying "ORA-06510: PL/SQL: unhandled user-defined exception
    ORA-06512: at "PORTAL.WWCTX_SSO", line 1745
    ORA-06510: PL/SQL: unhandled user-defined exception
    ORA-06512: at "PORTAL.WWCTX_SSO", line 1579
    ORA-06502: PL/SQL: numeric or value error
    ORA-06512: at "PORTAL.WWCTX_SSO", line 1834
    ORA-06512: at "PORTAL.WWCTX_API", line 199
    We need to know how to accesss the above views from a jsp based portlet.
    A

  • How to set a context init parameter

    Hello,
    Can anyone tell me how to set the following context init parameter. "javax.faces.application.CONFIG_FILES" on a windows configuration. I haven't got a clue how to do that and would be very grateful for your help.
    Thanks,
    Alexandre.

    There is no difference on how to set this context init parameter based on OS platform.
    The paramter value should always be a comma-delimited list of context-relative paths under the web application (ex. /WEB-INF/app-config.xml).

  • How to set the table input in Query template?

    Hi all.
    I need to call a Bapi_objcl_change, with import parameter and a table as an input. I have done this, in BLS. I have set the table input in the
    form of xml. In BLS, I get the output(the value gets change in SAP R3, what i have given in BLS).  But if i set the same xml structure  in
    query template, I didn't get the output. Table input parameter does not take that xml source.  How to set the table input in Query template?
    can anyone help me?
    Regards,
    Hemalatha

    Hema,
    You probably need to XML encode the data so that it will pass properly and then xmldecode() it to set the BAPI input value.
    Sam

  • HT2589 How to set a password before buying an app

    How to set a password before buying an app

    The Apple Support Communities are an international user to user technical support forum. As a man from Mexico my first language is Spanish. I do not speak English, however I do write in English with the aid of the Mac OS X spelling and grammar checks. I also live in a culture perhaps very very different from your own. When offering advice in the ASC, my comments are not meant to be anything more than helpful and certainly not to be taken as insults.
    Try to buy an app and you will be presented with a screen to create an iTunes/Mac App Store account if you have never created one. If you have an iTunes account, sign into the Mac App Store with the same username and password.

  • How to set the connection parameters for SQL

    How to set the connection parameters for SQL to access the MS Access database
    Attachments:
    Quick_SQL.vi ‏21 KB
    Doc1.doc ‏45 KB
    db1.mdb ‏112 KB

    Right-click the WINDOWS desktop, choose New->Microsoft Data Link. That will bring up a dialog that allows you to configure and test your database connection. You might connect to the Access database via ODBC or directly via Jet Engine. The Jet Enginge saves you the trouble of creating an ODBC connection on your PC. After you leave the dialog, the "data link" will show up on your desktop as text file. Open it and copy-paste the connection string to your VI.
    This webpage is an excellent resource for connection strings: http://www.able-consulting.com/ADO_Conn.htm
    If your application requires users to change the database connection at runtime, you can also include the dialog via ActiveX (MSDASC.IDataSourceLocator).

  • How to set a context of "/" ??

    How can i set a context of either "" or "/" such that when i call the
    URL
    htpp://localhost:7001/
    I go to the location specified for that context ?
    Is this possible ?
    Srini

    <url-pattern>*</url-pattern>
    Gene
    "Srini Kurella" <[email protected]> wrote in message news:[email protected]..
    How can i set a context of either "" or "/" such that when i call the
    URL
    htpp://localhost:7001/
    I go to the location specified for that context ?
    Is this possible ?
    Srini

  • How to set the Context path to AAA/BBB in Weblogic 5.1?

    Hi folks,
              I want to deploy a web application and set the servlet context as:
              AAA/BBB. Put more simply, my application should be accessible via the
              following:
              http:localhost:7001/AAA/BBB/main.jsp
              where http://localhost:7001/AAA/BBB maps to my document root.
              One work around is to set the context to AAA:
              weblogic.httpd.webApp.AAA=WebAppLocation
              And in the deployment descriptor (web.xml) to register all servlets
              with a BBB/ prepended to the desired alias:
              <servlet-mapping>
              <servlet-name>main</servlet-name>
              <url-pattern>BBB/main.jsp</url-pattern>
              </servlet-mapping>
              But this solution does not work for me. Parts of the application refer
              the context root (AAA) and create URLs relative to that. These URLs
              will not have the BBB part. Searching for it in the code and replacing
              it is not desirable (we do not own the code). Does anyone have any
              suggestions?
              Thanks in advance,
              Musafir
              

    What you have done for changing the context root to "/" is all fine but it is important to know that there is a ROOT.war in the deploy folder of JBoss which by default gets bound to "/" context. You must be getting the error message like "Web mapping already exists for deployment" when you would be starting your JBoss server after changing your context root to "/". So either you can completely remove the ROOT.war from the deploy folder or change the context-root of ROOT.war by updating its web.xml like:
    <web-app>
    <display-name>Welcome to JBoss</display-name>
    <description>
    Welcome to JBoss
    </description>
    *<context-param>*
    *<param-name>context-root</param-name>*
    *<param-value>/jboss-root</param-value>*
    *</context-param>*
    <servlet>
    <servlet-name>Status Servlet</servlet-name>
    <servlet-class>org.jboss.web.tomcat.service.StatusServlet</servlet-class>
    </servlet>
    </web-app>
    and also update the jboss-web.xml of ROOT.war:
    <jboss-web>
    <security-domain>java:/jaas/jmx-console</security-domain>
    *<context-root>/jboss-root</context-root>*
    </jboss-web>
    I hope this serves your purpose.
    There can be a workaround also by modifying the index.html of ROOT.war in the deploy folder of your server and redirect request to your web application using meta refresh like:
    <meta http-equiv="refresh" content="0;URL='/store'">

  • Help me how to set charset UTF-8 in SQL Server 2000

    Hello guys,
    Pls anyone help me out from "how to set the charset UTF-8" in SQL Server 2000.
    How do i find the default charset in that?

    SQL Server 2000 uses UCS-2/UTF-16 encoding.
    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnsql2k/html/intlfeaturesinsqlserver2000.asp

  • How to pass a parameter into execute sql task and later use it into dataflow task?

    i am in a situation, where i have a logging table in which i have a primary key called ETL_log_ID which is an identity column and acts as a foreign key for various fact table and dimension tables which are populated using SSIS packages. Now i wanna use the
    ETL_log_ID as a parameter in the execute sql task which populates the log table and pass the same value in the data flow task which populates the facts and dimension. Can you let me know how to pass the parameter in a step by step procedure.
    Thanks,
    Nikhil
      

    Nikhil,
    You can check the following :
    http://www.programmersedge.com/post/2013/03/05/ssis-execute-sql-task-mapping-parameters-and-result-sets.aspx
    http://stackoverflow.com/questions/7610491/how-to-pass-variable-as-a-parameter-in-execute-sql-task-ssis
    Regarding the usage in Dataflow task, Can you elaborate on that a little?
    Thanks,
    Jay
    <If the post was helpful mark as 'Helpful' and if the post answered your query, mark as 'Answered'>

  • How to export the result from executing sql statement to excel file ?

    HI all,
    Great with Oracle SQL Developer, but I have have a trouble as follwing :
    I want to export the result from executing sql statement to excel file . I do easily like that in TOAD ,
    anyone can help me to do that ? Thanks so much
    Sigmasvn

    Hello Sue,
    I just tried to export to excel with the esdev extension and got java.lang.NumberFormatException. I found the workaround at Re: Windows Multi-language env, - how do I set English for application lang?
    open the file sqldeveloper\jdev\bin\sqldeveloper.conf and add the following two lines:
    AddVMOption -Duser.language=en
    AddVMOption -Duser.country=USyet now my date formats in excel are 'american-style' instead of german. For example 01-DEC-01 so excel does not recognize it as date and therefore I can not simply change the format.
    When export to excel will be native to 1.1 perhaps someone can have a look at this 'feature'
    Regards
    Marcus

  • How to create Batch file to execute sql scripts

    Hi friends,  
          i want to create batch file to execute all my .sql scripts.
    I have all table ( all table scripts in single file ) ,Udds ( all udds in single file ) ,Stored procedures( separate file for each SPs ),Functions ( Separate file for each Functions ),Triggers and views scripts in .SQL file.   
    can anybody tell me how to create batch file for executing all these scripts in sql server ?.   
       while executing, it should ask Database name,server name, password. if these details are given then it should execute my all scripts in given database
    , if any error thrown then that error and procedure name alone have to move to separate log file..
    Please help me if this possible or any other easy way to do this..
    Thanks - Ravi

    Hi  Mate.
    can i save the below details in my batch file parmantly, so that i don't need to provide the details agains again in CMD while i execute this. Please help
    set /p SName=Server Name :
    set /p UName=User Name :
    set /p Pwd=Password :
    set /p DbName=Database Name
    If  i am providing the details before execution of this bat file it will throw error.

  • How to use database control to execute sql queries which change at run time

    Hi all,
    I need to execute sql queries using database controls , where the sql changes
    at run time
    based on some condition. For eg. based on the condition , I can add some where
    condition.
    Eg. sql = select id,name from emp where id = ?.
    based on some condition , I can add the following condition .
    and location = ?.
    Have anybody had this kind of situation.
    thanks,
    sathish

    From the perspective of the database control, you've got two options:
    1) use the sql: keyword to do parameter substitution. Your observation
    about {foo} style sbustitution is correct -- this is like using a
    PreparedStatement. To do substitution into the rest of the SQL
    statement, you can use the {sql: foo} substitution syntax which was
    undocumented in GA but is documented in SP2. Then, you can build up
    the filter clause String yourself in a JPF / JWS / etc and pass it into
    the DB control.
    For example:
    * @jc:sql statement="select * from product {sql: filter}"
    public Product[] getProducts(String filter) throws SQLException;
    This will substitute the String filter directly into the statement that
    is executed. The filter string could be null, "", "WHERE ID=12345", etc.
    2) you can use the DatabaseFilter object to build up a set of custom
    sorts and filters and pass that object into the DB control method.
    There have been other posts here about doing this, look for the subject
    "DatabaseFilter example".
    Hope that helps...
    Eddie
    Dan Hayes wrote:
    "Sathish Venkatesan" <[email protected]> wrote:
    Hi Maruthi,
    The parameter substituion , I guess is used like setting the values for
    prepared
    statements.
    What I'm trying to do , is change the sql at run time based on some condition.
    For example ,
    consider the following query :
    select col1,col2 from table t where t.col3 > 1
    At run time , based on some condition , I need to add one more and condition.
    i.e. select col1,col2 from table t where t.col3 > 1 and t.col4 < 10.
    This MAY not address your issue but if you are trying to add "optional" parameters
    you may try including ALL the possible parameters in the SQL but send in null
    for those params that you don't want to filter on in any particular case. Then,
    if you word your query
    as follows:
    select col1, col2 from table t where t.col3 > 1 and (t.col4 = {col4param} or
    {col4param} is null) and (t.col5 = {col5param} or {col5param} is null) ...
    you will get "dynamic" filters. In other words, col4 and col5 will only be
    filtered if you send in non-null parameters for those arguments.
    I have not tried this in a WL Workshop database control but I've used
    this strategy dozens of times in stored procedures or jdbc prepared statements.
    Good luck,
    Dan

  • How Track&monitor the history of executed sql /plsql on 10g database server

    I want to keep and track the history of all sql/plsql that is being execute on database server. how it is to be done.
    pls help
    prabhaker

    To keep track of executed SQL statements, you can use database auditing : see http://oraclelon1.oracle.com/docs/cd/B19306_01/server.102/b14200/statements_4007.htm#i2059073
    I am not sure that PL/SQL execution can be traced using database auditing.

Maybe you are looking for

  • Apple ID was created as a Reseller Account, no iCloud?

    Back in 2011, I set up a new Apple ID when I registered for Certification courses for Snow Leopard. When I try to log in to iCloud (either on my MBA running 10.8 or my iPad with iOS 6) I get an "Apple ID is Unsupported" error message. After 2 hours o

  • Moving to jrun4

    -logger (debug/info/...) doesn't work: entries are written with very long delays. -same problem also on a new created server, via browser. -no errors in log on start server. -jrun.xml contains: <service class="jrunx.logger.LoggerService" name="Logger

  • SQL Developer Script

    Dear buddies, I need to migrate from SQL Server to Oracle. Please kindly guide me, how I can use the scripting options available in SQL Developer. I clicked on Tools -> Migration -> Third Party Database Offline Capture - > Create Database capture Scr

  • Problem with a workbook

    Hi, I want to load a workbook from a user account but I can't see it. If I login with another user is in other database I can load it. I'm always working with Discoverer Desktop. Both users are Discoverer Administrators. What I want to do is that a w

  • Report totals for non-numerical data

    Hello all, I am trying to update a site for an auto shop.  The site is in PHP, MySQL. What they have in the database is records for each customer that comes in to their shop.  So, they will have John Q. Public having multiple entries for the date he