[JPA] - [RESOLVIDO | jakefrog] Substituir classes EclipseLink por Hiberntate em um projeto JPA

23 respostas
G

Boa noite amigos,

Como eu faço para utilizar JPA+Hibernate em um projeto JPA no eclipse? Eu tenho o seguinte arquivo persistence.xml:
<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"
	version="1.0">

	<persistence-unit name="sisgappe" transaction-type="JTA">
		<provider>org.hibernate.ejb.HibernatePersistence</provider>
		<jta-data-source>jdbc/sisgappe</jta-data-source>
		<class>br.com.sisgappe.model.entity.Agricultor</class>
		<class>br.com.sisgappe.model.entity.Cidade</class>
		<class>br.com.sisgappe.model.entity.Endereco</class>
		<class>br.com.sisgappe.model.entity.Estado</class>
		<class>br.com.sisgappe.model.entity.EventoClimatico</class>
		<class>br.com.sisgappe.model.entity.Pecuarista</class>
		<class>br.com.sisgappe.model.entity.Perfil</class>
		<class>br.com.sisgappe.model.entity.Pescador</class>
		<class>br.com.sisgappe.model.entity.Sexo</class>
		<class>br.com.sisgappe.model.entity.Usuario</class>
		<properties>
			<property name="hibernate.show_sql" value="true" />
			<property name="hibernate.format_sql" value="true" />
			<property name="hibernate.hbm2ddl.auto" value="update" />
			<property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5InnoDBDialect" />
//mais código aqui
		</properties>
	</persistence-unit>
</persistence>

Eu já tentei importar o jar do hibernate3 no meu classpath, mas não surtiu efeito, continuo recebendo: ClassNotFoundException, org.hibernate.ejb.HibernatePersistence. Alguém tem ideia do que possa ser?

Desde jah, eu agradeço!

[]'s

23 Respostas

H

Aqui tem um passo a passo:
Hibernate 3 com JPA 2

Nele você vai encontrar o link para download das bibliotecas necessárias.

G

jakefrog:
Aqui tem um passo a passo:
Hibernate 3 com JPA 2

Nele você vai encontrar o link para download das bibliotecas necessárias.

Valeu jakefrog :D. Eh coisa simples vou ver certinho aqui.

Obrigado!

[]'s

H

Por nada mano, qualquer outra dúvida, poste aí. [=

G

A única motivação de eu querer substituir o EclipseLink pelo Hibernate na hora de fazer a engenharia reversa das tabelas, era por causa do create table e update, respectivamente.

Eu crio um projeto JPA para importa-lo em um projeto Web, mas mesmo seguindo o tutorial eu continuo a receber a exception.

Eu vi que quando eu utilizo o EclipseLink com o generation: create-table, caso as tabelas existam ele dah um warning (pequena exception) e não faz nada, portanto, eu não acho que tenha muita diferença para o update do Hibernate.

[]'s

H

Como você está importando esse projeto JPA?

G

Bom dia, velhão!

Eu suspeito que o problema seja esse, no meu projeto web eu vou em Build Path -> Project e adiciono, lembrando que o meu projeto Web, mais o projeto JPA estão em um EAR. :slight_smile:

Valeu!

[]'s

H

E qual servidor você está utilizando?

G

GlassFish 3.1 =/

H

Tenta colocar as libs que descritas lá no post dentro da pasta WebContent/WEB-INF/lib

Veja se resolve.

G

Tah tipo Santos x Barcelona aqui ^^

cannot Deploy sisgappeEAR Deployment Error for module: sisgappeEAR: Error occurred during deployment: Exception while preparing the app : java.lang.ClassNotFoundException: org.hibernate.ejb.HibernatePersistence. Please see server.log for more details.

Os jars jah estavam tanto no projeto JPA quando no Web (pasta lib).

H

Nem tanto. O placar ainda ta baixo… tsc…

Tem como colocar o erro completo?

G
jakefrog:
Nem tanto. O placar ainda ta baixo... tsc...

Tem como colocar o erro completo?

Obrigado pela força!
SEVERE: Exception while invoking class org.glassfish.persistence.jpa.JPADeployer prepare method
SEVERE: Exception while preparing the app
SEVERE: java.lang.ClassNotFoundException: org.hibernate.ejb.HibernatePersistence
java.lang.RuntimeException: java.lang.ClassNotFoundException: org.hibernate.ejb.HibernatePersistence
	at org.glassfish.persistence.jpa.PersistenceUnitLoader.loadPU(PersistenceUnitLoader.java:179)
	at org.glassfish.persistence.jpa.PersistenceUnitLoader.<init>(PersistenceUnitLoader.java:119)
	at org.glassfish.persistence.jpa.JPADeployer$1.visitPUD(JPADeployer.java:214)
	at org.glassfish.persistence.jpa.JPADeployer$PersistenceUnitDescriptorIterator.iteratePUDs(JPADeployer.java:483)
	at org.glassfish.persistence.jpa.JPADeployer.createEMFs(JPADeployer.java:221)
	at org.glassfish.persistence.jpa.JPADeployer.prepare(JPADeployer.java:167)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.prepareModule(ApplicationLifecycle.java:872)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:410)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:240)
	at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:382)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$1.execute(CommandRunnerImpl.java:355)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:370)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1064)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1200(CommandRunnerImpl.java:96)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1244)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1232)
	at com.sun.enterprise.v3.admin.AdminAdapter.doCommand(AdminAdapter.java:459)
	at com.sun.enterprise.v3.admin.AdminAdapter.service(AdminAdapter.java:209)
	at com.sun.grizzly.tcp.http11.GrizzlyAdapter.service(GrizzlyAdapter.java:168)
	at com.sun.enterprise.v3.server.HK2Dispatcher.dispath(HK2Dispatcher.java:117)
	at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:238)
	at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:828)
	at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:725)
	at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1019)
	at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:225)
	at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
	at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
	at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
	at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
	at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
	at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
	at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
	at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
	at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
	at java.lang.Thread.run(Thread.java:722)
