JSF2 + Eclipse + Glassfish странная проблема вывода - PullRequest
3 голосов
/ 18 сентября 2011

Я пытаюсь сделать простое приложение JSF2 в Eclipse Indigo.У меня очень простой ManagedBean (вызов HelloBean.java)

package server;



@ManagedBean
@RequestScoped
public class HelloBean {

    private String name;

public HelloBean() {
}

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}

И это мой index.xhtml:

    <html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core">

    <h:head><title>JSF 2.0 Hello World</title></h:head>
        <h:form>
            <h:inputText value="#{helloBean.name}"></h:inputText>
            <h:commandButton value="Welcome me" action="welcome"></h:commandButton>
        </h:form>
</html>

В Eclipse я создал пользовательскую библиотеку под названием JSF2.0добавлены файлы jsf-api ... и jsf-impl.В настройках проектов я выбрал JavaServer Faces.Когда я публикую это действительно фиктивное приложение и проверяю браузер, я вижу совершенно пустую страницу.Только заголовок в порядке, но остальное содержимое не отображается.

Я проверил файл журнала сервера, без предупреждений, без ошибок, все выглядит нормально.

В чем проблема?Я скучаю по чему-то важному?

Спасибо за помощь!

1 Ответ

1 голос
/ 18 сентября 2011

Убедитесь, что у вас есть Faces Servlet в вашем web.xml:

<servlet>
    <servlet-name>Faces Servlet</servlet-name>
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>/faces/*</url-pattern>
</servlet-mapping>

Затем убедитесь, что ваш URL содержит префикс faces, например http://localhost:8080/faces/index.xhtml.

...