<?xml version="1.0" encoding="ISO-8859-1"?>
<rss version="2.0">
	<channel>
		<title><![CDATA[Últimas mensagens do tópico "Hibernate + Spring : Episódio 1 [Resolvido. + ainda não entendi o PQ]"]]></title>
		<link>http://www.guj.com.br/posts/list/18.java</link>
		<description><![CDATA[Últimas mensagens enviadas no tópico "Hibernate + Spring : Episódio 1 [Resolvido. + ainda não entendi o PQ]"]]></description>
		<generator>JForum - http://www.jforum.net</generator>
			<item>
				<title>Hibernate + Spring : Episódio 1 [Resolvido. + ainda não entendi o PQ]</title>
				<description><![CDATA[ Bom...<br /> Depois de passar a semana inteira lendo a respeito...<br /> Tentei fazer um código com spring e hibernate.<br /> <br /> Este é o applicationContext.xml<br /> [code]&lt;!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"<br /> "http://www.springframework.org/dtd/spring-beans.dtd"&gt;<br /> &lt;beans&gt;<br />        &lt;bean id="sessionFactory"<br />              class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"&gt;<br />               &lt;property name="mappingResources"&gt;<br />                      &lt;list&gt;<br />                             &lt;value&gt;Pessoa.hbm.xml&lt;/value&gt;<br />                      &lt;/list&gt;<br />               &lt;/property&gt;<br />               &lt;property name="hibernateProperties"&gt;<br />                      &lt;props&gt;<br />                             &lt;prop key="hibernate.dialect"&gt;org.hibernate.dialect.FirebirdDialect&lt;/prop&gt;<br />                             &lt;prop key="hibernate.connection.driver_class"&gt;org.firebirdsql.jdbc.FBDriver&lt;/prop&gt;<br />                             &lt;prop key="hibernate.connection.url"&gt;jdbc:firebirdsql://localhost:3050/D:\\DADOS\\SGCP.FDB&lt;/prop&gt;<br />                             &lt;prop key="hibernate.connection.username"&gt;SYSDBA&lt;/prop&gt;<br />                             &lt;prop key="hibernate.connection.password"&gt;masterkey&lt;/prop&gt;<br />                      &lt;/props&gt;<br />               &lt;/property&gt;<br />        &lt;/bean&gt;<br />        &lt;bean id="transactionManager"<br />              class="org.springframework.orm.hibernate3.HibernateTransactionManager"&gt;<br />               &lt;property name="sessionFactory"&gt;<br />                      &lt;ref bean="sessionFactory"/&gt;<br />               &lt;/property&gt;<br />        &lt;/bean&gt;<br />        &lt;bean id="pessoaDao" class="hibernate.PessoaDao"&gt;<br />               &lt;property name="sessionFactory"&gt;<br />                      &lt;ref bean="sessionFactory"/&gt;<br />               &lt;/property&gt;<br />        &lt;/bean&gt;<br /> &lt;/beans&gt;[/code]<br /> <br /> Esse é meu DAO<br /> [code]public class PessoaDao extends HibernateDaoSupport {<br />     SessionFactory sessionFactory;<br />         <br />     public PessoaDao() {<br />     }<br /> <br />     int save(Pessoa p) {<br />         Session session = getSession(false);<br />         session.saveOrUpdate(p);<br /> <br />         return 1;<br />     }<br /> <br />     boolean delete(Pessoa p) {<br />         Session session = getSession(false);<br />         session.delete(p);<br />         return true;<br />     }<br /> <br />     Pessoa load(int id_pessoa) {<br />         Session session = getSession(false);<br />         Query qr = <br />             session.createQuery("from Pessoa where id_pessoa = :id_pessoa");<br />         qr.setInteger("id_pessoa", id_pessoa);<br />         return (Pessoa)qr.uniqueResult();<br />     }<br /> <br /> }[/code]<br /> <br /> E este... meu teste<br /> [code]public class Teste {<br /> <br />     public static void main(String[] args) {<br />         Resource resource = new FileSystemResource("applicationContext.xml");<br />         BeanFactory fa = new XmlBeanFactory(resource);<br /> <br />         PessoaDao pd = (PessoaDao)fa.getBean("pessoaDao");<br /> <br />         Pessoa p = new Pessoa();<br />         p.setNome("Nome");<br /> <br />         pd.save(p);<br />     }<br /> }<br /> [/code]<br /> <br /> e ESTE é o erro:[code]Exception in thread "main" java.lang.IllegalStateException: No Hibernate Session bound to thread, and configuration does not allow creation of non-transactional one here<br /> 	at org.springframework.orm.hibernate3.SessionFactoryUtils.doGetSession(SessionFactoryUtils.java:350)<br /> 	at org.springframework.orm.hibernate3.SessionFactoryUtils.getSession(SessionFactoryUtils.java:200)<br /> 	at org.springframework.orm.hibernate3.support.HibernateDaoSupport.getSession(HibernateDaoSupport.java:169)<br /> 	at hibernate.PessoaDao.save(PessoaDao.java:15)<br /> 	at hibernate.Teste.main(Teste.java:26).[/code]<br /> <br /> EU imagino que existe alguma coisa que eu achei que seria automática... mas não foi...<br /> Hibernate-3.2.7 e Spring-3.0.0M<br /> <br /> É o ponta pé inicial que falta...]]></description>
				<guid isPermaLink="true">http://www.guj.com.br/prepost/131506/708315/hibernate--spring--episodio-1-resolvido--ainda-nao-entendi-o-pq
</guid>
				<link>http://www.guj.com.br/prepost/131506/708315/hibernate--spring--episodio-1-resolvido--ainda-nao-entendi-o-pq
</link>
				<pubDate><![CDATA[Fri, 3 Jul 2009 22:50:32]]> GMT</pubDate>
				<author><![CDATA[ proteus_adi]]></author>
			</item>
			<item>
				<title>Re:Hibernate + Spring : Episódio 1</title>
				<description><![CDATA[ o [code]Session session = getSession(false); [/code]<br /> se substituído por [code]Session session = getHibernateTemplate().getSessionFactory().openSession(); [/code]<br /> <br /> Mas...<br /> Por que?<br /> <br /> <br /> ?!]]></description>
				<guid isPermaLink="true">http://www.guj.com.br/prepost/131506/708405/rehibernate--spring--episodio-1
</guid>
				<link>http://www.guj.com.br/prepost/131506/708405/rehibernate--spring--episodio-1
</link>
				<pubDate><![CDATA[Sat, 4 Jul 2009 16:26:15]]> GMT</pubDate>
				<author><![CDATA[ proteus_adi]]></author>
			</item>
	</channel>
</rss>
