Estou fazendo um projeto JSF, mas quando fiz esse formulário abaixo, deu erro:
<h:form>
<p:panelGrid columns="2">
<h:outputLabel for="nome" value="Nome"></h:outputLabel>
<p:inputText id="nome"></p:inputText>
<h:outputLabel for="sobrenome" value="Sobrenome"></h:outputLabel>
<p:inputText id="sobrenome"></p:inputText>
<p:button value="Enviar"></p:button>
</p:panelGrid>
</h:form>
Na página index.xhtml dá o seguinte aviso:
Cannot find component for expression “msg” referenced from “j_idt8”.
E a seguinte exceção:
exceção-primefaces.txt (4,1,KB)
Meu web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.1" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.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>*.jsf</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
<welcome-file-list>
<welcome-file>index.jsf</welcome-file>
</welcome-file-list>
</web-app>
Minha classe:
package beans;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
@SessionScoped
@ManagedBean
public class NomesBean {
private String nome;
private String sobrenome;
private String mensagem;
public void dizerOla() {
mensagem = "Olá, " + nome + " " + sobrenome;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getSobrenome() {
return sobrenome;
}
public void setSobrenome(String sobrenome) {
this.sobrenome = sobrenome;
}
public String getMensagem() {
return mensagem;
}
public void setMensagem(String mensagem) {
this.mensagem = mensagem;
}
}
Estou com o Apache 9 (o 10 deu erro por usar pacotes jakarta ao invés de javax), Netbeans 15, JDK 11.0.16.1.
Os jars incluídos são:
jsf-api-2.1.9
jsf-impl-2.1.9
primefaces-10.0.0