私は同じ質問で多くのページを読んでいますが、私のcommandButtonがアクションを呼び出さない理由(私はそれをデバッグして問題があります)を見つけることができません。私のコードはシンプルに見えますが...うまくいきません。多分それは初心者の問題ですが、私はどこにいるのか分かりません。commandButtonはマネージドBeanのアクションを呼び出さない
私は、JSF2とLiferay Faces Alloyを使用してライフタイム用のポートレットを作成しています。
私はまた、非常に教育的な質問commandLink/commandButton/ajax backing bean action/listener method not invokedを読んだことがありますが、ポイントのどれも私の問題を解決していません。ここで
は私のmainView.xhtmlファイルです:
<?xml version="1.0"?>
<f:view
xmlns="http://www.w3.org/1999/xhtml"
xmlns:aui="http://liferay.com/faces/aui"
xmlns:c="http://java.sun.com/jsp/jstl/core"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:ui="http://java.sun.com/jsf/facelets">
<h:head />
<h:body>
<h:form>
<h:messages globalOnly="true" layout="table" />
<h:outputText id="esteTexto" value="#{ramSession.texto}" />
<br />
<h:commandButton action="#{ramSession.add}" styleClass="btn btn-default" value="#{ramSession.texto}">
</h:commandButton>
</h:form>
</h:body>
</f:view>
そして、ここでは私のSessionScoped ManagedBeanファイル、RamSession.javaです:
@ManagedBean
@SessionScoped
public class RamSession extends AbstractBaseBean implements Serializable {
private static final long serialVersionUID = 919724848720360000L;
private String texto;
public void add() {
this.texto = new String("Entrando");
}
@PostConstruct
public void postConstruct() {
this.texto = new String("Jereje");
}
public String getTexto() {
logger.info("gettingTexto");
addGlobalSuccessInfoMessage();
return this.texto;
}
public void setTexto(String texto) {
this.texto = texto;
}
}
私はまた、文字列(必要さえありません)を返す試してみました、actionListenerメソッドを使用し、ajaxでも何もしません。誰か助けてくれますか?どうもありがとう。
そう、それが動作を開始しますか?そうでない場合、それはなぜ質問に含まれていますか? – BalusC
両方を削除しましたとにかく動作しません。 質問に含まれている理由を尋ねたときに何を意味しているのか理解できませんでしたが、仕事がないときにのみ表示したいと思っています評価 ありがとうございました! :) –
ferda
このようにすれば、潜在的な原因をさらに絞り込むことができ、問題に寄与しない騒音を低減して質問を改善できます。 – BalusC