Mydvds + Postgresql erro 2 ![resolvido]

8 respostas
juniorsatanas

Pessoal eu modifiquei a Classe User para Usuário, no Mydvds, pois com o nome User não criava a Tabela, pois User é uma palavra reservada do SQL, agora ta tudo ok, gerou as 3 tabelas !

SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/home/junior/workspace/vraptor-mydvds/WebContent/WEB-INF/lib/slf4j-log4j12-1.5.8.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/home/junior/vraptor-mydvds-3.1.2/WebContent/WEB-INF/lib/slf4j-log4j12.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/home/junior/vraptor-mydvds-3.1.2/WebContent/WEB-INF/lib/slf4j-log4j12-1.5.8.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
08:38:14,304  INFO [Version             ] Hibernate Annotations 3.4.0.GA
08:38:14,312  INFO [Environment         ] Hibernate 3.3.2.GA
08:38:14,313  INFO [Environment         ] hibernate.properties not found
08:38:14,316  INFO [Environment         ] Bytecode provider name : javassist
08:38:14,318  INFO [Environment         ] using JDK 1.4 java.sql.Timestamp handling
08:38:14,362  INFO [Version             ] Hibernate Commons Annotations 3.1.0.GA
08:38:14,364  INFO [Configuration       ] configuring from resource: /hibernate.cfg.xml
08:38:14,364  INFO [Configuration       ] Configuration resource: /hibernate.cfg.xml
08:38:14,443  INFO [Configuration       ] Configured SessionFactory: null
08:38:14,453  INFO [Dialect             ] Using dialect: org.hibernate.dialect.PostgreSQLDialect
08:38:14,535  INFO [AnnotationBinder    ] Binding entity from annotated class: br.com.caelum.vraptor.mydvds.model.Dvd
08:38:14,554  INFO [EntityBinder        ] Bind entity br.com.caelum.vraptor.mydvds.model.Dvd on table Dvd
08:38:14,602  INFO [AnnotationBinder    ] Binding entity from annotated class: br.com.caelum.vraptor.mydvds.model.DvdRental
08:38:14,602  INFO [EntityBinder        ] Bind entity br.com.caelum.vraptor.mydvds.model.DvdRental on table DvdRental
08:38:14,608  INFO [AnnotationBinder    ] Binding entity from annotated class: br.com.caelum.vraptor.mydvds.model.Usuario
08:38:14,608  INFO [EntityBinder        ] Bind entity br.com.caelum.vraptor.mydvds.model.Usuario on table Usuario
08:38:14,630  INFO [CollectionBinder    ] Mapping collection: br.com.caelum.vraptor.mydvds.model.Dvd.rents -> DvdRental
08:38:14,631  INFO [CollectionBinder    ] Mapping collection: br.com.caelum.vraptor.mydvds.model.Usuario.rents -> DvdRental
08:38:14,634  INFO [Version             ] Hibernate Validator 3.1.0.GA
08:38:14,692  INFO [SchemaExport        ] Running hbm2ddl schema export
08:38:14,692  INFO [SchemaExport        ] exporting generated schema to database
08:38:14,715  INFO [DriverManagerConnectionProvider] Using Hibernate built-in connection pool (not for production use!)
08:38:14,715  INFO [DriverManagerConnectionProvider] Hibernate connection pool size: 20
08:38:14,715  INFO [DriverManagerConnectionProvider] autocommit mode: false
08:38:14,722  INFO [DriverManagerConnectionProvider] using driver: org.postgresql.Driver at URL: jdbc:postgresql://localhost:5432/nutec
08:38:14,722  INFO [DriverManagerConnectionProvider] connection properties: {user=root, password=****}
alter table DvdRental drop constraint FK7F97B9B6126E7F4D
alter table DvdRental drop constraint FK7F97B9B6BBEC2ABC
drop table Dvd
drop table DvdRental
drop table Usuario
drop sequence hibernate_sequence
create table Dvd (id int8 not null, description varchar(255), title varchar(255), type varchar(255), primary key (id))
create table DvdRental (id int8 not null, dvd_id int8, owner_login varchar(20), primary key (id))
create table Usuario (login varchar(20) not null, name varchar(100) not null, password varchar(20) not null, primary key (login))
alter table DvdRental add constraint FK7F97B9B6126E7F4D foreign key (owner_login) references Usuario
alter table DvdRental add constraint FK7F97B9B6BBEC2ABC foreign key (dvd_id) references Dvd
create sequence hibernate_sequence
08:38:15,087  INFO [SchemaExport        ] schema export complete
08:38:15,087  INFO [DriverManagerConnectionProvider] cleaning up connection pool: jdbc:postgresql://localhost:5432/nutec
08:38:15,096  INFO [DriverManagerConnectionProvider] cleaning up connection pool: jdbc:postgresql://localhost:5432/nutec

