Erro JPA + EclipseLink

0 respostas
java
A

Pessoal, estou estudando JPA+ EclipseLink.

Mas, está dando um erro. To o dia todo em frente a esse erro, mas, não consigo resolver.

O erro abaixo, dá quando executo : http://localhost:8080/TreinaWebJEE/listaTiposProduto.jsp

`HTTP Status 500 - javax.persistence.PersistenceException: Exception [EclipseLink-7107] (Eclipse Persistence Services - 2.6.3.v20160428-59c81c5): org.eclipse.persistence.exceptions.ValidationException

type Exception report

message javax.persistence.PersistenceException: Exception [EclipseLink-7107] (Eclipse Persistence Services - 2.6.3.v20160428-59c81c5): org.eclipse.persistence.exceptions.ValidationException

description The server encountered an internal error that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException: javax.persistence.PersistenceException: Exception [EclipseLink-7107] (Eclipse Persistence Services - 2.6.3.v20160428-59c81c5): org.eclipse.persistence.exceptions.ValidationException

Exception Description: Error encountered during string decryption.

Internal Exception: javax.crypto.IllegalBlockSizeException: Input length must be multiple of 8 when decrypting with padded cipher

org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:555)

org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:476)

org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:396)

org.apache.jasper.servlet.JspServlet.service(JspServlet.java:340)

javax.servlet.http.HttpServlet.service(HttpServlet.java:729)

org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
root cause

javax.persistence.PersistenceException: Exception [EclipseLink-7107] (Eclipse Persistence Services - 2.6.3.v20160428-59c81c5): org.eclipse.persistence.exceptions.ValidationException

Exception Description: Error encountered during string decryption.

Internal Exception: javax.crypto.IllegalBlockSizeException: Input length must be multiple of 8 when decrypting with padded cipher

org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:815)

org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.getAbstractSession(EntityManagerFactoryDelegate.java:205)

org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.createEntityManagerImpl(EntityManagerFactoryDelegate.java:305)

org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManagerImpl(EntityManagerFactoryImpl.java:337)

org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:303)

org.apache.jsp.listaTiposProduto_jsp._jspService(listaTiposProduto_jsp.java:139)

org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)

javax.servlet.http.HttpServlet.service(HttpServlet.java:729)

org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:438)

org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:396)

org.apache.jasper.servlet.JspServlet.service(JspServlet.java:340)

javax.servlet.http.HttpServlet.service(HttpServlet.java:729)

org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
root cause

Exception [EclipseLink-7107] (Eclipse Persistence Services - 2.6.3.v20160428-59c81c5): org.eclipse.persistence.exceptions.ValidationException

Exception Description: Error encountered during string decryption.

Internal Exception: javax.crypto.IllegalBlockSizeException: Input length must be multiple of 8 when decrypting with padded cipher

org.eclipse.persistence.exceptions.ValidationException.errorDecryptingPassword(ValidationException.java:894)

org.eclipse.persistence.internal.security.JCEEncryptor.decryptPassword(JCEEncryptor.java:114)

org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.updateLogins(EntityManagerSetupImpl.java:2404)

org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.updateSession(EntityManagerSetupImpl.java:2716)

org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:710)

org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.getAbstractSession(EntityManagerFactoryDelegate.java:205)

org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.createEntityManagerImpl(EntityManagerFactoryDelegate.java:305)

org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManagerImpl(EntityManagerFactoryImpl.java:337)

org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:303)

org.apache.jsp.listaTiposProduto_jsp._jspService(listaTiposProduto_jsp.java:139)

org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)

javax.servlet.http.HttpServlet.service(HttpServlet.java:729)

org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:438)

org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:396)

org.apache.jasper.servlet.JspServlet.service(JspServlet.java:340)

javax.servlet.http.HttpServlet.service(HttpServlet.java:729)

org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
root cause

javax.crypto.IllegalBlockSizeException: Input length must be multiple of 8 when decrypting with padded cipher

com.sun.crypto.provider.CipherCore.doFinal(CipherCore.java:750)

com.sun.crypto.provider.CipherCore.doFinal(CipherCore.java:676)

com.sun.crypto.provider.DESCipher.engineDoFinal(DESCipher.java:314)

javax.crypto.Cipher.doFinal(Cipher.java:2087)

org.eclipse.persistence.internal.security.JCEEncryptor.decryptPassword(JCEEncryptor.java:109)

org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.updateLogins(EntityManagerSetupImpl.java:2404)

org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.updateSession(EntityManagerSetupImpl.java:2716)

org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:710)

org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.getAbstractSession(EntityManagerFactoryDelegate.java:205)

org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.createEntityManagerImpl(EntityManagerFactoryDelegate.java:305)

org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManagerImpl(EntityManagerFactoryImpl.java:337)

org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:303)

org.apache.jsp.listaTiposProduto_jsp._jspService(listaTiposProduto_jsp.java:139)

org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)

javax.servlet.http.HttpServlet.service(HttpServlet.java:729)

org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:438)

org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:396)

org.apache.jasper.servlet.JspServlet.service(JspServlet.java:340)

javax.servlet.http.HttpServlet.service(HttpServlet.java:729)

org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

note The full stack trace of the root cause is available in the Apache Tomcat/8.0.33 logs.


Apache Tomcat/8.0.33`