Caused by: java.lang.ClassNotFoundException: org.hibernate.ejb.HibernatePersistence
	at com.sun.enterprise.loader.ASURLClassLoader.findClassData(ASURLClassLoader.java:808)
	at com.sun.enterprise.loader.ASURLClassLoader.findClass(ASURLClassLoader.java:696)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
	at org.glassfish.persistence.jpa.PersistenceUnitLoader.loadPU(PersistenceUnitLoader.java:173)
	... 34 more

SEVERE: Exception while preparing the app : java.lang.ClassNotFoundException: org.hibernate.ejb.HibernatePersistence
java.lang.ClassNotFoundException: org.hibernate.ejb.HibernatePersistence
	at com.sun.enterprise.loader.ASURLClassLoader.findClassData(ASURLClassLoader.java:808)
	at com.sun.enterprise.loader.ASURLClassLoader.findClass(ASURLClassLoader.java:696)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
	at org.glassfish.persistence.jpa.PersistenceUnitLoader.loadPU(PersistenceUnitLoader.java:173)
	at org.glassfish.persistence.jpa.PersistenceUnitLoader.<init>(PersistenceUnitLoader.java:119)
	at org.glassfish.persistence.jpa.JPADeployer$1.visitPUD(JPADeployer.java:214)
	at org.glassfish.persistence.jpa.JPADeployer$PersistenceUnitDescriptorIterator.iteratePUDs(JPADeployer.java:483)
	at org.glassfish.persistence.jpa.JPADeployer.createEMFs(JPADeployer.java:221)
	at org.glassfish.persistence.jpa.JPADeployer.prepare(JPADeployer.java:167)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.prepareModule(ApplicationLifecycle.java:872)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:410)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:240)
	at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:382)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$1.execute(CommandRunnerImpl.java:355)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:370)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1064)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1200(CommandRunnerImpl.java:96)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1244)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1232)
	at com.sun.enterprise.v3.admin.AdminAdapter.doCommand(AdminAdapter.java:459)
	at com.sun.enterprise.v3.admin.AdminAdapter.service(AdminAdapter.java:209)
	at com.sun.grizzly.tcp.http11.GrizzlyAdapter.service(GrizzlyAdapter.java:168)
	at com.sun.enterprise.v3.server.HK2Dispatcher.dispath(HK2Dispatcher.java:117)
	at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:238)
	at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:828)
	at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:725)
	at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1019)
	at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:225)
	at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
	at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
	at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
	at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
	at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
	at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
	at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
	at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
	at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
	at java.lang.Thread.run(Thread.java:722)
H

Então faz o seguinte, vc ta utilizando Eclipse ou Netbeans?

