So tá consultando e inserindo.
Atualizar e excluir ele não faz, mas também não apresenta erro.
@Component
public class LinhaControl {
private LinhaDAO linhaDAO;
@Transactional(readOnly = false)
public void inserir(Linha linha) {
linhaDAO.salvar(linha);
}
@Transactional(readOnly = false)
public void excluir(Linha linha) {
linhaDAO.excluir(linha);
}
@Transactional(readOnly = false)
public void atualizar(Linha linha) {
linhaDAO.atualizar(linha);
}
@Transactional(readOnly = true)
public List<Linha> consultar(Linha linha) {
return linhaDAO.consultar(linha);
}
public LinhaDAO getLinhaDAO() {
return linhaDAO;
}
@Autowired
public void setLinhaDAO(LinhaDAO linhaDAO) {
this.linhaDAO = linhaDAO;
}
}
...
<!-- Configuração do Open Session in View do Spring com Hibernate -->
<filter>
<filter-name>opensessioninview</filter-name>
<filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
<init-param>
<param-name>sessionFactoryBeanName</param-name>
<param-value>hibernateSessionFactory</param-value>
</init-param>
<init-param>
<param-name>singleSession</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>opensessioninview</filter-name>
<servlet-name>wicket</servlet-name>
</filter-mapping>
<!-- Spring -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>WEB-INF/applicationContext.xml</param-value>
</context-param>
...
<?xml version="1.0" encoding="ISO-8859-1"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:tx="http://www.springframework.org/schema/tx" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:aop="http://www.springframework.org/schema/aop" xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd">
<!-- Transações - JTA: ATOMIKOS -->
<bean id="jtaTransactionManager" class="com.atomikos.icatch.jta.UserTransactionManager"
init-method="init" destroy-method="close">
<property name="startupTransactionService" value="true" />
<property name="forceShutdown" value="true" />
<property name="transactionTimeout" value="500" />
</bean>
<bean id="jtaUserTransaction" class="com.atomikos.icatch.jta.UserTransactionImp" />
<bean id="transactionManager" class="org.springframework.transaction.jta.JtaTransactionManager">
<property name="transactionManager" ref="jtaTransactionManager" />
<property name="userTransaction" ref="jtaUserTransaction" />
</bean>
<!-- Data source -->
<bean id="appDS" class="com.atomikos.jdbc.nonxa.NonXADataSourceBean" destroy-method="close">
<property name="url" value="jdbc:mysql://localhost:3306/bco" />
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
<property name="poolSize" value="10" />
<property name="user" value="root" />
<property name="password" value="root" />
<property name="connectionTimeout" value="180" />
</bean>
<!-- Lista de classes mapeadas (anotadas) pelo Hibernate -->
<bean id="hibernateAnnotatedClasses" class="br.com.bco.hibernate.HibernateSessionFactory" factory-method="getClassesMapeadas" />
<!-- Hibernate -->
<bean id="hibernateSessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
<property name="dataSource" ref="appDS" />
<property name="annotatedClasses" ref="hibernateAnnotatedClasses" />
<property name="hibernateProperties">
<props>
<!-- Mysql Desenvolvimento -->
<prop key="hibernate.dialect">org.hibernate.dialect.MySQL5InnoDBDialect</prop>
<prop key="hibernate.show_sql">true</prop>
<prop key="hibernate.connection.shutdown">true</prop>
</props>
</property>
</bean>
<!-- Transação delimitada por anotações -->
<tx:annotation-driven transaction-manager="transactionManager" proxy-target-class="true" />
<!-- IoC com anotações -->
<context:annotation-config />
<!-- Pacotes a serem scaneados -->
<context:component-scan base-package="br.com.bco.*" />
<!-- Wicket -->
<bean id="wicketApplication" class="br.com.bco.web.app.Application" />
</beans>