Любые простые образцы JSF commandButton доступны? - PullRequest
2 голосов
/ 28 июня 2010

Я изо всех сил пытался заставить мои commandButtons выполнить действие (но, как ни странно, у меня нет проблем с извлечением данных из bean-компонентов для включения в мою страницу).Даже разместили мой код в другом месте, и его просмотрели другие.Пока что не повезло.Итак, я думаю, возможно, другой тактик в порядке.Может кто-нибудь указать мне на очень простой / базовый пример кода проекта, который имеет commandButton, который может успешно вызвать действие?

1 Ответ

6 голосов
/ 28 июня 2010

Распространенной причиной среди начинающих является то, что <h:form> забыто.Согласно спецификации HTML, любая кнопка отправки, предназначенная для отправки чего-либо на серверную часть, должна быть помещена в элемент HTML <form>.

Вот простой Hello World, как это сделать в JSF:

Страница JSF

<!DOCTYPE html>
<html 
    xmlns="http://www.w3.org/1999/xhtml" 
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:h="http://java.sun.com/jsf/html">
    <h:head>
        <title>Hello World</title>
    </h:head>
    <h:body>
        <h:form>
            Enter your name
            <h:inputText value="#{bean.input}" />
            <h:commandButton value="submit" action="#{bean.submit}" />
        </h:form>
        <h:outputText value="#{bean.output}" />
    </h:body>
</html>

Bean:

package mypackage;

import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;

@ManagedBean
@RequestScoped
public class Bean {

    private String input;
    private String output;

    public void submit() {
        output = String.format("Hello %s!", input);
    }

    public String getInput() {
        return input;
    }

    public String getOutput() {
        return output;
    }

    public void setInput(String input) {
        this.input = input;
    }

}

Вот и все:)

Для других возможных причин этой проблемы, проверьте 1-ую ссылку всписок ниже.

См. также:

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...