-3

我有这个 JSF 按钮,它在按下时调用 Java 方法:

<h:commandButton id="editdata" value="HiddenDelete" style="position:absolute; bottom:25px; right:650px;" actionListener="#{bean.saveData}" rendered="#{bean.editable}">
    <f:ajax render="@form" execute="@form"></f:ajax>
</h:commandButton>

public void saveData() throws SQLException
{
.....
}

当我进行 AJAX 调用时,按钮无法正常工作。你能帮我找出为什么在 AJAX 调用之后没有调用 Java 方法吗?

4

1 回答 1

0

你没有通过事件:

public void saveData(AjaxBehaviorEvent event) { ... }

另外,你期望Exception你投掷的东西会发生什么?你不应该抓住它吗?

try {
    // logic
}
catch(SQLException ex) {
    FacesContext facesContext = FacesContext.getCurrentInstance(); 
    FacesMessage facesMessage = new FacesMessage( 
        "There was an error, ...."); 
    facesContext.addMessage(null, facesMessage);
}

这将由<h:messages />.

于 2013-05-13T10:18:40.307 回答