Se for eclipse, manda exportar sua aplicação como EAR ou WAR sei lah como ela é exportada. Veja se as libs estão indo.

G

Realmente, os jars não estão no EAR.

H

Achamos o problema! \o\

Tenta colocar os jars dentro da pasta lib do seu glassfish (obs.: não sei onde q fica essa pasta!) =P

G

Agora o erro mudou, to ficando maluko :P

MB:
package br.com.sisgappe.view.teste;

import java.io.Serializable;

import javax.ejb.EJB;

import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;

import br.com.sisgappe.model.dao.facade.AgriculturaFacade;
import br.com.sisgappe.model.entity.Agricultor;

@ManagedBean
@ViewScoped
public class AgricultorMB implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	@EJB
	private AgriculturaFacade agriculturaFacade;
	private Agricultor agricultor;
	private int idSexo;

	public AgricultorMB() {
		this.atualizarTela();
	}

	public void atualizarTela() {
		this.setAgricultor(new Agricultor());
	}

	public void setAgricultor(Agricultor agricultor) {
		this.agricultor = agricultor;
	}

	public Agricultor getAgricultor() {
		return agricultor;
	}

	public void listAll() {
		this.agriculturaFacade.listAll(this.getAgricultor());
	}

	public int getIdSexo() {
		return idSexo;
	}

	public void setIdSexo(int idSexo) {
		this.idSexo = idSexo;
	}

	public String save() {
		this.agriculturaFacade.save(this.getAgricultor());
		this.atualizarTela();
		return "/sucesso";
	}
}
entity
package br.com.sisgappe.model.entity;

import java.io.Serializable;
import javax.persistence.*;
import java.util.Set;


/**
 * The persistent class for the agricultor database table.
 * 
 */
@Entity
@Table(name="agricultor")
public class Agricultor implements Serializable {
	private static final long serialVersionUID = 1L;

	@Id
	@GeneratedValue(strategy=GenerationType.IDENTITY)
	private int idagricultor;

	private String cpf;

	@Column(name="data_nascimento")
	private String dataNascimento;

	@Column(name="evento_terrestreideventoterrestre")
	private int eventoTerrestreideventoterrestre;

	private String nome;

	@Column(name="telefone_celular")
	private String telefoneCelular;

	@Column(name="telefone_residencial")
	private String telefoneResidencial;

	//bi-directional many-to-one association to Cidade
	@ManyToOne(fetch=FetchType.LAZY)
	@JoinColumn(name="cidadeidcidade")
	private Cidade cidade;

	//bi-directional many-to-one association to Endereco
	@ManyToOne(fetch=FetchType.LAZY)
	@JoinColumn(name="enderecoidendereco")
	private Endereco endereco;

	//bi-directional many-to-one association to Sexo
	@ManyToOne(fetch=FetchType.LAZY)
	@JoinColumn(name="sexoidsexo")
	private Sexo sexo;

	//bi-directional many-to-one association to Usuario
	@ManyToOne(fetch=FetchType.LAZY)
	@JoinColumn(name="usuarioidusuario")
	private Usuario usuario;

	//bi-directional many-to-many association to EventoClimatico
	@ManyToMany(mappedBy="agricultors")
	private Set&lt;EventoClimatico&gt; eventoClimaticos;

    public Agricultor() {
    }

	public int getIdagricultor() {
		return this.idagricultor;
	}

	public void setIdagricultor(int idagricultor) {
		this.idagricultor = idagricultor;
	}

	public String getCpf() {
		return this.cpf;
	}

	public void setCpf(String cpf) {
		this.cpf = cpf;
	}

	public String getDataNascimento() {
		return this.dataNascimento;
	}

	public void setDataNascimento(String dataNascimento) {
		this.dataNascimento = dataNascimento;
	}

	public int getEventoTerrestreideventoterrestre() {
		return this.eventoTerrestreideventoterrestre;
	}

	public void setEventoTerrestreideventoterrestre(int eventoTerrestreideventoterrestre) {
		this.eventoTerrestreideventoterrestre = eventoTerrestreideventoterrestre;
	}

	public String getNome() {
		return this.nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}

	public String getTelefoneCelular() {
		return this.telefoneCelular;
	}

	public void setTelefoneCelular(String telefoneCelular) {
		this.telefoneCelular = telefoneCelular;
	}

	public String getTelefoneResidencial() {
		return this.telefoneResidencial;
	}

