[Logo] PortalJava
  [Search] Busca   [Recent Topics] Tópicos Recentes   [Hottest Topics] Tópicos Quentes   [Members]  Lista de Usuários   [Groups] De volta para a página principal 
[Moderation Log] Log de moderação  
Web Service: RESTEasy + Hibernate  XML
Índice dos Fóruns » Java para a Web
Autor Mensagem
serjaumfantin
What is Tomcat?
[Avatar]

Membro desde: 29/06/2007 00:00:00
Mensagens: 84
Offline

Olá pessoal,

estou com um problema no meu serviço que usa RESTEasy + Hibernate.
Consigo utilizar meus serviços mais simples normalmente, mas quando faço chamadas a métodos que fazem persistência, recebo um erro no Tomcat.

Segue um trecho do código do serviço:

Quando eu faço a chamadas..


... recebo as respostas:
OK!!

Hello Mr. Sergio


Mas quando chamo...

... recebo o erro:

INFO: Starting Coyote HTTP/1.1 on http-8080
03/10/2008 12:29:43 org.apache.jk.common.ChannelSocket init
INFO: JK: ajp13 listening on /0.0.0.0:8009
03/10/2008 12:29:44 org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=0/77 config=null
03/10/2008 12:29:44 org.apache.catalina.startup.Catalina start
INFO: Server startup in 9504 ms
log4j:WARN No appenders could be found for logger (org.hibernate.cfg.annotations.Version).
log4j:WARN Please initialize the log4j system properly.
java.lang.RuntimeException: Failed processing public com.restful.resteasy.bo.Person com.restful.resteasy.restservice.PersonREST.findPerson(java.lang.Long)
at org.resteasy.MethodInjectorImpl.invoke(MethodInjectorImpl.java:109)
at org.resteasy.ResourceMethod.invoke(ResourceMethod.java:162)
at org.resteasy.ResourceMethod.invoke(ResourceMethod.java:134)
at org.resteasy.Dispatcher.invoke(Dispatcher.java:161)
at org.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:138)
at org.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:77)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.ExceptionInInitializerError
at com.restful.resteasy.dao.DaoFactory.<init>(DaoFactory.java:13)
at com.restful.resteasy.service.PersonServiceImpl.<init>(PersonServiceImpl.java:14)
at com.restful.resteasy.restservice.PersonREST.findPerson(PersonREST.java:47)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.resteasy.MethodInjectorImpl.invoke(MethodInjectorImpl.java:72)
... 18 more
Caused by: org.hibernate.HibernateException: Hibernate Dialect must be explicitly set
at org.hibernate.dialect.DialectFactory.determineDialect(DialectFactory.java:80)
at org.hibernate.dialect.DialectFactory.buildDialect(DialectFactory.java:62)
at org.hibernate.cfg.SettingsFactory.determineDialect(SettingsFactory.java:460)
at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:155)
at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2101)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1325)
at org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:867)
at com.restful.resteasy.dao.HibernateSessionFactory.<clinit>(HibernateSessionFactory.java:17)
... 26 more


A camada de persistência funciona perfeitamente sem o uso de REST.

Alguém pode ajudar?

Agradeço antecipadamente!

serjaum.wordpress.com
[WWW] [MSN]
RafaelJ
What is Servlet?

Membro desde: 07/03/2004 00:00:00
Mensagens: 155
Localização: Sao Bernardo
Offline

O problema tá na sua compreensão do conceito de REST.

Tenha sempre,eu disse "SEMPRE", em mente que REST é HTTP puro e simples.

Tendo dito isso, como você espera retornar um objeto Person no método 'findPerson'? Como você espera mapear o objeto Person no protocolo HTTP?

Retorne esse objeto em outro formato: XML, JSON, InputStream, etc.

This message was edited 1 time. Last update was at 03/10/2008 17:39:07

[Email] [WWW] [MSN]
serjaumfantin
What is Tomcat?
[Avatar]

Membro desde: 29/06/2007 00:00:00
Mensagens: 84
Offline

Tomei como base este código, não atentando para este detalhe:

Fonte: http://wiki.jboss.org/wiki/JAXRSResourceLocators

serjaum.wordpress.com
[WWW] [MSN]
RafaelJ
What is Servlet?

Membro desde: 07/03/2004 00:00:00
Mensagens: 155
Localização: Sao Bernardo
Offline

Só para esclarecer, a forma de retornar um objeto via serviço REST varia de framework para framework, pois não é definido isso na especificação da JSR 311.

Eu particularmente sempre evito fazer isso, dando preferência a retornar XML, JSON, InputStream, etc.

Rafael Nunes

This message was edited 1 time. Last update was at 20/10/2008 13:41:57

[Email] [WWW] [MSN]
fabiofalci
What is Frameworks?
[Avatar]

Membro desde: 10/03/2005 00:00:00
Mensagens: 568
Localização: Porto Alegre - RS
Offline

Tu já testou a tua persistencia diretamente? Um teste unitário?

Olha a msg de erro na tua exception



Ou seja, não está configurado o dialeto do banco

http://fabiofalci.tumblr.com
[WWW] [MSN] [ICQ]
 
Índice dos Fóruns » Java para a Web
Ir para:   
Powered by JForum 2.1.8 © JForum Team