Ich habe die vielen Seiten mit ähnlichen Fragen gelesen und gesucht, aber ich kann nicht finden, warum mein commandButton die Aktion nicht aufruft (ich habe es debuggt und das ist das Problem). Mein Code sieht einfach aus, aber ... funktioniert nicht. Vielleicht ist es ein Anfängerproblem, aber ich weiß nicht wo es ist.commandButton ruft keine Aktion für verwaltete Beans auf
Ich schreibe ein Portlet für Liferay mit JSF2 und Liferay Faces Alloy.
Ich habe auch die Frage commandLink/commandButton/ajax backing bean action/listener method not invoked gelesen, sehr lehrreich für mich, aber keiner der Punkte hat mein Problem gelöst.
Hier ist meine mainView.xhtml Datei:
<?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>
Und hier ist meine SessionScoped ManagedBean Datei, 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;
}
}
ich auch einen String versucht haben, Rückkehr (auch nicht notwendig) , mit einer actionListener-Methode und sogar mit ajax aber nichts. Kann mir jemand helfen? Danke vielmals.
Also, wenn Sie entfernen '', beginnt es zu arbeiten? Wenn nicht, warum ist es in der Frage enthalten? –
BalusC
Ich entfernte die beiden, aber es funktioniert sowieso nicht. Ich habe nicht verstanden, was Sie meinten, wenn Sie gefragt, warum ist es in der Frage enthalten, ich will nur, dass es erscheint, wenn es nicht funktioniert Assessment Vielen Dank für Ihre Zeit! :) –
ferda
Auf diese Weise können Sie weiter die potenzielle Ursache und die Frage verbessern, indem Sie Störgeräusche reduzieren, die nicht zum Problem beitragen. – BalusC