========================================= PORÉM ===============================================

HTTP Status 500 -

type Exception report

message

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

exception

org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'hibernateTransactionInterceptor': Unsatisfied dependency expressed through constructor argument with index 0 of type [org.hibernate.Session]: : Error creating bean with name 'br.com.caelum.vraptor.util.hibernate.SessionCreator': FactoryBean threw exception on object creation; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sessionCreator': Unsatisfied dependency expressed through constructor argument with index 0 of type [org.hibernate.SessionFactory]: : Error creating bean with name 'br.com.caelum.vraptor.util.hibernate.SessionFactoryCreator': FactoryBean threw exception on object creation; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactoryCreator': Invocation of init method failed; nested exception is org.hibernate.HibernateException: JDBC Driver class not found: org.postgresql.Driver; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'br.com.caelum.vraptor.util.hibernate.SessionFactoryCreator': FactoryBean threw exception on object creation; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactoryCreator': Invocation of init method failed; nested exception is org.hibernate.HibernateException: JDBC Driver class not found: org.postgresql.Driver; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'br.com.caelum.vraptor.util.hibernate.SessionCreator': FactoryBean threw exception on object creation; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sessionCreator': Unsatisfied dependency expressed through constructor argument with index 0 of type [org.hibernate.SessionFactory]: : Error creating bean with name 'br.com.caelum.vraptor.util.hibernate.SessionFactoryCreator': FactoryBean threw exception on object creation; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactoryCreator': Invocation of init method failed; nested exception is org.hibernate.HibernateException: JDBC Driver class not found: org.postgresql.Driver; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'br.com.caelum.vraptor.util.hibernate.SessionFactoryCreator': FactoryBean threw exception on object creation; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactoryCreator': Invocation of init method failed; nested exception is org.hibernate.HibernateException: JDBC Driver class not found: org.postgresql.Driver
	org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:698)
	org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:192)
	org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:984)
	org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:886)
	org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:479)
	org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:450)
	org.springframework.beans.factory.support.AbstractBeanFactory$2.getObject(AbstractBeanFactory.java:328)
	org.springframework.web.context.request.AbstractRequestAttributesScope.get(AbstractRequestAttributesScope.java:43)
	org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:324)
	org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
	org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeansOfType(DefaultListableBeanFactory.java:385)
	org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeansOfType(DefaultListableBeanFactory.java:375)
	org.springframework.context.support.AbstractApplicationContext.getBeansOfType(AbstractApplicationContext.java:1069)
	org.springframework.beans.factory.BeanFactoryUtils.beansOfTypeIncludingAncestors(BeanFactoryUtils.java:221)
	br.com.caelum.vraptor.ioc.spring.VRaptorApplicationContext.getBean(VRaptorApplicationContext.java:253)
	br.com.caelum.vraptor.ioc.spring.SpringBasedContainer.instanceFor(SpringBasedContainer.java:59)
	br.com.caelum.vraptor.util.collections.Functions$1.apply(Functions.java:32)
	br.com.caelum.vraptor.util.collections.Functions$1.apply(Functions.java:30)
	com.google.common.collect.Lists$TransformingRandomAccessList.get(Lists.java:431)
	java.util.AbstractList$Itr.next(AbstractList.java:345)
	com.google.common.collect.Iterators$7.computeNext(Iterators.java:602)
	com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:135)
	com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:130)
	com.google.common.collect.Lists.newArrayList(Lists.java:131)
	com.google.common.collect.Collections2$FilteredCollection.toArray(Collections2.java:219)
	br.com.caelum.vraptor.interceptor.DefaultInterceptorRegistry.interceptorsFor(DefaultInterceptorRegistry.java:50)
	br.com.caelum.vraptor.interceptor.InterceptorListPriorToExecutionExtractor.intercept(InterceptorListPriorToExecutionExtractor.java:42)
	br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:65)
	br.com.caelum.vraptor.interceptor.FlashInterceptor.intercept(FlashInterceptor.java:81)
	br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:65)
	br.com.caelum.vraptor.interceptor.ResourceLookupInterceptor.intercept(ResourceLookupInterceptor.java:67)
	br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:65)
	br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:56)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:65)
	br.com.caelum.vraptor.core.DefaultRequestExecution.execute(DefaultRequestExecution.java:70)
	br.com.caelum.vraptor.VRaptor$1.insideRequest(VRaptor.java:92)
	br.com.caelum.vraptor.ioc.spring.SpringProvider.provideForRequest(SpringProvider.java:56)
	br.com.caelum.vraptor.VRaptor.doFilter(VRaptor.java:89)