Página JSP listaTiposProduto.jsp

`	

<%<a class="mention" href="/u/page">@page</a> import=“javax.persistence.EntityManager”%>

<%<a class="mention" href="/u/page">@page</a> import=“javax.persistence.Persistence”%>

<%<a class="mention" href="/u/page">@page</a> import=“javax.persistence.Query”%>

<%<a class="mention" href="/u/page">@page</a> import=“javax.persistence.EntityManagerFactory”%>

<%<a class="mention" href="/u/page">@page</a> import=“br.com.treinaweb.jee.models.TipoProduto”%>

<%<a class="mention" href="/u/page">@page</a> import=“java.util.List”%>

<%@ page language=java contentType="text/html; charset=ISO-8859-1"

pageEncoding=ISO-8859-1%>
Insert title here <% EntityManagerFactory factory = Persistence.createEntityManagerFactory("TwPersistenceUnit"); EntityManager em = factory.createEntityManager(); Query q = em.createQuery("SELECT tp FROM TipoProduto tp"); List tiposProduto = q.getResultList(); out.print(""); out.print(""); out.print(""); out.print("< thead>"); out.print(" "); out.print(" "); out.print(" "); out.print(" "); out.print(" "); out.print(" "); for (TipoProduto tp : tiposProduto) { out.print(" "); out.print(" "); out.print(" "); out.print(" "); } out.print(" "); out.print("
"); out.print(" Id"); out.print(" "); out.print(" Tipo de Produto"); out.print("
"); out.print(" " + tp.getId()); out.print(" "); out.print(" " + tp.getNome()); out.print("
"); out.print(""); out.print(""); %> `

Arquivo XML do JPA

<?xml version="1.0" encoding="UTF-8"?> <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_2_0.xsd" version="2.0" xmlns="http://java.sun.com/xml/ns/persistence"> <persistence-unit name="TwPersistenceUnit" transaction-type="RESOURCE_LOCAL"> <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider> <class>br.com.treinaweb.jee.models.TipoProduto</class> <properties> <property name="javax.persistence.jdbc.driver" value="org.postgresql.Driver" /> <property name="javax.persistence.jdbc.url" value="jdbc:postgresql://localhost/tw_java_intermediario"/> <property name="javax.persistence.jdbc.user" value="postgres"/> <property name="javax.persistence.jdbc.password" value="123456" /> <property name="eclipselink.ddl-generation" value="create-tables" /> <property name="eclipselink.ddl-generation.output-mode" value="database" /> </properties> </persistence-unit> </persistence>

Criado 5 de maio de 2016
Respostas 0
Participantes 1