Primefaces: nenhum dos componentes aparecem em tela

Bom, achei algumas soluções mais nenhuma resolveu meu caso, acabei de criar um projeto Maven, fiz as devidas instalações, instalei a dependência do PRIMEFACES e criei uma pagina simples o padrão do get started e quando eu executo não mostra nenhum componente do primefaces.

esse e o pom.xml:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>br.com.teste1</groupId>
  <artifactId>teste3</artifactId>
  <packaging>war</packaging>
  <version>0.0.1-SNAPSHOT</version>
  <name>teste3 Maven Webapp</name>
  <url>http://maven.apache.org</url>
  <dependencies>
<dependency>
  <groupId>junit</groupId>
  <artifactId>junit</artifactId>
  <version>3.8.1</version>
  <scope>test</scope>
</dependency>
<dependency>
	<groupId>org.hibernate</groupId>
	<artifactId>hibernate-entitymanager</artifactId>
	<version>5.4.6.Final</version>
</dependency>
<dependency>
	<groupId>org.hsqldb</groupId>
	<artifactId>hsqldb</artifactId>
	<version>2.5.0</version>
</dependency>
<dependency>
	<groupId>org.primefaces</groupId>
	<artifactId>primefaces</artifactId>
	<version>7.0</version>
</dependency>
  </dependencies>
  <build>
<finalName>teste3</finalName>
  </build>
  <properties>
		<maven.compiler.source>1.8</maven.compiler.source>
		<maven.compiler.target>1.8</maven.compiler.target>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
	</properties>
</project>

a pagina pra teste:

<html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:p="http://primefaces.org/ui">
     
    <h:head>
    </h:head>
 
    <h:body>
         <p:calendar  showOn="button" /> teste de uso e se eu usar tags html normais? tipo <b>Bold</b>
         <input type="number" />
    </h:body>
</html>

precisam de mais informações? e so pedir!

Pelo menos a página carrega? Como está a configuração do web.xml (diretório WEB-INF)? A extensão do arquivo está como HTML ou XHTML?

Ele roda sim! Todo o texto escrito aparece e componentes html cru tbm!

nao alterei o webxml, ele foi geraso automaticamente durante a configuração do projeto maven, mas ja envio o arquivo aqui!

Faltou a extensão para os temas:

<!-- https://mvnrepository.com/artifact/org.primefaces.extensions/primefaces-extensions -->
<dependency>
    <groupId>org.primefaces.extensions</groupId>
    <artifactId>primefaces-extensions</artifactId>
    <version>7.0</version>
</dependency>

e o tema a ser usado (web.xml) por exemplo:

<!-- Parametrização de Contexto -->
<context-param>
	<param-name>primefaces.THEME</param-name>
	<param-value>bluesky</param-value>
</context-param>

VOU TESTAR, te aviso rapidinho

nada ainda, mas aqui segue o web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns="http://xmlns.jcp.org/xml/ns/javaee"
	xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
	version="3.1">
	<display-name>TESTE4</display-name>
	<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>
	<context-param>
		<param-name>primefaces.THEME</param-name>
		<param-value>bluesky</param-value>
	</context-param>
</web-app>

essa e a tela no final… ahhh quando a url entra no /faces/* ela da erro 404, ai eu tiro o faces da url e ela mostra a tela… mais uma coisa que não sei como resolver…

<servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>/faces/*</url-pattern>
</servlet-mapping>

Muda para *.xhtml que ai irá funcionar :+1:

O JSF só renderiza os seus componentes se voce acessar a página conforme o que esta escrito no url-pattern.

Do jeito que esta configurado, teria que estar escrito /faces/ na sua url, mas é melhor mudar o valor para *.xhtml

1 curtida

alterei e agora ele da um erro 404!

Beleza! Como voce esta acessando a pagina? Me manda uma print da arquitetura de pastas

image

essa e a estrutura de paginas… não sei mais o que fazer

A página está na WEB-INF? Coloque na pasta raiz WebContent ou em uma pasta própria dentro da WebContent.

esta na web content