Componentes jsf não carregam

Pessoal, não sei mais o que fazer. A pagina não esta exibindo os componentes.

A 3 dias tentando resolver isso e nada…

Estou usando SbringBoot

Classe Controller:

import javax.faces.bean.SessionScoped;
import javax.inject.Named;
import org.springframework.beans.factory.annotation.Autowired;
import com.example.entity.PessoaEntity;
import com.example.repository.ClienteRepository;

@Named
@SessionScoped
public class ClienteController {
	
	@Autowired
	ClienteRepository cR;
	PessoaEntity p = new PessoaEntity();
	
	public PessoaEntity getP() {
		return p;
	}

	public void setP(PessoaEntity p) {
		this.p = p;
	}

	public void salvar(){
		
		cR.save(getP());
	    		
	}
  }

Segue o POM

<?xml version="1.0" encoding="UTF-8"?>
<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/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>

	<groupId>com.example</groupId>
	<artifactId>demo</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<packaging>war</packaging>

	<name>demo</name>
	<description>Demo project for Spring Boot</description>

	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>1.5.2.RELEASE</version>
		<relativePath /> <!-- lookup parent from repository -->
	</parent>

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
		<java.version>1.8</java.version>
	</properties>

	<dependencies>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-data-jpa</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web-services</artifactId>
		</dependency>

		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
			<scope>runtime</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework.integration</groupId>
			<artifactId>spring-integration-http</artifactId>
		</dependency>


		<dependency>
			<groupId>javax.inject</groupId>
			<artifactId>javax.inject</artifactId>
			<version>1</version>
		</dependency>

		<!-- https://mvnrepository.com/artifact/javax.faces/javax.faces-api -->
		<dependency>
			<groupId>javax.faces</groupId>
			<artifactId>javax.faces-api</artifactId>
			<version>2.1</version>
		</dependency>


		<dependency>
			<groupId>com.sun.faces</groupId>
			<artifactId>jsf-api</artifactId>
			<version>2.0.4-b09</version>
		</dependency>
		<dependency>
			<groupId>com.sun.faces</groupId>
			<artifactId>jsf-impl</artifactId>
			<version>2.0.4-b09</version>
		</dependency>


	</dependencies>

	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</build>


</project>

o Web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns="http://java.sun.com/xml/ns/javaee" 
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" 
id="WebApp_ID" version="3.0">
  <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>*.xhtml</url-pattern>
    <url-pattern>*.jsf</url-pattern>
    <url-pattern></url-pattern>
    
  </servlet-mapping>
</web-app>

e o XHTML

<!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:f="http://java.sun.com/jsf/core"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:spring="http://www.springframework.org/tags"
      xmlns:form="http://www.springframework.org/tags/form"> 

<h:head>

</h:head> 
<body> 

<h:form>
nome:<h:inputText value="#{clienteController.p.nome}"/>
Observações:<h:inputText value="#{clienteController.p.obs}"/>
<h:commandButton value="#{clienteController.salvar}" action="Salvar"/>
</h:form>
</body> 
</html>

Quando você starta o projeto ele ta indo para página que deveria ir?

Tenta adicionar isto no web.xml

<welcome-file-list>
    <welcome-file>index.xhtml</welcome-file>
</welcome-file-list>

E defina a página que você quer que carrega ao iniciar

Tenta usar h:body

1 curtida

Lul nem notei isto. Muito provável de ser este o problema.

Nada ainda…

rezei para ser esse descuido. E nada.

Tenta adicionar isso ao web xml

    <context-param>
      <param-name>javax.faces.CONFIG_FILES</param-name>
      <param-value>/WEB-INF/faces-config.xml</param-value>
   </context-param>

<welcome-file-list>
    <welcome-file>index.xhtml</welcome-file>
  </welcome-file-list>
  <listener>

<h:commandButton value="#{clienteController.salvar}" action="Salvar"/>

ta errado o action é “#{clienteController.salvar}” e o value é o “Salvar”

ajeitei… nada

vou postar no git para melhor analise

olha o codigo fonte da página e cola aqui, o html.
da algum erro no console?

Não da erro. so nao aparece as tags.

botão direito exibir codigo fonte da pagina

a lib do jsf esta instalada? quando voce começa a digitar a tag no eclipse ela aparece o autocompletar?

No começo não. mas fuçando vi que tinha que ir em propriedades>facets e habilitar o JavaServerFaces

Respondendo diretamente, está sim.

O jsf não esta funcionando , voce tem a lib javax.faces-2.2.6.jar ou outra versão no se projeto?

1 curtida

/home/cleristonlincoln/.m2/repository/javax/faces/javax.faces-api/2.1/javax.faces-api-2.1.jar

exclui as dependencias no arquivo pom.xml salva, e adiciona novamente pra ele baixar e instalar

adiciona essa versão:

		<dependency>
			<groupId>com.sun.faces</groupId>
			<artifactId>jsf-api</artifactId>
			<version>2.1.6</version>
		</dependency>
		<dependency>
			<groupId>com.sun.faces</groupId>
			<artifactId>jsf-impl</artifactId>
			<version>2.1.6</version>
		</dependency>

mesmo jeito. vc quer o projeto e testar ai?

Estou usando springboot