root cause

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'br.com.caelum.vraptor.util.hibernate.SessionCreator': FactoryBean threw exception on object creation; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sessionCreator': Unsatisfied dependency expressed through constructor argument with index 0 of type [org.hibernate.SessionFactory]: : Error creating bean with name 'br.com.caelum.vraptor.util.hibernate.SessionFactoryCreator': FactoryBean threw exception on object creation; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactoryCreator': Invocation of init method failed; nested exception is org.hibernate.HibernateException: JDBC Driver class not found: org.postgresql.Driver; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'br.com.caelum.vraptor.util.hibernate.SessionFactoryCreator': FactoryBean threw exception on object creation; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactoryCreator': Invocation of init method failed; nested exception is org.hibernate.HibernateException: JDBC Driver class not found: org.postgresql.Driver
	org.springframework.beans.factory.support.FactoryBeanRegistrySupport.doGetObjectFromFactoryBean(FactoryBeanRegistrySupport.java:150)
	org.springframework.beans.factory.support.FactoryBeanRegistrySupport.getObjectFromFactoryBean(FactoryBeanRegistrySupport.java:109)
	org.springframework.beans.factory.support.AbstractBeanFactory.getObjectForBeanInstance(AbstractBeanFactory.java:1387)
	org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:244)
	org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:189)
	org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:820)
	org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:762)
	org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:680)
	org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:771)
	org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:691)
	org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:192)
	org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:984)
	org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:886)
	org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:479)
	org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:450)
	org.springframework.beans.factory.support.AbstractBeanFactory$2.getObject(AbstractBeanFactory.java:328)
	org.springframework.web.context.request.AbstractRequestAttributesScope.get(AbstractRequestAttributesScope.java:43)
	org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:324)
	org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
	org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeansOfType(DefaultListableBeanFactory.java:385)
	org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeansOfType(DefaultListableBeanFactory.java:375)
	org.springframework.context.support.AbstractApplicationContext.getBeansOfType(AbstractApplicationContext.java:1069)
	org.springframework.beans.factory.BeanFactoryUtils.beansOfTypeIncludingAncestors(BeanFactoryUtils.java:221)
	br.com.caelum.vraptor.ioc.spring.VRaptorApplicationContext.getBean(VRaptorApplicationContext.java:253)
	br.com.caelum.vraptor.ioc.spring.SpringBasedContainer.instanceFor(SpringBasedContainer.java:59)
	br.com.caelum.vraptor.util.collections.Functions$1.apply(Functions.java:32)
	br.com.caelum.vraptor.util.collections.Functions$1.apply(Functions.java:30)
	com.google.common.collect.Lists$TransformingRandomAccessList.get(Lists.java:431)
	java.util.AbstractList$Itr.next(AbstractList.java:345)
	com.google.common.collect.Iterators$7.computeNext(Iterators.java:602)
	com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:135)
	com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:130)
	com.google.common.collect.Lists.newArrayList(Lists.java:131)
	com.google.common.collect.Collections2$FilteredCollection.toArray(Collections2.java:219)
	br.com.caelum.vraptor.interceptor.DefaultInterceptorRegistry.interceptorsFor(DefaultInterceptorRegistry.java:50)
	br.com.caelum.vraptor.interceptor.InterceptorListPriorToExecutionExtractor.intercept(InterceptorListPriorToExecutionExtractor.java:42)
	br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:65)
	br.com.caelum.vraptor.interceptor.FlashInterceptor.intercept(FlashInterceptor.java:81)
	br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:65)
	br.com.caelum.vraptor.interceptor.ResourceLookupInterceptor.intercept(ResourceLookupInterceptor.java:67)
	br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:65)
	br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:56)
	br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:65)
	br.com.caelum.vraptor.core.DefaultRequestExecution.execute(DefaultRequestExecution.java:70)
	br.com.caelum.vraptor.VRaptor$1.insideRequest(VRaptor.java:92)
	br.com.caelum.vraptor.ioc.spring.SpringProvider.provideForRequest(SpringProvider.java:56)
	br.com.caelum.vraptor.VRaptor.doFilter(VRaptor.java:89)

