5

rich:popupPanelにa4j:commandLinkがあるのに問題が発生しているようですが、アクションが実行されません。xhtmlは次のようになります。

<rich:popupPanel id="rate-panel" modal="true" height="444" width="780" top="60" show="false" onmaskclick="#{rich:component('rate-panel')}.hide()" styleClass="cs-modal">
  /**Some html here**/    
  <a4j:commandLink immediate="false" action="#{venueScore.up}" render="rate-panel" styleClass="rate love">
    <span>Love it</span>
  </a4j:commandLink>    
  /**Some more html here**/    
</rich:popupPanel>

また、マネージドBeanは次のようになります。

@Named("venueScore")
@ViewScoped
public class VenueScoreManager extends BaseManager implements Serializable {
  public void up() {
    System.out.println("TEST");
    //Do something
  }
}

マネージドBeanを@ViewScopedにしました。

また、commandLinkの周りに追加しようとしました<h:form>が、これはそれがない場合よりもさらに少なくなります。それは、実際には、commandLinkが<h:form>popupPanelを開いたリンクが置かれている内部にあるためだと思います。

とにかく、誰かがアクションが発火しない理由の方向に私を向けることができますか?

4

3 に答える 3

8

わかりました。自分で修正しました。ねじ込んだ後<a4j:region>、コンテンツの周りを追加するだけでよいことがわかりました<rich:popupPanel>。したがって、xhtmlは次のようになります。

<rich:popupPanel id="rate-panel" modal="true" height="444" width="780" top="60" show="false" onmaskclick="#{rich:component('rate-panel')}.hide()" styleClass="cs-modal">
  <a4j:region id="panel-region">
    /**Some html here**/    
    <a4j:commandLink immediate="false" action="#{venueScore.up}" render="panel-region" styleClass="rate love">
      <span>Love it</span>
    </a4j:commandLink>    
    /**Some more html here**/    
  </a4j:region>
</rich:popupPanel>
于 2011-08-02T07:17:49.810 に答える
1

同じ問題が発生しました。a4j:commandLinkは最初のクリック後にのみ機能しました....ポップパネルをフォーム内に配置し、domElementAttachmentを追加します...

<h:form id="myform">
    <rich:popupPanel id="pop" domElementAttachment="form">
        ...
        <a4j:commandLink />
        ...
    </rich:popupPanel>
</h:form>
于 2014-07-12T16:15:40.007 に答える
0

私はそれが古い質問であることを知っていますが、私はまったく同じ問題を抱えていたので、それを修正する前に多くの時間を費やしました、多分それは他の誰かを助けるでしょう。まず、上記の解決策を試しましたが、うまくいきませんでした。最後に、私はこのスレッドを見つけました: show condition、RF 4.0を介してrich:popupPanelを閉じる際の問題

そして、ポップアップにdomElement属性を追加しました。

<rich:popupPanel 
id="newMailPopup" 
**domElementAttachment="form"** 
...>

そして今、私のa4j:commandLinkは完全に機能します:-)

于 2013-08-01T08:15:41.823 に答える