JSF Ajax aktualisiert Seite neu

Hallo Zusammen,

ich bin neuling in Ajax und JSF und versuche ein kleines Beispiel zu Programmieren.

wenn ich auf dem Button klicke soll sich nur das obere Datum aktualisieren.
Leider wird immer die ganze Seite neu geladen und beide Zeitangaben werden akualisiert.

hier mal die Bean:

Code:
import javax.faces.bean.ManagedBean;
import java.util.Date;

@ManagedBean
public class Ajaxhändler {

    public String datumEins() {
        return new Date().toString();
    }

    public String datumZwei() {

        return new Date().toString();
    }
}

die JSF:

Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://xmlns.jcp.org/jsf/html"
      xmlns:f="http://xmlns.jcp.org/jsf/core">

<h:body>

    <h:form>
        <h:commandButton value="gib zeit">
            <f:ajax execute="uhr" render="uhr"/>
        </h:commandButton>

        <h2><h:outputText id="uhr" value="#{ajaxhändler.datumEins()}"/></h2>
    </h:form>

    <h2><h:outputText id="blubb" value="#{ajaxhändler.datumZwei()}"/></h2>

</h:body>
</html>

was mach ich falsch ?
 
1) Benutz lieber keine Sonderzeichen/Umlaute in Methoden,Properties, Klassen etc.
2) vor h:body muss unbedingt ein h:head hin 😉
3) Dein Bean sollte nen Scope haben -> @RequestScoped
4) Probier mal <f:ajax execute="@this uhr" render="uhr"/>
 
Zuletzt bearbeitet:

Neue Themen


Zurück
Oben