8 Respostas

Lucas_Cavalcanti

User não é uma palavra reservada do SQL, e sim do Postgresql…

o código que vc usou pra gerar as tabelas é o mesmo que vc usou no vraptor? ou vc fez algo diferente?

juniorsatanas

Sim Lucas !
BOm dia !

sim e do Postgresql !

Nao fiz nada e o mesmo codigo !

abraço.

Lucas_Cavalcanti

posta aqui o código que vc usou pra gerar as tabelas

juniorsatanas
import org.hibernate.cfg.AnnotationConfiguration;
import org.hibernate.cfg.Configuration;
import org.hibernate.tool.hbm2ddl.SchemaExport;

public class GeraTabelas {
	public static void main(String[] args) {
		Configuration cfg = new AnnotationConfiguration();
		cfg.configure();

		SchemaExport se = new SchemaExport(cfg);
		se.create(true, true);
	}
}
Lucas_Cavalcanti

pois é, isso não é o mesmo código que o vraptor faz…

tenta fazer nesse seu mesmo main o código, com imports do vraptor:

public static void  main(String[] args) {
   SessionFactoryCreator sfc = new SessionFactoryCreator();
   sfc.create();

   SessionCreator sc = new SessionCreator(sfc.getInstance());
   sc.create();
}

roda isso e vê se dá algum erro

juniorsatanas

Fazendo do meu modo , não da erro e criado as tabelas normalmente !

CONSEGUIR FAZER APARECER A TELA DE LOGIN ! OBA !!!!

na hora de cadastrar um usuario :

HTTP Status 405 -

type Status report

message

description The specified HTTP method is not allowed for the requested resource ().
Apache Tomcat/6.0.20
11:10:25,569 DEBUG [VRaptor             ] VRaptor received a new request
11:10:25,571 DEBUG [DefaultRequestExecution] executing stack  DefaultRequestExecution
11:10:25,580 DEBUG [ToInstantiateInterceptorHandler] Invoking interceptor ResourceLookupInterceptor
11:10:25,580 DEBUG [DefaultResourceTranslator] trying to access /users
11:10:25,581  INFO [ResourceLookupInterceptor] Method POST is not allowed for requested URI. Allowed Methods are [GET]
11:10:25,586 DEBUG [VRaptor             ] VRaptor ended the request
Lucas_Cavalcanti

leia o erro:

11:10:25,581  INFO [ResourceLookupInterceptor] Method POST is not allowed for  requested URI. Allowed Methods are [GET]

ou seja, vc anotou sua lógica com @Get @Path("/users"), logo vc só consegue acessá-la com o método GET… pra adicionar um user vc tem que usar o método POST mesmo, logo seu método adiciona tem que estar anotado com @Post (e não deveria ter o @Get)

juniorsatanas

pegou mano !

Criado 20 de maio de 2010
Ultima resposta 20 de mai. de 2010
Respostas 8
Participantes 2