	public void setTelefoneResidencial(String telefoneResidencial) {
		this.telefoneResidencial = telefoneResidencial;
	}

	public Cidade getCidade() {
		return this.cidade;
	}

	public void setCidade(Cidade cidade) {
		this.cidade = cidade;
	}
	
	public Endereco getEndereco() {
		return this.endereco;
	}

	public void setEndereco(Endereco endereco) {
		this.endereco = endereco;
	}
	
	public Sexo getSexo() {
		return this.sexo;
	}

	public void setSexo(Sexo sexo) {
		this.sexo = sexo;
	}
	
	public Usuario getUsuario() {
		return this.usuario;
	}

	public void setUsuario(Usuario usuario) {
		this.usuario = usuario;
	}
	
	public Set&lt;EventoClimatico&gt; getEventoClimaticos() {
		return this.eventoClimaticos;
	}

	public void setEventoClimaticos(Set&lt;EventoClimatico&gt; eventoClimaticos) {
		this.eventoClimaticos = eventoClimaticos;
	}
	
}
Exception:
SEVERE: Error Rendering View[/cadastro_agricultor.xhtml]
javax.el.PropertyNotFoundException: /cadastro_agricultor.xhtml @20,34 value="#{agricultorMB.agricultor.nome}": Target Unreachable, identifier 'agricultorMB' resolved to null
	at com.sun.faces.facelets.el.TagValueExpression.getType(TagValueExpression.java:100)
	at org.primefaces.util.ComponentUtils.getValueToRender(ComponentUtils.java:75)
	at org.primefaces.component.inputtext.InputTextRenderer.encodeMarkup(InputTextRenderer.java:83)
	at org.primefaces.component.inputtext.InputTextRenderer.encodeEnd(InputTextRenderer.java:50)
	at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:875)
	at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:312)
	at com.sun.faces.renderkit.html_basic.GridRenderer.renderRow(GridRenderer.java:185)
	at com.sun.faces.renderkit.html_basic.GridRenderer.encodeChildren(GridRenderer.java:129)
	at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:845)
	at org.primefaces.renderkit.CoreRenderer.renderChild(CoreRenderer.java:58)
	at org.primefaces.renderkit.CoreRenderer.renderChildren(CoreRenderer.java:46)
	at org.primefaces.component.panel.PanelRenderer.encodeContent(PanelRenderer.java:185)
	at org.primefaces.component.panel.PanelRenderer.encodeMarkup(PanelRenderer.java:108)
	at org.primefaces.component.panel.PanelRenderer.encodeEnd(PanelRenderer.java:55)
	at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:875)
	at org.primefaces.renderkit.CoreRenderer.renderChild(CoreRenderer.java:62)
	at org.primefaces.renderkit.CoreRenderer.renderChildren(CoreRenderer.java:46)
	at org.primefaces.component.fieldset.FieldsetRenderer.encodeContent(FieldsetRenderer.java:86)
	at org.primefaces.component.fieldset.FieldsetRenderer.encodeMarkup(FieldsetRenderer.java:68)
	at org.primefaces.component.fieldset.FieldsetRenderer.encodeEnd(FieldsetRenderer.java:45)
	at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:875)
	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1763)
	at javax.faces.render.Renderer.encodeChildren(Renderer.java:168)
	at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:845)
	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1756)
	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1759)
	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1759)
	at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:401)
	at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:131)
	at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:121)
	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
	at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:594)
	at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1539)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:281)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
	at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:655)
	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:595)
	at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:98)
	at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:91)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:162)
	at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:330)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:231)
	at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:174)
	at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:828)
	at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:725)
	at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1019)
	at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:225)
	at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
	at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
	at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
	at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
	at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
	at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
	at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
	at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
	at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
	at java.lang.Thread.run(Thread.java:722)

