简体   繁体   English

Oracle ADF ::如何通过requestScope将参数传递给命名查询到另一个视图对象

[英]Oracle ADF::How do I pass a parameter to named query via requestScope to another view object

Question:: How can i pass the value to parameter named “userParameter” in a query. 问::如何在查询中将值传递给名为“ userParameter”的参数。 using requestScope 使用requestScope
Kindly help out with the steps to make a request scope work on the same page. 请在步骤中帮助您使请求范围在同一页面上工作。

For now I know the following. 现在,我知道以下内容。

  1. I have a page named UserRoomReservation 我有一个名为UserRoomReservation的页面

  2. I have a data control (UserView) Drag the first data control as a table. 我有一个数据控件(UserView)将第一个数据控件拖到一个表中。 convert the first column to a link add actionlistener to that link from: #{row.userId} to: #{requestScope.userParameter} 将第一列转换为链接,然后将actionlistener添加到以下链接:#{row.userId}到:#{requestScope.userParameter}

  3. I created another view object via sql query I put a named parameter ":userParameter" the sql query is as written below::: 我通过sql查询创建了另一个视图对象,并放置了一个命名参数“:userParameter”,sql查询如下所示:

     SELECT DISTINCT Fullreservation.USERID, Meetingrooms."roomName", Meetingrooms."roomId" , COUNT (Fullreservation.roomid) AS countRoomUsage FROM FULLRESERVATION Fullreservation, "meetingRooms" Meetingrooms WHERE fullreservation.roomid = Meetingrooms."roomId" AND Fullreservation.USERID = :userParameter GROUP BY Meetingrooms."roomName", Meetingrooms."roomId", Fullreservation.USERID 
  4. I dragged it to the same page as a graph. 我将其拖动到图形所在的页面。 but it doesn't work because the value hasn't been passed to the 但这不起作用,因为该值尚未传递给

You can get value from requestScope 您可以从requestScope获得价值

ADFContext.getCurrent().getRequestScope().get(obj);

and then set this value in bind variable using NamedWhereClauseParam method 然后使用NamedWhereClauseParam方法在绑定变量中设置此值

ViewObjectInstance.setNamedWhereClauseParam("BindVariabbleName",value);
ViewObjectInstance.executeQuery();

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM