如果单击 Button 时显示警告消息,则更新后的搜索结果列表不显示
if warning message displayed onclick of Button, then updated search result list not displaying
当我点击search
按钮时,它会根据我们输入的条件或总数显示搜索结果,这样当搜索结果超过100时它会显示警告信息并更新搜索结果基于我们输入的条件。
MyForm.java
public String findList() {
try {
vwList = null;
String ret = "self";
rendered = false;
long count = myEntryListService.findHistMasterCount(entryJyokenVO,formMode);
System.out.println("count: " + count);
if (count > CommonConst.MAX_ROW) {
List msgList = new ArrayList();
String params[] = new String[]{"WW000001", String.valueOf(CommonConst.MAX_ROW), String.valueOf(count)};
msgList.add(params);
ShowErrMsg.saveErr(msgList);
System.out.println("warning message: " + FacesContext.getCurrentInstance().getMessages().next().getDetail()); // here getting warning message
// ret = "self"; //updated list is displaying but warning message not displaying
ret = null; // warning message displaying but updated search results not displaying
}
vwList = myEntryListService.findHistMasterList(entryJyokenVO, formMode);
rendered = true;
System.out.println("vwList size: " + vwList.size());
return ret;
} catch (Exception e) {
System.out.println("System error");
return "error";
}
}
agent.xhtml
<h:commandButton id="search" value="#{msgs['label.button.search']}" action="#{myForm.findList}" onclick="openLoadingWindow();"/>
面孔-config.xml
<navigation-rule>
<from-view-id>/jsp/agency/agent.xhtml</from-view-id>
<navigation-case>
<from-outcome>self</from-outcome>
<to-view-id>/jsp/agency/agent.xhtml</to-view-id>
<redirect/>
</navigation-case>
</navigation-rule>
现在的问题是,
如果我返回 self
并从屏幕中的下拉列表中选择值,则更新的搜索结果显示对应于下拉值,但警告消息不显示 ...
如果我返回 null
并从屏幕中的下拉列表中选择值,则会显示警告消息但更新的搜索结果不会显示对应于下拉值的值(如果我单击从下拉列表中选择值后搜索按钮 2 次,然后显示更新的结果列表)...
你可以试试这个。它可能会解决您的问题。
context.addMessage(clientId, facesMessage);
context.getExternalContext().getFlash().setKeepMessages(true);
原文post我找到了here
当我点击search
按钮时,它会根据我们输入的条件或总数显示搜索结果,这样当搜索结果超过100时它会显示警告信息并更新搜索结果基于我们输入的条件。
MyForm.java
public String findList() {
try {
vwList = null;
String ret = "self";
rendered = false;
long count = myEntryListService.findHistMasterCount(entryJyokenVO,formMode);
System.out.println("count: " + count);
if (count > CommonConst.MAX_ROW) {
List msgList = new ArrayList();
String params[] = new String[]{"WW000001", String.valueOf(CommonConst.MAX_ROW), String.valueOf(count)};
msgList.add(params);
ShowErrMsg.saveErr(msgList);
System.out.println("warning message: " + FacesContext.getCurrentInstance().getMessages().next().getDetail()); // here getting warning message
// ret = "self"; //updated list is displaying but warning message not displaying
ret = null; // warning message displaying but updated search results not displaying
}
vwList = myEntryListService.findHistMasterList(entryJyokenVO, formMode);
rendered = true;
System.out.println("vwList size: " + vwList.size());
return ret;
} catch (Exception e) {
System.out.println("System error");
return "error";
}
}
agent.xhtml
<h:commandButton id="search" value="#{msgs['label.button.search']}" action="#{myForm.findList}" onclick="openLoadingWindow();"/>
面孔-config.xml
<navigation-rule>
<from-view-id>/jsp/agency/agent.xhtml</from-view-id>
<navigation-case>
<from-outcome>self</from-outcome>
<to-view-id>/jsp/agency/agent.xhtml</to-view-id>
<redirect/>
</navigation-case>
</navigation-rule>
现在的问题是,
如果我返回
self
并从屏幕中的下拉列表中选择值,则更新的搜索结果显示对应于下拉值,但警告消息不显示 ...如果我返回
null
并从屏幕中的下拉列表中选择值,则会显示警告消息但更新的搜索结果不会显示对应于下拉值的值(如果我单击从下拉列表中选择值后搜索按钮 2 次,然后显示更新的结果列表)...
你可以试试这个。它可能会解决您的问题。
context.addMessage(clientId, facesMessage);
context.getExternalContext().getFlash().setKeepMessages(true);
原文post我找到了here