Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Oracle ADF::如何通过requestScope将参数传递给另一个视图对象的命名查询_Java_Jakarta Ee_Jsf 2_Oracle Adf - Fatal编程技术网

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

Java Oracle ADF::如何通过requestScope将参数传递给另一个视图对象的命名查询,java,jakarta-ee,jsf-2,oracle-adf,Java,Jakarta Ee,Jsf 2,Oracle Adf,问题: 如何在查询中将值传递给名为“userParameter”的参数。使用requestScope 请帮助完成使请求范围在同一页面上工作的步骤 现在我知道了以下几点 我有一个名为UserRoomReservation的页面 我有一个数据控件(UserView) 将第一个数据控件作为表格拖动。 将第一列转换为链接 将actionlistener添加到该链接 发件人:#{row.userId} 收件人:#{requestScope.userParameter} 我通过sql查询创建了另一个视图对象

问题: 如何在查询中将值传递给名为“userParameter”的参数。使用requestScope
请帮助完成使请求范围在同一页面上工作的步骤

现在我知道了以下几点

  • 我有一个名为UserRoomReservation的页面

  • 我有一个数据控件(UserView) 将第一个数据控件作为表格拖动。 将第一列转换为链接 将actionlistener添加到该链接 发件人:#{row.userId} 收件人:#{requestScope.userParameter}

  • 我通过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
    
  • 我把它拖到了与图表相同的页面上。 但它不起作用,因为该值尚未传递给


  • 您可以从requestScope获取值

    ADFContext.getCurrent().getRequestScope().get(obj);
    
    然后使用NamedWhereClauseParam方法在绑定变量中设置该值

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