我有一个关键的场景。
考虑 3 页。第1 页,第2 页,第 3 页。
从第 1 页。QueryString 中有一个参数,名为“note”。它有两个值“CreateNote”或“UpdateNote”。基于这些值,我在Page2上隐藏并显示很少的内容。
到这里没问题。
现在从Page2我需要导航到Page3。在Page3上有一个后退按钮。我试图在 Back 上设置note属性,但仍然没有设置这些信息,因此在Page2上出现空指针访问。
一些代码如下
第 1 页URL 喜欢
http://localhost:9095/Oscer/pages/UpdateNote.jsf?modified=NO¬e=UpdateNote&docid=206&callFrom=prescribe
在第 2 页
它使用像...这样的脚本来处理
在 backingbean 构造函数调用上设置注释对象。
<%
String note = request.getParameter("note");
if(note == null || note.equals("")){
note = (String)request.getAttribute("note");
}
request.setAttribute("note",note);
%>
在第 3页
试图处理 BackButton 之类的,
if(note == null){
FacesContext facesContext = FacesContext.getCurrentInstance();
Map<String,String> requestObj = facesContext.getExternalContext().getRequestParameterMap();
if(requestObj != null){
note = requestObj.get("note"); //Either of CreateNote or UpdateNote
}
}
request.setAttribute("note", note);
现在,当我们从第3 页导航到第2 页时,虽然我设置request.setAttribute("note", note);
了它给出了 NULL 指针异常原因,说明第2 页尚未设置:(
我不明白如何导航,以防查询字符串处理 jsp 页面?