Spring, JPA e Jboss

Pessoal tenho dois projetos criados no Eclipse: 1º - projeto-negocio e 2º - projeto-web, estou utilizando o Spring para fazer a injeção do EntityManager dentro da minha classe DAO que fica dentro do projeto-negocio, mas está dando o seguinte erro quando no metodo de salvar dou um flush(): javax.persistence.TransactionRequiredException: no transaction is in progress, esse erro ocorre quando tento separa os dois projetos onde a união deles ocorre na parte web através do applicationContext.

Quando eu coloco tudo junto em um unico projeto funciona uma beleza. A intenção é de componentizar a camada de negócio propiciando assim o reuno negocial.
Segue os trechos dos fontes:

APPLICATIONCONTECXT.XML

<?xml version="1.0" encoding="UTF-8"?>
<context:component-scan base-package="br.gov" />
<context:annotation-config />

   <jee:jndi-lookup id="dataSource" jndi-name="java:ProjetoPadraoDS" />
<bean
	class="org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor" />
<tx:annotation-driven transaction-manager="transactionManager"/>
<bean id="entityManagerFactory"
	class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
	<property name="dataSource" ref="dataSource" />
	<property name="jpaVendorAdapter">
		<bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
			<property name="showSql" value="true" />
			<property name="database" value="MYSQL" />
		</bean>
	</property>
	<property name="jpaProperties">
		<value>
			hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect
		</value>
	</property>
</bean>

PERSISTENCE.XML

<?xml version="1.0" encoding="UTF-8"?>



org.hibernate.ejb.HibernatePersistence
java:ProjetoPadraoDS







CLASSEDAO:

@Repository
public class UsuarioDAO implements IUsuarioDAO {

private EntityManager entityManager;

public EntityManager getEntityManager() {
	return this.entityManager;
}

@PersistenceContext
public void setEntityManager(EntityManager entityManager) {
	this.entityManager = entityManager;
}

@Transactional(propagation = Propagation.REQUIRED)
public void salvar(Usuario usuario) {
	try {
		entityManager.persist(usuario);
		entityManager.flush();
	} catch (Exception ex) {
		ex.printStackTrace();
		throw new RuntimeException(ex);
	}
}

}