Spring 2.2.5 + Hibernate 3 + Transacao Declarativa

Bom Dia!

Amigos(as),

Ao desenvolver uma aplicação j2ee 1.4 rodando no ambiente JBoss 4.2.2 e Banco de Dados PostGree 8.3.

Estou enfrentando um problema complicado… Eu não consigo fazer rollback usando a interface de transação
“org.springframework.orm.hibernate3.HibernateTransactionManager” + Hibernater 3.2.6, Spring 2.2.5;

Aparentemente a transação não é criada na camada de Serviço, apenas no DAO [ Vide Log…]

Segue abaixo código correspondente:

Service:


public class SisagServiceImpl implements SisagService {
   private ContaDao contaDao;   

   public void setContaDao(ContaDao contaDao) {
      this.contaDao = contaDao;
   }

   @Transactional
   public boolean executarServico(String xml) {
      Conta conta = contaDao.findByNumber(1);      
      conta.saque(250);
      contaDao.update(conta);   

[b]      // must rollback, but is not working ('conta' is saved anyway)   
      if (true) {
         throw new RuntimeException();
      }[/b]

      Conta conta2 = contaDao.findByNumber(2);      
      conta2.deposito(250);
      contaDao.update(conta2);

      return true;
   }
}

ApplicationContext.xml:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 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/context http://www.springframework.org/schema/context/spring-context-2.5.xsd">
   
   <context:property-placeholder location="classpath:*.properties" />

   <bean id="sisagService" class="com.example.sisag.service.SisagServiceImpl">
      <property name="contaDao" ref="contaDao" />      
   </bean>      
</beans>

applicationContext-hibernate.xml


<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
   xmlns:aop="http://www.springframework.org/schema/aop" xmlns:context="http://www.springframework.org/schema/context"
   xmlns:jee="http://www.springframework.org/schema/jee" xmlns:tx="http://www.springframework.org/schema/tx"
   xsi:schemaLocation="
            http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
            http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
            http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd
            http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-2.5.xsd
            http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">
 
    <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
      destroy-method="close" scope="singleton">
      <property name="driverClassName" value="${jdbc.driverClassName}" />
      <property name="url" value="${jdbc.url}" />
      <property name="username" value="${jdbc.username}" />
      <property name="password" value="${jdbc.password}" />
   </bean>

   <bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
      <property name="dataSource" ref="dataSource"/>
       
      <property name="annotatedClasses">
         <list>
            <value>com.example.sisag.model.Conta</value>
            <value>com.example.sisag.model.Pessoa</value>
         </list>
      </property>      
      <property name="hibernateProperties">
         <props>
            <prop key="hibernate.dialect">${hibernate.dialect}</prop>
            <prop key="hibernate.show_sql">${hibernate.show_sql}</prop>
            <prop key="hibernate.format_sql">${hibernate.format_sql}</prop>   
         </props>
      </property>
      <property name="eventListeners">
         <map>
            <entry key="merge">
               <bean class="org.springframework.orm.hibernate3.support.IdTransferringMergeEventListener"/>
            </entry>
         </map>
      </property>      
   </bean>

   <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
      <property name="sessionFactory" ref="sessionFactory"/>
   </bean>

   <context:annotation-config/>

   <tx:annotation-driven/>   
   
   <bean class="org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor"/>
   
   <bean id="contaDao" class="com.example.sisag.dao.hibernate.HibernateContaDao">
      <property name="sessionFactory" ref="sessionFactory" />
   </bean>   
</beans>

HibernateContaDAO

@Repository
@Transactional
public class HibernateContaDao implements ContaDao {
   
   private SessionFactory sessionFactory;

   public void setSessionFactory(SessionFactory sessionFactory) {
      this.sessionFactory = sessionFactory;
   }

   @SuppressWarnings("unchecked")
   public List<Conta> findAll() {
      return sessionFactory.getCurrentSession().createQuery("from Conta c").list();
   }

   public Conta findByNumber(Integer id) {
      return (Conta) sessionFactory.getCurrentSession().get(Conta.class, id);
   }

   public Conta save(Conta conta) {
      sessionFactory.getCurrentSession().saveOrUpdate(conta);
      return conta;
   }

   public Conta update(Conta conta) {
      sessionFactory.getCurrentSession().merge(conta);   
      return conta;
   }

   public void delete(Conta conta) {
      sessionFactory.getCurrentSession().delete(conta);   
   }
}

Conta:

@Entity
public class Conta implements Serializable {

   @Id
   private Integer numero;

   private Double saldo;

   @ManyToOne
   @JoinColumn(name="pessoa_id")
   private Pessoa pessoa;   

   public Integer getNumero() {
      return numero;
   }

   public void setNumero(Integer numero) {
      this.numero = numero;
   }

   public Double getSaldo() {
      return saldo;
   }

   public void setSaldo(Double saldo) {
      this.saldo = saldo;
   }

   public Pessoa getPessoa() {
      return pessoa;
   }

   public void setPessoa(Pessoa pessoa) {
      this.pessoa = pessoa;
   }

   public double saque(double valor) {
      if (valor > saldo) {
         throw new SaldoInsuficienteException("Saldo atual: " + saldo + 
               ". Valor do saque: " + valor);
      }
      return saldo -= valor;
   }

   public double deposito(double valor) {
      return saldo += valor;
   }   

   @Override
   public int hashCode() { 
   ...
   }

   @Override
   public boolean equals(Object obj) {
      ...
   }
}

Log de Erro:[color=red] [/color]

