Ajuda - Primeiro exercicio com JSF

6 respostas
BtAquino

Bom dia,

Seguindo exemplos encontrados na Internet, realizei meu primeiro exercicio de JSF.

Realizei o exercicio, executei e o tomcat abriu a página normalmente, porém ao entrar na página do meu formulario, apenas o
"Hello from Facelets" aparece na tela.

Segue abaixo o código:

<?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:ui="http://java.sun.com/jsf/facelets"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core">
    <h:head>
        <title>Treinamento</title>
    </h:head>
    <h:body>
        <h:form>
            <h:outputLabel value="Numero Máximo"/>
            <h:inputText value="#{numeroAleatorioBean.maximo}"/>
            <h:commandButton value=" Gera Numero Aleatorio"
                             action="#{numeroAleatorioBean.gerarNumeroAleatorio()}"/>
        </h:form>
        Hello from Facelets
    </h:body>
</html>

Obrigado!

6 Respostas

Rodrigo_Sasaki

Você ta usando JSF 1.2 ou 2.0?

se for 1.2 tente adicionar a tag <f:view>

BtAquino

JSF 2.0 - jsf-api.jar
JSF 2.0 - jsf.impl.jar

Hebert_Coelho

Colocou os arquivos na pasta WEB-INF/lib? Como está seu web.xml? E como você está chamando via URL?

BtAquino

Então, eu estou usando o Netbeans, e no momento de criar o projeto você informa os frameworks e o mesmo já adiciona as bibliotecas.

Estou usando as citadas acima. Hibernate funcionou legal, agora JSF eu acesso o link do meu formulario.xhtml e aparece apenas “Hello from Facelets”

web.xml

<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <context-param> <param-name>javax.faces.PROJECT_STAGE</param-name> <param-value>Development</param-value> </context-param> <servlet> <servlet-name>Faces Servlet</servlet-name> <servlet-class>javax.faces.webapp.FacesServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>Faces Servlet</servlet-name> <url-pattern>/faces/*</url-pattern> </servlet-mapping> <session-config> <session-timeout> 30 </session-timeout> </session-config> <welcome-file-list> <welcome-file>faces/index.xhtml</welcome-file> </welcome-file-list> </web-app>

Estou acessando http://localhost:8080/K19-Visao-Geral/formulario.xhtml , mas como eu disse só aparece “Hello from Facelets”

Hebert_Coelho

Sim, só vai aparecer o Hello pois você não está utilizando a configuração criada no web.xml.

/faces/*

Tente acessar por
http://localhost:8080/K19-Visao-Geral/faces/formulario.xhtml

BtAquino

Agora “deu certo”, mas eu devo ter feito algo errado na minha JSF, pois acontece a seguinte mensagem de erro quando acesso:

/formulario.xhtml @13,86 action="#{numeroAleatorioBean.gerarNumeroAleatorio()}" Failed to parse the expression [#{numeroAleatorioBean.gerarNumeroAleatorio()}]
Criado 19 de março de 2012
Ultima resposta 19 de mar. de 2012
Respostas 6
Participantes 3