WARNING: StandardWrapperValve[Faces Servlet]: PWC1406: Servlet.service() for servlet Faces Servlet threw exception
javax.el.PropertyNotFoundException: /cadastro_agricultor.xhtml @20,34 value="#{agricultorMB.agricultor.nome}": Target Unreachable, identifier 'agricultorMB' resolved to null
	at com.sun.faces.facelets.el.TagValueExpression.getType(TagValueExpression.java:100)
	at org.primefaces.util.ComponentUtils.getValueToRender(ComponentUtils.java:75)
	at org.primefaces.component.inputtext.InputTextRenderer.encodeMarkup(InputTextRenderer.java:83)
	at org.primefaces.component.inputtext.InputTextRenderer.encodeEnd(InputTextRenderer.java:50)
	at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:875)
	at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:312)
	at com.sun.faces.renderkit.html_basic.GridRenderer.renderRow(GridRenderer.java:185)
	at com.sun.faces.renderkit.html_basic.GridRenderer.encodeChildren(GridRenderer.java:129)
	at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:845)
	at org.primefaces.renderkit.CoreRenderer.renderChild(CoreRenderer.java:58)
	at org.primefaces.renderkit.CoreRenderer.renderChildren(CoreRenderer.java:46)
	at org.primefaces.component.panel.PanelRenderer.encodeContent(PanelRenderer.java:185)
	at org.primefaces.component.panel.PanelRenderer.encodeMarkup(PanelRenderer.java:108)
	at org.primefaces.component.panel.PanelRenderer.encodeEnd(PanelRenderer.java:55)
	at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:875)
	at org.primefaces.renderkit.CoreRenderer.renderChild(CoreRenderer.java:62)
	at org.primefaces.renderkit.CoreRenderer.renderChildren(CoreRenderer.java:46)
	at org.primefaces.component.fieldset.FieldsetRenderer.encodeContent(FieldsetRenderer.java:86)
	at org.primefaces.component.fieldset.FieldsetRenderer.encodeMarkup(FieldsetRenderer.java:68)
	at org.primefaces.component.fieldset.FieldsetRenderer.encodeEnd(FieldsetRenderer.java:45)
	at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:875)
	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1763)
	at javax.faces.render.Renderer.encodeChildren(Renderer.java:168)
	at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:845)
	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1756)
	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1759)
	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1759)
	at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:401)
	at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:131)
	at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:121)
	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
	at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:594)
	at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1539)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:281)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
	at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:655)
	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:595)
	at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:98)
	at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:91)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:162)
	at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:330)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:231)
	at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:174)
	at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:828)
	at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:725)
	at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1019)
	at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:225)
	at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
	at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
	at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
	at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
	at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
	at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
	at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
	at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
	at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
	at java.lang.Thread.run(Thread.java:722)
H

Seu get está retornando um atributo que null

#{agricultorMB.agricultor.nome}

falça algo do tipo (fiz mais ou menos, faz o trem direito ai).

getAgricultor(){
    if (agricultor == null){
        agricultor = new Agriculto();
    }

    return agricultor;
}
G

pior que não viu rapaz, eu cheguei a instanciar o objeto, muito estranho, acho que essa pratica de ficar importando as coisas não dah muito certo.

H

Faz um teste então troca de ViewScoped para Request

G

Testei todos, eu vou dah um jeito aqui, acho que assim não vai msm.

Muito obrigado, meu velho! abração

H

Faz um ultimo teste. Seu problema agora é JSF e não Hibernate. Até então funfou o hibernate.

Troca seus imports por (E coloque a anotação @RequestScoped):
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;

E, caso não exista, crie o arquivos faces-config.xml abaixo na pasta WEB-INF:
<?xml version="1.0"?>
<faces-config 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-facesconfig_2_0.xsd"
 
   version="2.0">
  <!--
      Let's keep it empty. In JSF 2.0 we use annotations.
  -->
</faces-config>
G
jakefrog:
Faz um ultimo teste. Seu problema agora é JSF e não Hibernate. Até então funfou o hibernate.

Troca seus imports por (E coloque a anotação @RequestScoped):
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;

E, caso não exista, crie o arquivos faces-config.xml abaixo na pasta WEB-INF:
<?xml version="1.0"?>
<faces-config 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-facesconfig_2_0.xsd"
 
   version="2.0">
  <!--
      Let's keep it empty. In JSF 2.0 we use annotations.
  -->
</faces-config>

Funfou o/, kkkkkkkkkk

Cara, o problema era casaço mental, uma coisa muito besta. Funfou com @ViewScoped mesmo, ficou do jeitinho que eu queria.

Irmão, desculpa te alugar ai, se vier a SP me avisa pra eu te pagar umas skol. hehe

Boas festas, tudo de bom pra vc e sua famila!!

abração!!

H

Então já eh! Qualquer coisa, só chamar! [=

Feliz festas aí. [=

Criado 18 de dezembro de 2011
Ultima resposta 19 de dez. de 2011
Respostas 23
Participantes 2