07:57:56,980 INFO [Server] Starting JBoss (MX MicroKernel)…
07:57:56,982 INFO [Server] Release ID: JBoss [Trinity] 4.2.2.GA (build: SVNTag=JBoss_4_2_2_GA date=200710221139)
07:57:56,983 INFO [Server] Home Dir: /usr/local/jboss-4.2.2.GA
07:57:56,983 INFO [Server] Home URL: file:/usr/local/jboss-4.2.2.GA/
07:57:56,984 INFO [Server] Patch URL: null
07:57:56,984 INFO [Server] Server Name: default
07:57:56,984 INFO [Server] Server Home Dir: /usr/local/jboss-4.2.2.GA/server/default
07:57:56,985 INFO [Server] Server Home URL: file:/usr/local/jboss-4.2.2.GA/server/default/
07:57:56,985 INFO [Server] Server Log Dir: /usr/local/jboss-4.2.2.GA/server/default/log
07:57:56,985 INFO [Server] Server Temp Dir: /usr/local/jboss-4.2.2.GA/server/default/tmp
07:57:56,985 INFO [Server] Root Deployment Filename: jboss-service.xml
07:57:57,794 INFO [ServerInfo] Java version: 1.5.0_16,Sun Microsystems Inc.
07:57:57,796 INFO [ServerInfo] Java VM: Java HotSpot™ Client VM 1.5.0_16-b02,Sun Microsystems Inc.
07:57:57,796 INFO [ServerInfo] OS-System: Linux 2.6.24-19-generic,i386
07:57:58,296 INFO [Server] Core system initialized
07:58:00,535 INFO [WebService] Using RMI server codebase: http://127.0.0.1:8083/
07:58:00,539 INFO [Log4jService$URLWatchTimerTask] Configuring from URL: resource:jboss-log4j.xml
07:58:01,054 INFO [TransactionManagerService] JBossTS Transaction Service (JTA version) - JBoss Inc.
07:58:01,055 INFO [TransactionManagerService] Setting up property manager MBean and JMX layer
07:58:01,261 INFO [TransactionManagerService] Starting recovery manager
07:58:01,408 INFO [TransactionManagerService] Recovery manager started
07:58:01,408 INFO [TransactionManagerService] Binding TransactionManager JNDI Reference
07:58:04,361 INFO [EJB3Deployer] Starting java:comp multiplexer
07:58:04,724 INFO [STDOUT] no object for null
07:58:04,727 INFO [STDOUT] no object for null
07:58:04,750 INFO [STDOUT] no object for null
07:58:04,772 INFO [STDOUT] no object for {urn:jboss:bean-deployer}supplyType
07:58:04,799 INFO [STDOUT] no object for {urn:jboss:bean-deployer}dependsType
07:58:07,132 INFO [NativeServerConfig] JBoss Web Services - Native
07:58:07,133 INFO [NativeServerConfig] jbossws-native-2.0.1.SP2 (build=200710210837)
07:58:08,263 INFO [Embedded] Catalina naming disabled
07:58:08,447 INFO [AprLifecycleListener] The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/local/jdk1.5.0_16/jre/lib/i386/client:/usr/local/jdk1.5.0_16/jre/lib/i386:/usr/local/jdk1.5.0_16/jre/…/lib/i386:/usr/local/jdk1.5.0_16/jre/lib/i386/client:/usr/local/jdk1.5.0_16/jre/lib/i386:/usr/lib/xulrunner-addons:/usr/lib/xulrunner-addons
07:58:08,543 INFO [Http11Protocol] Initializing Coyote HTTP/1.1 on http-127.0.0.1-8080
07:58:08,544 INFO [AjpProtocol] Initializing Coyote AJP/1.3 on ajp-127.0.0.1-8009
07:58:08,544 INFO [Catalina] Initialization processed in 281 ms
07:58:08,544 INFO [StandardService] Starting service jboss.web
07:58:08,546 INFO [StandardEngine] Starting Servlet Engine: JBossWeb/2.0.1.GA
07:58:08,634 INFO [Catalina] Server startup in 89 ms
07:58:08,787 INFO [TomcatDeployer] deploy, ctxPath=/, warUrl=…/deploy/jboss-web.deployer/ROOT.war/
07:58:09,480 INFO [TomcatDeployer] deploy, ctxPath=/invoker, warUrl=…/deploy/http-invoker.sar/invoker.war/
07:58:09,653 INFO [TomcatDeployer] deploy, ctxPath=/jbossws, warUrl=…/deploy/jbossws.sar/jbossws-context.war/
07:58:09,749 INFO [TomcatDeployer] deploy, ctxPath=/jbossmq-httpil, warUrl=…/deploy/jms/jbossmq-httpil.sar/jbossmq-httpil.war/
07:58:10,516 INFO [TomcatDeployer] deploy, ctxPath=/web-console, warUrl=…/deploy/management/console-mgr.sar/web-console.war/
07:58:11,012 INFO [MailService] Mail Service bound to java:/Mail
07:58:11,448 INFO [RARDeployment] Required license terms exist, view META-INF/ra.xml in …/deploy/jboss-ha-local-jdbc.rar
07:58:11,486 INFO [RARDeployment] Required license terms exist, view META-INF/ra.xml in …/deploy/jboss-ha-xa-jdbc.rar
07:58:11,522 INFO [RARDeployment] Required license terms exist, view META-INF/ra.xml in …/deploy/jboss-local-jdbc.rar
07:58:11,546 INFO [RARDeployment] Required license terms exist, view META-INF/ra.xml in …/deploy/jboss-xa-jdbc.rar
07:58:11,618 INFO [RARDeployment] Required license terms exist, view META-INF/ra.xml in …/deploy/jms/jms-ra.rar
07:58:11,676 INFO [RARDeployment] Required license terms exist, view META-INF/ra.xml in …/deploy/mail-ra.rar
07:58:11,710 INFO [RARDeployment] Required license terms exist, view META-INF/ra.xml in …/deploy/quartz-ra.rar
07:58:11,736 INFO [QuartzResourceAdapter] start quartz!!!
07:58:11,823 INFO [SimpleThreadPool] Job execution threads will use class loader of thread: main
07:58:11,863 INFO [QuartzScheduler] Quartz Scheduler v.1.5.2 created.
07:58:11,866 INFO [RAMJobStore] RAMJobStore initialized.
07:58:11,867 INFO [StdSchedulerFactory] Quartz scheduler ‘DefaultQuartzScheduler’ initialized from default resource file in Quartz package: ‘quartz.properties’
07:58:11,867 INFO [StdSchedulerFactory] Quartz scheduler version: 1.5.2
07:58:11,867 INFO [QuartzScheduler] Scheduler DefaultQuartzScheduler_$NON_CLUSTERED started.
07:58:12,527 INFO [ConnectionFactoryBindingService] Bound ConnectionManager ‘jboss.jca:service=DataSourceBinding,name=DefaultDS’ to JNDI name ‘java:DefaultDS’
07:58:12,817 INFO [A] Bound to JNDI name: queue/A
07:58:12,819 INFO [B] Bound to JNDI name: queue/B
07:58:12,821 INFO [C] Bound to JNDI name: queue/C
07:58:12,822 INFO [D] Bound to JNDI name: queue/D
07:58:12,824 INFO [ex] Bound to JNDI name: queue/ex
07:58:12,843 INFO [testTopic] Bound to JNDI name: topic/testTopic
07:58:12,845 INFO [securedTopic] Bound to JNDI name: topic/securedTopic
07:58:12,846 INFO [testDurableTopic] Bound to JNDI name: topic/testDurableTopic
07:58:12,850 INFO [testQueue] Bound to JNDI name: queue/testQueue
07:58:12,940 INFO [UILServerILService] JBossMQ UIL service available at : /127.0.0.1:8093
07:58:12,979 INFO [DLQ] Bound to JNDI name: queue/DLQ
07:58:13,132 INFO [ConnectionFactoryBindingService] Bound ConnectionManager ‘jboss.jca:service=ConnectionFactoryBinding,name=JmsXA’ to JNDI name ‘java:JmsXA’
07:58:13,225 INFO [ConnectionFactoryBindingService] Bound ConnectionManager ‘jboss.jca:service=DataSourceBinding,name=jdbc/sisag’ to JNDI name ‘java:jdbc/sisag’
07:58:14,408 INFO [TomcatDeployer] deploy, ctxPath=/SISAG, warUrl=…/tmp/deploy/tmp5444SISAG-exp.war/
07:58:14,829 INFO [[/SISAG]] Initializing Spring root WebApplicationContext
07:58:14,831 INFO [STDOUT] 2008-09-04 07:58:14,831 INFO [org.springframework.web.context.ContextLoader] -
07:58:15,195 INFO [STDOUT] 2008-09-04 07:58:15,195 INFO [org.springframework.web.context.support.XmlWebApplicationContext] - <Refreshing org.springframework.web.context.support.XmlWebApplicationContext@f72e77: display name [Root WebApplicationContext]; startup date [Thu Sep 04 07:58:15 BRT 2008]; root of context hierarchy>
07:58:15,342 INFO [STDOUT] 2008-09-04 07:58:15,342 INFO [org.springframework.beans.factory.xml.XmlBeanDefinitionReader] - <Loading XML bean definitions from ServletContext resource [/WEB-INF/applicationContext.xml]>
07:58:15,498 INFO [STDOUT] 2008-09-04 07:58:15,498 INFO [org.springframework.beans.factory.xml.XmlBeanDefinitionReader] - <Loading XML bean definitions from ServletContext resource [/WEB-INF/applicationContext-hibernate.xml]>
07:58:15,668 INFO [STDOUT] 2008-09-04 07:58:15,668 INFO [org.springframework.web.context.support.XmlWebApplicationContext] - <Bean factory for application context [org.springframework.web.context.support.XmlWebApplicationContext@f72e77]: org.springframework.beans.factory.support.DefaultListableBeanFactory@6ccf3e>
07:58:15,802 INFO [STDOUT] 2008-09-04 07:58:15,802 INFO [org.springframework.beans.factory.config.PropertyPlaceholderConfigurer] - <Loading properties file from file [/usr/local/jboss-4.2.2.GA/server/default/tmp/deploy/tmp5444SISAG-exp.war/WEB-INF/classes/log4j.properties]>
07:58:15,802 INFO [STDOUT] 2008-09-04 07:58:15,802 INFO [org.springframework.beans.factory.config.PropertyPlaceholderConfigurer] - <Loading properties file from file [/usr/local/jboss-4.2.2.GA/server/default/tmp/deploy/tmp5444SISAG-exp.war/WEB-INF/classes/jdbc-postgresql.properties]>
07:58:15,803 INFO [STDOUT] 2008-09-04 07:58:15,803 INFO [org.springframework.beans.factory.config.PropertyPlaceholderConfigurer] - <Loading properties file from file [/usr/local/jboss-4.2.2.GA/server/default/tmp/deploy/tmp5444SISAG-exp.war/WEB-INF/classes/http.properties]>
07:58:16,067 INFO [STDOUT] 2008-09-04 07:58:16,065 INFO [org.springframework.web.context.support.XmlWebApplicationContext] - <Bean ‘dataSource’ is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)>
07:58:16,140 INFO [STDOUT] 2008-09-04 07:58:16,140 INFO [org.springframework.web.context.support.XmlWebApplicationContext] - <Bean ‘org.springframework.orm.hibernate3.support.IdTransferringMergeEventListener#fa385’ is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)>
07:58:16,156 INFO [STDOUT] 2008-09-04 07:58:16,156 INFO [org.hibernate.cfg.annotations.Version] - <Hibernate Annotations 3.3.1.GA>
07:58:16,203 INFO [STDOUT] 2008-09-04 07:58:16,203 INFO [org.hibernate.cfg.Environment] - <Hibernate 3.2.6>
07:58:16,212 INFO [STDOUT] 2008-09-04 07:58:16,212 INFO [org.hibernate.cfg.Environment] - <hibernate.properties not found>
07:58:16,217 INFO [STDOUT] 2008-09-04 07:58:16,216 INFO [org.hibernate.cfg.Environment] -
07:58:16,223 INFO [STDOUT] 2008-09-04 07:58:16,223 INFO [org.hibernate.cfg.Environment] - <using JDK 1.4 java.sql.Timestamp handling>
07:58:16,449 INFO [STDOUT] 2008-09-04 07:58:16,449 INFO [org.hibernate.cfg.AnnotationBinder] -
07:58:16,571 INFO [STDOUT] 2008-09-04 07:58:16,571 INFO [org.hibernate.cfg.annotations.EntityBinder] -
07:58:16,659 INFO [STDOUT] 2008-09-04 07:58:16,659 INFO [org.hibernate.cfg.AnnotationBinder] -
07:58:16,660 INFO [STDOUT] 2008-09-04 07:58:16,660 INFO [org.hibernate.cfg.annotations.EntityBinder] -
07:58:16,836 INFO [STDOUT] 2008-09-04 07:58:16,836 INFO [org.hibernate.validator.Version] - <Hibernate Validator 3.0.0.GA>
07:58:16,875 INFO [STDOUT] 2008-09-04 07:58:16,875 INFO [org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean] -
07:58:16,901 INFO [STDOUT] 2008-09-04 07:58:16,901 INFO [org.hibernate.connection.ConnectionProviderFactory] -
07:58:17,091 INFO [STDOUT] 2008-09-04 07:58:17,091 INFO [org.hibernate.cfg.SettingsFactory] - <RDBMS: PostgreSQL, version: 8.3.3>
07:58:17,092 INFO [STDOUT] 2008-09-04 07:58:17,092 INFO [org.hibernate.cfg.SettingsFactory] - <JDBC driver: PostgreSQL Native Driver, version: PostgreSQL 8.3 JDBC3 with SSL (build 603)>
07:58:17,120 INFO [STDOUT] 2008-09-04 07:58:17,120 INFO [org.hibernate.dialect.Dialect] -
07:58:17,129 INFO [STDOUT] 2008-09-04 07:58:17,129 INFO [org.hibernate.transaction.TransactionFactoryFactory] -
07:58:17,131 INFO [STDOUT] 2008-09-04 07:58:17,131 INFO [org.hibernate.transaction.TransactionManagerLookupFactory] - <No TransactionManagerLookup configured (in JTA environment, use of read-write or transactional second-level cache is not recommended)>
07:58:17,131 INFO [STDOUT] 2008-09-04 07:58:17,131 INFO [org.hibernate.cfg.SettingsFactory] - <Automatic flush during beforeCompletion(): disabled>
07:58:17,131 INFO [STDOUT] 2008-09-04 07:58:17,131 INFO [org.hibernate.cfg.SettingsFactory] -
07:58:17,131 INFO [STDOUT] 2008-09-04 07:58:17,131 INFO [org.hibernate.cfg.SettingsFactory] - <JDBC batch size: 15>
07:58:17,131 INFO [STDOUT] 2008-09-04 07:58:17,131 INFO [org.hibernate.cfg.SettingsFactory] -
07:58:17,133 INFO [STDOUT] 2008-09-04 07:58:17,132 INFO [org.hibernate.cfg.SettingsFactory] -
07:58:17,134 INFO [STDOUT] 2008-09-04 07:58:17,134 INFO [org.hibernate.cfg.SettingsFactory] - <JDBC3 getGeneratedKeys(): disabled>
07:58:17,134 INFO [STDOUT] 2008-09-04 07:58:17,134 INFO [org.hibernate.cfg.SettingsFactory] -
07:58:17,135 INFO [STDOUT] 2008-09-04 07:58:17,135 INFO [org.hibernate.cfg.SettingsFactory] - <Default batch fetch size: 1>
07:58:17,136 INFO [STDOUT] 2008-09-04 07:58:17,135 INFO [org.hibernate.cfg.SettingsFactory] -
07:58:17,136 INFO [STDOUT] 2008-09-04 07:58:17,136 INFO [org.hibernate.cfg.SettingsFactory] -
07:58:17,136 INFO [STDOUT] 2008-09-04 07:58:17,136 INFO [org.hibernate.cfg.SettingsFactory] -
07:58:17,136 INFO [STDOUT] 2008-09-04 07:58:17,136 INFO [org.hibernate.cfg.SettingsFactory] -
07:58:17,140 INFO [STDOUT] 2008-09-04 07:58:17,140 INFO [org.hibernate.hql.ast.ASTQueryTranslatorFactory] -
07:58:17,140 INFO [STDOUT] 2008-09-04 07:58:17,140 INFO [org.hibernate.cfg.SettingsFactory] - <Query language substitutions: {}>
07:58:17,140 INFO [STDOUT] 2008-09-04 07:58:17,140 INFO [org.hibernate.cfg.SettingsFactory] -
07:58:17,140 INFO [STDOUT] 2008-09-04 07:58:17,140 INFO [org.hibernate.cfg.SettingsFactory] -
07:58:17,140 INFO [STDOUT] 2008-09-04 07:58:17,140 INFO [org.hibernate.cfg.SettingsFactory] -
07:58:17,141 INFO [STDOUT] 2008-09-04 07:58:17,141 INFO [org.hibernate.cfg.SettingsFactory] -
07:58:17,141 INFO [STDOUT] 2008-09-04 07:58:17,141 INFO [org.hibernate.cfg.SettingsFactory] -
07:58:17,141 INFO [STDOUT] 2008-09-04 07:58:17,141 INFO [org.hibernate.cfg.SettingsFactory] -
07:58:17,160 INFO [STDOUT] 2008-09-04 07:58:17,160 INFO [org.hibernate.cfg.SettingsFactory] -
07:58:17,166 INFO [STDOUT] 2008-09-04 07:58:17,166 INFO [org.hibernate.cfg.SettingsFactory] - <Statistics: disabled>
07:58:17,166 INFO [STDOUT] 2008-09-04 07:58:17,166 INFO [org.hibernate.cfg.SettingsFactory] -
07:58:17,168 INFO [STDOUT] 2008-09-04 07:58:17,168 INFO [org.hibernate.cfg.SettingsFactory] -
07:58:17,168 INFO [STDOUT] 2008-09-04 07:58:17,168 INFO [org.hibernate.cfg.SettingsFactory] -
07:58:17,580 INFO [STDOUT] 2008-09-04 07:58:17,580 INFO [org.hibernate.impl.SessionFactoryImpl] -
07:58:17,962 INFO [STDOUT] 2008-09-04 07:58:17,962 INFO [org.hibernate.impl.SessionFactoryObjectFactory] - <Not binding factory to JNDI, no JNDI name configured>
07:58:17,965 INFO [STDOUT] 2008-09-04 07:58:17,965 INFO [org.springframework.web.context.support.XmlWebApplicationContext] - <Bean ‘sessionFactory’ is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)>
07:58:18,005 INFO [STDOUT] 2008-09-04 07:58:18,005 INFO [org.springframework.beans.factory.support.DefaultListableBeanFactory] - <Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@6ccf3e: defining beans [org.springframework.beans.factory.config.PropertyPlaceholderConfigurer#0,contextApplicationContextProvider,sisagService,commandFactory,saqueCommand,depositoCommand,dataSource,sessionFactory,transactionManager,org.springframework.context.annotation.internalPersistenceAnnotationProcessor,org.springframework.context.annotation.internalCommonAnnotationProcessor,org.springframework.context.annotation.internalAutowiredAnnotationProcessor,org.springframework.context.annotation.internalRequiredAnnotationProcessor,org.springframework.aop.config.internalAutoProxyCreator,org.springframework.transaction.annotation.AnnotationTransactionAttributeSource#0,org.springframework.transaction.interceptor.TransactionInterceptor#0,org.springframework.transaction.config.internalTransactionAdvisor,org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor#0,contaDao]; root of factory hierarchy>
07:58:18,195 INFO [STDOUT] 2008-09-04 07:58:18,195 DEBUG [org.springframework.transaction.annotation.AnnotationTransactionAttributeSource] - <Adding transactional method [save] with attribute [PROPAGATION_REQUIRED,ISOLATION_DEFAULT]>
07:58:18,223 INFO [STDOUT] 2008-09-04 07:58:18,223 DEBUG [org.springframework.transaction.annotation.AnnotationTransactionAttributeSource] - <Adding transactional method [executarServico] with attribute [PROPAGATION_REQUIRED,ISOLATION_DEFAULT]>
07:58:18,349 INFO [STDOUT] 2008-09-04 07:58:18,349 INFO [org.springframework.orm.hibernate3.HibernateTransactionManager] - <Using DataSource [org.apache.commons.dbcp.BasicDataSource@1ced290] of Hibernate SessionFactory for HibernateTransactionManager>
07:58:18,383 INFO [STDOUT] 2008-09-04 07:58:18,383 INFO [org.springframework.web.context.ContextLoader] - <Root WebApplicationContext: initialization completed in 3552 ms>
07:58:18,388 INFO [[/SISAG]] Set web app root system property: ‘webapp.root’ = [/usr/local/jboss-4.2.2.GA/server/default/./tmp/deploy/tmp5444SISAG-exp.war/]
07:58:18,389 INFO [[/SISAG]] Initializing log4j from [/usr/local/jboss-4.2.2.GA/server/default/./tmp/deploy/tmp5444SISAG-exp.war/WEB-INF/classes/log4j.properties]
07:58:18,878 INFO [STDOUT] 2008-09-04 07:58:18,878 INFO [org.springframework.web.struts.ContextLoaderPlugIn] - <ContextLoaderPlugIn for Struts ActionServlet 'action, module ‘’: initialization started>
07:58:18,879 INFO [[/SISAG]] Initializing WebApplicationContext for Struts ActionServlet ‘action’, module ‘’
07:58:18,881 INFO [STDOUT] 2008-09-04 07:58:18,880 INFO [org.springframework.web.context.support.XmlWebApplicationContext] - <Refreshing org.springframework.web.context.support.XmlWebApplicationContext@6076f4: display name [WebApplicationContext for namespace ‘action-servlet’]; startup date [Thu Sep 04 07:58:18 BRT 2008]; parent: org.springframework.web.context.support.XmlWebApplicationContext@f72e77>
07:58:18,881 INFO [STDOUT] 2008-09-04 07:58:18,881 INFO [org.springframework.beans.factory.xml.XmlBeanDefinitionReader] - <Loading XML bean definitions from ServletContext resource [/WEB-INF/applicationContext.xml]>
07:58:18,948 INFO [STDOUT] 2008-09-04 07:58:18,948 INFO [org.springframework.web.context.support.XmlWebApplicationContext] - <Bean factory for application context [org.springframework.web.context.support.XmlWebApplicationContext@6076f4]: org.springframework.beans.factory.support.DefaultListableBeanFactory@640b25>
07:58:18,954 INFO [STDOUT] 2008-09-04 07:58:18,954 INFO [org.springframework.beans.factory.config.PropertyPlaceholderConfigurer] - <Loading properties file from file [/usr/local/jboss-4.2.2.GA/server/default/tmp/deploy/tmp5444SISAG-exp.war/WEB-INF/classes/log4j.properties]>
07:58:18,954 INFO [STDOUT] 2008-09-04 07:58:18,954 INFO [org.springframework.beans.factory.config.PropertyPlaceholderConfigurer] - <Loading properties file from file [/usr/local/jboss-4.2.2.GA/server/default/tmp/deploy/tmp5444SISAG-exp.war/WEB-INF/classes/jdbc-postgresql.properties]>
07:58:18,954 INFO [STDOUT] 2008-09-04 07:58:18,954 INFO [org.springframework.beans.factory.config.PropertyPlaceholderConfigurer] - <Loading properties file from file [/usr/local/jboss-4.2.2.GA/server/default/tmp/deploy/tmp5444SISAG-exp.war/WEB-INF/classes/http.properties]>
07:58:18,956 INFO [STDOUT] 2008-09-04 07:58:18,956 INFO [org.springframework.beans.factory.support.DefaultListableBeanFactory] - <Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@640b25: defining beans [org.springframework.beans.factory.config.PropertyPlaceholderConfigurer#0,contextApplicationContextProvider,sisagService,commandFactory,saqueCommand,depositoCommand]; parent: org.springframework.beans.factory.support.DefaultListableBeanFactory@6ccf3e>
07:58:18,957 INFO [STDOUT] 2008-09-04 07:58:18,957 INFO [org.springframework.web.struts.ContextLoaderPlugIn] - <Using context class ‘org.springframework.web.context.support.XmlWebApplicationContext’ for servlet ‘action’>
07:58:18,957 INFO [STDOUT] 2008-09-04 07:58:18,957 INFO [org.springframework.web.struts.ContextLoaderPlugIn] - <ContextLoaderPlugIn for Struts ActionServlet ‘action’, module ‘’: initialization completed in 79 ms>
07:58:19,048 INFO [TomcatDeployer] deploy, ctxPath=/jmx-console, warUrl=…/deploy/jmx-console.war/
07:58:19,371 INFO [Http11Protocol] Starting Coyote HTTP/1.1 on http-127.0.0.1-8080
07:58:19,429 INFO [AjpProtocol] Starting Coyote AJP/1.3 on ajp-127.0.0.1-8009
07:58:19,447 INFO [Server] JBoss (MX MicroKernel) [4.2.2.GA (build: SVNTag=JBoss_4_2_2_GA date=200710221139)] Started in 22s:460ms
07:58:21,951 INFO [STDOUT] 2008-09-04 07:58:21,951 DEBUG [org.springframework.transaction.annotation.AnnotationTransactionAttributeSource] - <Adding transactional method [findByNumber] with attribute [PROPAGATION_REQUIRED,ISOLATION_DEFAULT]>
07:58:22,036 INFO [STDOUT] 2008-09-04 07:58:22,035 DEBUG [org.hibernate.jdbc.ConnectionManager] -
07:58:22,036 INFO [STDOUT] 2008-09-04 07:58:22,036 DEBUG [org.hibernate.jdbc.JDBCContext] -
07:58:22,039 INFO [STDOUT] 2008-09-04 07:58:22,039 DEBUG [org.springframework.transaction.support.TransactionSynchronizationManager] - <Bound value [org.springframework.jdbc.datasource.ConnectionHolder@ea58e3] for key [org.apache.commons.dbcp.BasicDataSource@1ced290] to thread [http-127.0.0.1-8080-2]>
07:58:22,039 INFO [STDOUT] 2008-09-04 07:58:22,039 DEBUG [org.springframework.transaction.support.TransactionSynchronizationManager] - <Bound value [org.springframework.orm.hibernate3.SessionHolder@35378d] for key [org.hibernate.impl.SessionFactoryImpl@171ccb0] to thread [http-127.0.0.1-8080-2]>
07:58:22,039 INFO [STDOUT] 2008-09-04 07:58:22,039 DEBUG [org.springframework.transaction.support.TransactionSynchronizationManager] -
07:58:22,041 INFO [STDOUT] 2008-09-04 07:58:22,041 DEBUG [org.springframework.transaction.interceptor.TransactionInterceptor] - <Getting transaction for [com.example.sisag.dao.ContaDao.findByNumber]>
07:58:22,041 INFO [STDOUT] 2008-09-04 07:58:22,041 DEBUG [org.springframework.transaction.support.TransactionSynchronizationManager] - <Retrieved value [org.springframework.orm.hibernate3.SessionHolder@35378d] for key [org.hibernate.impl.SessionFactoryImpl@171ccb0] bound to thread [http-127.0.0.1-8080-2]>
07:58:22,048 INFO [STDOUT] 2008-09-04 07:58:22,048 DEBUG [org.hibernate.jdbc.AbstractBatcher] - <about to open PreparedStatement (open PreparedStatements: 0, globally: 0)>
07:58:22,093 INFO [STDOUT] Hibernate:
select
conta0
.numero as numero0_1_,
conta0_.pessoa_id as pessoa3_0_1_,
conta0_.saldo as saldo0_1_,
pessoa1_.id as id1_0_,
pessoa1_.nome as nome1_0_
from
Conta conta0_
left outer join
Pessoa pessoa1_
on conta0_.pessoa_id=pessoa1_.id
where
conta0_.numero=?
07:58:22,094 INFO [STDOUT] 2008-09-04 07:58:22,094 DEBUG [org.hibernate.jdbc.AbstractBatcher] -
07:58:22,181 INFO [STDOUT] 2008-09-04 07:58:22,181 DEBUG [org.hibernate.jdbc.AbstractBatcher] - <about to open ResultSet (open ResultSets: 0, globally: 0)>
07:58:22,191 INFO [STDOUT] 2008-09-04 07:58:22,191 DEBUG [org.hibernate.jdbc.AbstractBatcher] - <about to close ResultSet (open ResultSets: 1, globally: 1)>
07:58:22,192 INFO [STDOUT] 2008-09-04 07:58:22,192 DEBUG [org.hibernate.jdbc.AbstractBatcher] - <about to close PreparedStatement (open PreparedStatements: 1, globally: 1)>
07:58:22,192 INFO [STDOUT] 2008-09-04 07:58:22,192 DEBUG [org.hibernate.jdbc.AbstractBatcher] -
07:58:22,199 INFO [STDOUT] 2008-09-04 07:58:22,199 DEBUG [org.springframework.transaction.interceptor.TransactionInterceptor] - <Completing transaction for [com.example.sisag.dao.ContaDao.findByNumber]>
07:58:22,207 INFO [STDOUT] 2008-09-04 07:58:22,207 DEBUG [org.hibernate.jdbc.ConnectionManager] -
07:58:22,207 INFO [STDOUT] 2008-09-04 07:58:22,207 DEBUG [org.hibernate.jdbc.ConnectionManager] -
07:58:22,208 INFO [STDOUT] 2008-09-04 07:58:22,208 DEBUG [org.hibernate.jdbc.JDBCContext] -
07:58:22,210 INFO [STDOUT] 2008-09-04 07:58:22,210 DEBUG [org.hibernate.jdbc.JDBCContext] -
07:58:22,210 INFO [STDOUT] 2008-09-04 07:58:22,210 DEBUG [org.hibernate.jdbc.ConnectionManager] - <transaction completed on session with on_close connection release mode; be sure to close the session to release JDBC resources!>
07:58:22,211 INFO [STDOUT] 2008-09-04 07:58:22,210 DEBUG [org.springframework.transaction.support.TransactionSynchronizationManager] -
07:58:22,211 INFO [STDOUT] 2008-09-04 07:58:22,211 DEBUG [org.springframework.transaction.support.TransactionSynchronizationManager] - <Removed value [org.springframework.orm.hibernate3.SessionHolder@35378d] for key [org.hibernate.impl.SessionFactoryImpl@171ccb0] from thread [http-127.0.0.1-8080-2]>
07:58:22,211 INFO [STDOUT] 2008-09-04 07:58:22,211 DEBUG [org.springframework.transaction.support.TransactionSynchronizationManager] - <Removed value [org.springframework.jdbc.datasource.ConnectionHolder@ea58e3] for key [org.apache.commons.dbcp.BasicDataSource@1ced290] from thread [http-127.0.0.1-8080-2]>
07:58:22,211 INFO [STDOUT] 2008-09-04 07:58:22,211 DEBUG [org.hibernate.jdbc.ConnectionManager] -
07:58:22,211 INFO [STDOUT] 2008-09-04 07:58:22,211 DEBUG [org.hibernate.jdbc.ConnectionManager] - <releasing JDBC connection [ (open PreparedStatements: 0, globally: 0) (open ResultSets: 0, globally: 0)]>
07:58:22,213 INFO [STDOUT] 2008-09-04 07:58:22,213 DEBUG [org.hibernate.jdbc.JDBCContext] -
07:58:22,214 INFO [STDOUT] 2008-09-04 07:58:22,214 DEBUG [org.hibernate.jdbc.ConnectionManager] - <transaction completed on session with on_close connection release mode; be sure to close the session to release JDBC resources!>
07:58:22,217 INFO [STDOUT] 2008-09-04 07:58:22,217 DEBUG [org.springframework.transaction.annotation.AnnotationTransactionAttributeSource] - <Adding transactional method [update] with attribute [PROPAGATION_REQUIRED,ISOLATION_DEFAULT]>
07:58:22,217 INFO [STDOUT] 2008-09-04 07:58:22,217 DEBUG [org.hibernate.jdbc.ConnectionManager] -
07:58:22,217 INFO [STDOUT] 2008-09-04 07:58:22,217 DEBUG [org.hibernate.jdbc.JDBCContext] -
07:58:22,218 INFO [STDOUT] 2008-09-04 07:58:22,218 DEBUG [org.springframework.transaction.support.TransactionSynchronizationManager] - <Bound value [org.springframework.jdbc.datasource.ConnectionHolder@1d7aa64] for key [org.apache.commons.dbcp.BasicDataSource@1ced290] to thread [http-127.0.0.1-8080-2]>
07:58:22,218 INFO [STDOUT] 2008-09-04 07:58:22,218 DEBUG [org.springframework.transaction.support.TransactionSynchronizationManager] - <Bound value [org.springframework.orm.hibernate3.SessionHolder@1f3b536] for key [org.hibernate.impl.SessionFactoryImpl@171ccb0] to thread [http-127.0.0.1-8080-2]>
07:58:22,218 INFO [STDOUT] 2008-09-04 07:58:22,218 DEBUG [org.springframework.transaction.support.TransactionSynchronizationManager] -
07:58:22,218 INFO [STDOUT] 2008-09-04 07:58:22,218 DEBUG [org.springframework.transaction.interceptor.TransactionInterceptor] - <Getting transaction for [com.example.sisag.dao.ContaDao.update]>
07:58:22,218 INFO [STDOUT] 2008-09-04 07:58:22,218 DEBUG [org.springframework.transaction.support.TransactionSynchronizationManager] - <Retrieved value [org.springframework.orm.hibernate3.SessionHolder@1f3b536] for key [org.hibernate.impl.SessionFactoryImpl@171ccb0] bound to thread [http-127.0.0.1-8080-2]>
07:58:22,226 INFO [STDOUT] 2008-09-04 07:58:22,226 DEBUG [org.hibernate.jdbc.AbstractBatcher] - <about to open PreparedStatement (open PreparedStatements: 0, globally: 0)>
07:58:22,227 INFO [STDOUT] Hibernate:
select
conta0_.numero as numero0_0_,
conta0_.pessoa_id as pessoa3_0_0_,
conta0_.saldo as saldo0_0_
from
Conta conta0_
where
conta0_.numero=?
07:58:22,227 INFO [STDOUT] 2008-09-04 07:58:22,227 DEBUG [org.hibernate.jdbc.AbstractBatcher] -
07:58:22,228 INFO [STDOUT] 2008-09-04 07:58:22,228 DEBUG [org.hibernate.jdbc.AbstractBatcher] - <about to open ResultSet (open ResultSets: 0, globally: 0)>
07:58:22,229 INFO [STDOUT] 2008-09-04 07:58:22,229 DEBUG [org.hibernate.jdbc.AbstractBatcher] - <about to close ResultSet (open ResultSets: 1, globally: 1)>
07:58:22,229 INFO [STDOUT] 2008-09-04 07:58:22,229 DEBUG [org.hibernate.jdbc.AbstractBatcher] - <about to close PreparedStatement (open PreparedStatements: 1, globally: 1)>
07:58:22,229 INFO [STDOUT] 2008-09-04 07:58:22,229 DEBUG [org.hibernate.jdbc.AbstractBatcher] -
07:58:22,229 INFO [STDOUT] 2008-09-04 07:58:22,229 DEBUG [org.hibernate.jdbc.AbstractBatcher] - <about to open PreparedStatement (open PreparedStatements: 0, globally: 0)>
07:58:22,230 INFO [STDOUT] Hibernate:
select
pessoa0_.id as id1_0_,
pessoa0_.nome as nome1_0_
from
Pessoa pessoa0_
where
pessoa0_.id=?
07:58:22,230 INFO [STDOUT] 2008-09-04 07:58:22,230 DEBUG [org.hibernate.jdbc.AbstractBatcher] -
07:58:22,245 INFO [STDOUT] 2008-09-04 07:58:22,245 DEBUG [org.hibernate.jdbc.AbstractBatcher] - <about to open ResultSet (open ResultSets: 0, globally: 0)>
07:58:22,246 INFO [STDOUT] 2008-09-04 07:58:22,246 DEBUG [org.hibernate.jdbc.AbstractBatcher] - <about to close ResultSet (open ResultSets: 1, globally: 1)>
07:58:22,246 INFO [STDOUT] 2008-09-04 07:58:22,246 DEBUG [org.hibernate.jdbc.AbstractBatcher] - <about to close PreparedStatement (open PreparedStatements: 1, globally: 1)>
07:58:22,246 INFO [STDOUT] 2008-09-04 07:58:22,246 DEBUG [org.hibernate.jdbc.AbstractBatcher] -
07:58:22,250 INFO [STDOUT] 2008-09-04 07:58:22,250 DEBUG [org.springframework.transaction.interceptor.TransactionInterceptor] - <Completing transaction for [com.example.sisag.dao.ContaDao.update]>
07:58:22,255 INFO [STDOUT] 2008-09-04 07:58:22,255 DEBUG [org.hibernate.jdbc.ConnectionManager] -
07:58:22,261 INFO [STDOUT] 2008-09-04 07:58:22,261 DEBUG [org.hibernate.jdbc.AbstractBatcher] - <about to open PreparedStatement (open PreparedStatements: 0, globally: 0)>
07:58:22,261 INFO [STDOUT] Hibernate:
update
Conta
set
pessoa_id=?,
saldo=?
where
numero=?
07:58:22,261 INFO [STDOUT] 2008-09-04 07:58:22,261 DEBUG [org.hibernate.jdbc.AbstractBatcher] -
07:58:22,262 INFO [STDOUT] 2008-09-04 07:58:22,262 DEBUG [org.hibernate.jdbc.AbstractBatcher] - <Executing batch size: 1>
07:58:22,266 INFO [STDOUT] 2008-09-04 07:58:22,266 DEBUG [org.hibernate.jdbc.AbstractBatcher] - <about to close PreparedStatement (open PreparedStatements: 1, globally: 1)>
07:58:22,266 INFO [STDOUT] 2008-09-04 07:58:22,266 DEBUG [org.hibernate.jdbc.AbstractBatcher] -
07:58:22,266 INFO [STDOUT] 2008-09-04 07:58:22,266 DEBUG [org.hibernate.jdbc.ConnectionManager] -
07:58:22,266 INFO [STDOUT] 2008-09-04 07:58:22,266 DEBUG [org.hibernate.jdbc.JDBCContext] -
07:58:22,279 INFO [STDOUT] 2008-09-04 07:58:22,278 DEBUG [org.hibernate.jdbc.JDBCContext] -
07:58:22,279 INFO [STDOUT] 2008-09-04 07:58:22,279 DEBUG [org.hibernate.jdbc.ConnectionManager] - <transaction completed on session with on_close connection release mode; be sure to close the session to release JDBC resources!>
07:58:22,279 INFO [STDOUT] 2008-09-04 07:58:22,279 DEBUG [org.springframework.transaction.support.TransactionSynchronizationManager] -
07:58:22,279 INFO [STDOUT] 2008-09-04 07:58:22,279 DEBUG [org.springframework.transaction.support.TransactionSynchronizationManager] - <Removed value [org.springframework.orm.hibernate3.SessionHolder@1f3b536] for key [org.hibernate.impl.SessionFactoryImpl@171ccb0] from thread [http-127.0.0.1-8080-2]>
07:58:22,279 INFO [STDOUT] 2008-09-04 07:58:22,279 DEBUG [org.springframework.transaction.support.TransactionSynchronizationManager] - <Removed value [org.springframework.jdbc.datasource.ConnectionHolder@1d7aa64] for key [org.apache.commons.dbcp.BasicDataSource@1ced290] from thread [http-127.0.0.1-8080-2]>
07:58:22,280 INFO [STDOUT] 2008-09-04 07:58:22,280 DEBUG [org.hibernate.jdbc.ConnectionManager] -
07:58:22,280 INFO [STDOUT] 2008-09-04 07:58:22,280 DEBUG [org.hibernate.jdbc.ConnectionManager] - <releasing JDBC connection [ (open PreparedStatements: 0, globally: 0) (open ResultSets: 0, globally: 0)]>
07:58:22,280 INFO [STDOUT] 2008-09-04 07:58:22,280 DEBUG [org.hibernate.jdbc.JDBCContext] -
07:58:22,280 INFO [STDOUT] 2008-09-04 07:58:22,280 DEBUG [org.hibernate.jdbc.ConnectionManager] - <transaction completed on session with on_close connection release mode; be sure to close the session to release JDBC resources!>
07:58:22,281 ERROR [[action]] Servlet.service() for servlet action threw exception
java.lang.RuntimeException
at com.example.sisag.service.SisagServiceImpl.executarServico(SisagServiceImpl.java:50)
at com.example.sisag.web.action.ServiceAction.execute(ServiceAction.java:26)
at org.apache.struts.chain.commands.servlet.ExecuteAction.execute(ExecuteAction.java:58)
at org.apache.struts.chain.commands.AbstractExecuteAction.execute(AbstractExecuteAction.java:67)
at org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51)
at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191)
at org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:305)
at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191)
at org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446)
at java.lang.Thread.run(Thread.java:595)

Obrigado!!!

Olá Kubota,

O que acontece é que o seu applicationContext.xml está sendo carregado duas vezes, assim o Spring fica perdido. Provavelmente o plug-in do Struts é que está causando a confusão (você deve estar carregando o contextConfigLocation no web.xml e no struts-config.xml). Algo como:

[color=red] [/color]

Tente remover o plugin e utilizar a classe ActionSupport em suas Actions…

[]'s

André

Ola Brother, :smiley:

O problema esta na configuracao da integracao do Struts com o Spring! Voce descobriu a falha, agora esta tudo funcionando!

Muito Obrigado,
Sergio kubota =-)