1

我正在尝试使用 Openfaces 3 在 bean 中调用 Save 方法。虽然 Firefox 不呈现页面,但 Internet Explorer 会。

我目前正在使用以下代码行:

<o:commandLink value="Save" action="#{beanX.save}">
  <h:graphicImage url="/images/save_48.png" />
</o:commandLink>

但我也在尝试o:ajax

<o:commandLink value="Save" action="#{beanX.save}">
  <h:graphicImage url="/images/save_48.png" />
  <o:ajax event="click" render="@none" />
</o:commandLink>

有任何想法吗?


我找到了一种处理使用标准 JSF 组件的方法。任何想法如何解决这个问题o:commandLink

4

2 回答 2

1

jsf2.0中可以使用<f:ajax>和属性render

<h:form> 
      <h:inputText value="#{managedBean.val1}" > 
         <f:ajax event="keyup" render="result" listener="#{managedBean.someThingToDoListener}"/> 
      </h:inputText> 
      <h:inputText value="#{managedBean.val2}" > 
        <f:ajax event="keyup" render="result" listener="#{managedBean.someThingToDoListener}"/> 
      </h:inputText> 

      <h:outputText id="result" value="#{managedBean.result}"/>
</h:form>

@ManagedBean(name = "managedBean") 
public class Bean { 
   private String val1; // getter and setter 
   private String val2; // getter and setter 
   private String res; // getter and setter 
   ... 

   public void someThingToDoListener(AjaxBehaviorEvent event) { 
       //res = some processing
    }

}

另见

于 2011-05-25T17:03:06.643 回答
1

谢谢你吉加乔希。你给了我关键提示。它适用于以下代码行:

<h:commandLink value="Save">
  <h:graphicImage url="/images/save_48.png" />
  <f:ajax event="click" render="@none" listener="#{beanX.save}" />
</h:commandLink>

我以前去过这个网站,我没想过假设它o:commandLink可能无法处理这个,可能是一个错误?

使用h:commandLink而不是o:commandLinkf:ajax监听器属性解决了我的问题。

于 2011-05-25T17:15:07.740 回答