O VRaptor 3.1 acaba de ser lançado com muitas correções e melhorias. Agradecimento especial ao pessoal do GUJ que tanto tem colaborado com o crescimento do framework com sugestões e correções. E agradecimento aos mais de 4 mil downloads de toda a comunidade.
Já estava até estudando JSF, mais agora volto para VRaptor 3 !
Além do VRaptor ser Maravilhoso e Brasileiro e tem um suporte Otimo aqui no Guj…
Só Falta o pessoal da DevMedia fazer um CRUD, já tem um do Menta…
No NetBeans fica com uma estrutura horrível, nada haver com o padrão… ao importar para VRaptor3 o mydvds tem que apagar o web.xml, depois refazer etc…
No Eclipse fica tudo certinho ! era bom um plugin para VR3.
Já o XML, por mais que seja um pouco mais difícil em relação ao properties, permite que toda a configuração
seja feita nele. Por isso faremos nossa configuração no XML. O arquivo XML que o Hibernate procurará será o
hibernate.cfg.xml e ele deve estar no classpath.
Para nosso caso, vamos seguir a convenção e criar o arquivo hibernate.cfg.xml na pasta src, dentro do
nosso projeto. O conteúdo do arquivo será esse:
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password"></property>
<property name="hibernate.connection.url">jdbc:mysql://localhost/fj28</property>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.dialect">org.hibernate.dialect.MySQL5InnoDBDialect</property>
<property name="hibernate.hbm2ddl.auto">update</property>
<property name="show_sql">true</property>
<property name="format_sql">true</property>
</session-factory>
</hibernate-configuration>
As configurações que passamos nesse arquivo são parecidas quando queremos nos conectar a um banco
de dados. Para conectar em um banco de dados, precisamos informar qual é o usuário, a senha, algumas
informações do banco, como host, porta, etc.
Um detalhe importante da nossa configuração é o banco de dados que foi passado. Na configuração
hibernate.connection.url foi passado o nome do database que utilizaremos. Para esse caso escolhemos
o database fj28.
Abaixo segue a descrição de todas as configurações que usamos.
? hibernate.connection.username - usuário do banco de dados
? hibernate.connection.password - senha do usuário
? hibernate.connection.url - chamada de URL ou string de conexão, deve ser configurada de acordo com
documentação do banco de dados
? hibernate.connection.driver_class - driver que deve ser utilizado
? hibernate.hbm2ddl.auto - como o hibernate vai se comportar em relação às tabelas do banco. Com o
valor update ele vai criar ou modificar tabelas sempre que necessário.
? hibernate.dialect - dialeto a ser utilizado para a comunicação com o banco de dados
? show_sql - flag que indica se os SQLs gerados devem ser impressos
? format_sql - flag que indica se os SQLs devem ser formatados
Capítulo 3 - Persistindo os dados com o Hibernate - Configurando o Hibernate - Página 6
[quote=juniorsatanas]No NetBeans fica com uma estrutura horrível, nada haver com o padrão… ao importar para VRaptor3 o mydvds tem que apagar o web.xml, depois refazer etc…
No Eclipse fica tudo certinho ! era bom um plugin para VR3.
[/quote]
Teu netbeans é mtu ruinzinho msm hein rs zoa mano!
Uma coisa estranha do MYDVDS, e que ele tem uma classe User, sempre da um erro referente ao SQL99 que é uma palavra reservada !
Se mudar o MYDVDS para usar bacno Postgree…
segue scree…
init:
deps-module-jar:
deps-ear-jar:
deps-jar:
compile-single:
run-main:
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/home/junior/vraptor-mydvds-3.1.0/WebContent/WEB-INF/lib/slf4j-log4j12-1.5.8.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/home/junior/sges-v3/glassfish/modules/bean-validator.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/home/junior/sges-v3/glassfish/modules/weld-osgi-bundle.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
log4j:WARN No appenders could be found for logger (org.hibernate.cfg.annotations.Version).
log4j:WARN Please initialize the log4j system properly.
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
CONSTRUÍDO COM SUCESSO (tempo total: 2 segundos)
HTTP Status 500 -
type Exception report
message
descriptionThe server encountered an internal error () that prevented it from fulfilling this request.
exception
br.com.caelum.vraptor.InterceptionException: org.hibernate.hql.ast.QuerySyntaxException: User is not mapped [from User u where u.login = :login and u.password = :password]
note The full stack traces of the exception and its root causes are available in the GlassFish v3 logs.
GlassFish v3