Pessoal,
Para que serve o ajax=“true” do primefaces?
Como eu faço requisição com ajax no primefaces usando p:commandButton ou p:commandLink?
<p:commandButton value="Testando" action="#{Cadastro.save}"/>
Fazendo assim não deveria funcionar?
Mas ele não consegue chamar o método save
Ajax = true siginifica informa se o botão é ou não ajax. Se ele for false ele da um submit na pagina. o default é true.
De uma olhada nesses links:
http://www.primefaces.org/showcase/ui/commandButton.jsf
http://www.primefaces.org/showcase/ui/commandLink.jsf
leonardoMachado,
Brigadão pela sua ajuda.
Mas estou fazendo bem parecido com o exemplo porém eu não sei se estou fazendo alguma coisa errada.
Estou usando JSF 2 + Primefaces 2.2 + Tomcat 6
fazendo do mesmo jeito do exemplo que você me enviou aparece a seguinte mensagem.
org.apache.tomcat.util.http.Parameters processParameters
AVISO: Parameters: Invalid chunk ignored.
Será que é o tomcat que está com problema?
<p:commandButton value="Ajax Submit" update="panel,display" actionListener="#{Cadastro.save}" style="margin-top: 15px;"/>
Quando eu faço utilizando o ajax ele não consegue nem chamar o método save
E quando eu faço sem ajax
<p:commandButton value="Non-Ajax Submit" actionListener="#{Cadastro.save}" ajax="false" />
Ele consegue chamar o método save tranquilamente
altitdb
Dezembro 22, 2010, 7:37pm
#5
Cara…
tenta usar o Async no botão!
As vezes dá certo… (alguma ocasiões)
Eu utilizo deixar o ajax como false, se não não executa a action!!
Abraço!
Mas se sempre ter que deixar como ajax=false porque existe essa opção?
Me parece que quando ele faz a requisição mesmo com ajax=false ele faz utilizando ajax aparentemente
altitdb
Dezembro 23, 2010, 9:59am
#7
Então eu tbm não sei o porque disso, sou novo com Primefaces e JSF2.0!
Aqui no meu mesmo com ajax=false ele executa com ajax!
Qualquer coisa que souber conte pra mim tambem!!
Abraço!
altitdb,
Cara é o seguinte,
Consegui usar o ajax corretamente só que estou enfrentando um outro problema pode ser o mesmo que o teu.
Estou usando facelets, o meu problema está em um ui:include que eu faço logo no index.xhtml, usando o richfaces eu usaria o a4j:include, aparentemente no primefaces não tem esse componente.
mas se você fizer do jeito que está ai tem que fucnionar coloca essse código direto no index.xhtml
<p:panel id="panel" header="Cadastro">
<h:panelGrid columns="4">
<h:outputLabel value="#{bundle.nome}" for="nome" styleClass="label" />
<h:outputText value="*" styleClass="required" />
<h:inputText id="nome" value="#{Cadastro.bean.nome}" styleClass="input" size="60" required="true"/>
<p:message for="nome"/>
<h:outputLabel value="#{bundle.endereco}" for="endereco" styleClass="label" />
<h:outputText value="*" styleClass="required" />
<h:inputText id="endereco" value="#{Cadastro.bean.endereco}" styleClass="input" size="60" required="true"/>
<p:message for="endereco"/>
</h:panelGrid>
</p:panel>
<p:panel id="display" header="Information" style="margin-top: 15px;">
<h:panelGrid columns="2">
<h:outputText value="#{bundle.nome}: "/>
<h:outputText value="#{Cadastro.bean.nome}"/>
<h:outputText value="#{bundle.endereco}: "/>
<h:outputText value="#{Cadastro.bean.endereco}"/>
<h:outputText value="Data: "/>
<p:calendar />
</h:panelGrid>
</p:panel>
<p:commandButton value="Ajax Submit" update="display" action="#{Cadastro.save}" style="margin-top: 15px;"/>
altitdb
Dezembro 23, 2010, 3:40pm
#9
Quando você faz o include nas paginas não aparece os componentes corretos certo?
Você tem que por <ui:include src="/includes/menu.xhtml"/> eu uso assim.
Eu to com problemas por que não sei nada de JSF, comecei ler um livro hoje já melhoro bastante!!
Vlws pelo Code!
xD~~
Uma solucao é nao usar o <p:ajax>
e fazer assim
<p:commandButton value=“somar” action="#{calculadoraMB.somar}" update=“resultado”/>
<h:outputLabel id=“resultado” value="#{calculadoraMB.resultado}" />
Aqui funcionou assim
Abs
saulo3k
Outubro 21, 2013, 8:29pm
#11
Letra maiúscula
<h:outputText value="#{Cadastro.bean.nome}"/>
?
eu sempre inicio com minuscula o nome do bean
ex.
<h:outputText value="#{cadastro.bean.nome}"/>