Boa tarde galera!!!
Beleza?
Tipo, nao estou conseguindo fazer um aplicativo simples ser rodado com struts.
Alguem poderia me ajudar?
Obrigado
donatinho
Boa tarde galera!!!
Beleza?
Tipo, nao estou conseguindo fazer um aplicativo simples ser rodado com struts.
Alguem poderia me ajudar?
Obrigado
donatinho
rapaz…seria interessante vc especificar seu problema…só assim alguem pode ajuda-lo…
Usa o Mentawai… beeem mais fácil.
Olá Donatinho,
Existem diversos problemas que podem acontecer usando o Hibernate com Struts. Vou tentar direcionar
limitando o seu ambiente de trabalho, para um que eu utilizo, JavaServer Faces, mas que a princípio
é similar ao STRUTS neste aspecto de conexão a banco.
1 - JAVA SDK 1.5.0_06
2 - TOMCAT 5.5.16 como container WEB;
3 - o banco de dados que uso é o Firebird (Firebird-1.5.3.4870-0-Win32.exe)
em servidor Windows, pois se for linux o arquivo de Context.xml é um
pouco diferente, mas funciona também. <img src="https://cdn.jsdelivr.net/gh/twitter/twemoji@14/assets/72x72/w.pngink.png?v=9" title=":wink:" class="emoji" alt=":wink:">
4 - Drive JDBC para Firebird é o jaybird-full-2.0.0.jar, este arquivo
deve está no diretório TOMCAT_HOME\common\lib
5 - Arquivo de Context.xml, serve para identificar para o TOMCAT, qual driver utilizar, bem
como fazer a conexão ao banco de dados, via DataSource. Este DataSource é a forma como o Hibernate
vai procurar como se conectar no banco. Vale ressaltar que este arquivo terá o nome do path da
aplicação WEB seguido de .xml, mas isto é feito de maneira automática caso você se utilize de
um arquivo *.war para fazer DEPLOY no TOMCAT. O arquivo de context deve ficar no diretório
TOMCAT_HOME\conf\Catalina\localhost depois de feito um DEPLOY.
Para melhor estudo de configuração do arquivo de Context.xml veja o
site <a href="http://tomcat.apache.org/tomcat-5.5-doc/jndi-resources-howto.html">http://tomcat.apache.org/tomcat-5.5-doc/jndi-resources-howto.html</a>
6 - O arquivo de configuração do Hibernate (hibernate.cfg.xml) deve
está no diretório Sua_Aplicação\WEB-INF\classes. Este arquivo
é o local onde está configurado o DataSource acima mencionado.
7 - Recomendo a utilização de um programa que facilite o seu trabalho
com JAVA, eu utilizo o NetBeans 5.0
Arquivo jsfAgenda.xml (context.xml):
<?xml version=“1.0” encoding=“UTF-8”?>
<Context path="/jsfAgenda">
<Resource driverClassName=“org.firebirdsql.jdbc.FBDriver”
maxActive=“3”
maxIdle=“1”
maxWait=“5000”
minIdle=“0”
name=“hibernate/agenda”
password=“masterkey”
type=“javax.sql.DataSource”
url=“jdbc:firebirdsql:localhost/3050:c:/banco/agenda/agenda.gdb”
username=“sysdba”/>
</Context>
Veja a interligação destes arquivos pelo atributo name="hibernate/agenda"
no arquivo jsfAgenda.xml e a tag property name="connection.datasource">
java:comp/env/hibernate/agenda do arquivo abaixo. Tudo o que vier depois do
comp/env é a string de vínculo.
Arquivo hibernate.cfg.xml:
<?xml version=‘1.0’ encoding=‘utf-8’?>
<!DOCTYPE hibernate-configuration
SYSTEM “/temp/dtd/hibernate-configuration-2.0.dtd”>
<comentario>
<!DOCTYPE hibernate-configuration
PUBLIC “-//Hibernate/Hibernate Configuration DTD//EN”
“http://hibernate.sourceforge.net/hibernate-configuration-2.0.dtd”>
</comentario>
<hibernate-configuration>
<session-factory>
<property name=“connection.datasource”>java:comp/env/hibernate/agenda</property>
<property name=“show_sql”>false</property>
<property name=“dialect”>org.hibernate.dialect.FirebirdDialect</property>
<comentario Mapping files -->
<mapping resource="agendaHibernate/Local.hbm.xml"/>
<mapping resource="agendaHibernate/Perfil.hbm.xml"/>
<mapping resource="agendaHibernate/Usuario.hbm.xml"/>
</session-factory>
</hibernate-configuration>
Um ponto interessante neste arquivo é que na tag <!DOCTYPE … SYSTEM a localização do arquivo
de DTD está dentro da própria máquina (c:\temp\dtd\hibernate-configuration-2.0.dtd) pois no
comentário original logo abaixo estava direcionada para um arquivo que está disponível via
Internet, eu fiz isto para não buscar via Internet. É só baixar arquivo conforme o próprio link acima e salvar no local indicado.
Estou tomando como base que os arquivos de hbm.xml e as classes JAVA estão corretos.
Existem também um tópico na Wikipedia que estou adiantando sobre Hibernate dê uma olhada por
favor. http://pt.wikipedia.org/wiki/Hibernate
Note que lá estou usando conexão direta em vez do DataSource (hibernate.cfg.xml), como aqui
apresentado. A principal diferença entre conexão direta e DataSource é que os dados de conexão ficam
no arquivo de contexto jsfAgenda.xml (context.xml)
Eu sei que é muita informação, mas espero que tenha ajudado. 
Até mais.
Fabrício Luis
http://www.ce3po.com
>