PRIMEFACES FARKLI BİR VİEWA AJAXCALL YAPMAK
Primefacesda aynı view içinde ajax cagıracaksanız bunu dokumantasyondada yer alan asagıda sekilde yapabiliyorsunuz
| <h:panelGrid columns="2"> |
| <p:commandButton value="PrimeFaces" actionListener="#{ |
| <h:commandButton value="JSF Impl" actionListener="#{ |
| <f:ajax render="txt txts" execute="@form"/> |
| </h:commandButton> |
| </h:panelGrid> |
| <p:dataList id="txts" var="text" value="#{showcaseView.texts}" type="inset"> |
| <f:facet name="header">Values</f:facet> |
| #{text} |
| </p:dataList> |
| public void add() { |
| texts.add(text); |
| text = null; |
| } |
Yukarısı Ayni viewda ajax call yapmanın yontemidir .
Fakat Aynı viewda aynı işlemi yapmak için su sekilde bir işlem yapmamız gerekmekte.Diğer viewin içindeki form un idsi su sekilde verilmelidr
<p:commandButton value="Ekle"
action="#{AddBean.add}"
update=":formB:txts" process="@all" />
hedef ise su sekilde olmalıdır
<h:form id="formB">
<p:dataList id="txts" var="userShortInfo" ....
beanda calısan metodda ise donus degeri hedefin içindeki bulundugu view olmalıdır
public String tiklaKonusYapanKullanicilar() {
onlineTiklaKOnus= userService.
return "pm:digerViewinIdsi";
}
java.lang.ArrayIndexOutOfBoundsException : 1 org.primefaces.mobile.util. MobileUtils.buildNavigation( MobileUtils.java:33) Hatası
<f:facet name="left"><p:button value="Back" icon="back" href="#"/></f:facet>
seklinde bir hata yapmanızdan kaynaklaniyor href in içi bos olmamassi gerekiyor oldugu viewin yada sayfanin adresini verebilirsiniz
Hiç yorum yok:
Yorum Gönder