JSF 2.2+JPA (Eclipse Link 2.5 Kepler) +Spring 3.2.4 + Glassfish 4.0 + PrimeFaces 3.5

Amigos estou “apanhando” para configurar este ambiente e subir corretamente.
Configurei o pool de conexões no próprio Glassfish e em outro projeto (que não utiliza o Spring) o mesmo pool esta funcionando Ok.

Eu sei que o Spring é muito mais que isso, mas ele gerenciar as transações e inserir a Injeção de dependência ja esta ótimo pra mim no momento.

Creio que deve estar faltando alguma configuração. Por favor que puder/ souber oque esta errado ou faltando ou ate me indicar algum tutorial que supra ou tenha algo parecido para seguir como exemplo eu agradeço muito!

Segue os arquivos de configuração:

persistence.xml

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.1" xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd">
	<persistence-unit name="AdviceTeste" transaction-type="JTA">
	
			<jta-data-source>jdbc/WPOSPool</jta-data-source>
			
			<class>br.adv.wpos.entities.AcdAluno</class>
			<class>br.adv.wpos.entities.TgrPessoa</class>
			
			<exclude-unlisted-classes>true</exclude-unlisted-classes>
			
	
	</persistence-unit>
</persistence>

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"
	xmlns:jdbc="http://www.springframework.org/schema/jdbc" xmlns:tx="http://www.springframework.org/schema/tx"
	xmlns:mvc="http://www.springframework.org/schema/mvc"	
	xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd
	 http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.0.xsd
		http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
		http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
		http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd">

	<bean class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
		<property name="persistenceUnitName" value="AdviceTeste" />
	</bean>

	<context:component-scan base-package="br.adv.wpos" />

	<bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
		<property name="entityManagerFactory" ref="entityManagerFactory" />
	</bean>
	
	<mvc:annotation-driven />

	<tx:annotation-driven />

	<context:annotation-config />


</beans>

faces-config.xml

<?xml version="1.0" encoding="UTF-8"?>
<faces-config
    xmlns="http://xmlns.jcp.org/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-facesconfig_2_2.xsd"
    version="2.2">
	
	<application>
    	<el-resolver>org.springframework.web.jsf.el.SpringBeanFacesELResolver</el-resolver>
	</application>
	
</faces-config>

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <display-name>AdviceTeste_2</display-name>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
  <servlet>
    <servlet-name>Faces Servlet</servlet-name>
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>*.faces</url-pattern>
  </servlet-mapping>
  <context-param>
    <description>State saving method: 'client' or 'server' (=default). See JSF Specification 2.5.2</description>
    <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
    <param-value>client</param-value>
  </context-param>
  <context-param>
    <param-name>javax.servlet.jsp.jstl.fmt.localizationContext</param-name>
    <param-value>resources.application</param-value>
  </context-param>
  <listener>
    <listener-class>com.sun.faces.config.ConfigureListener</listener-class>
  </listener>
  
  <!-- Configuração Spring -->
  
  <listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>
 
  <listener>
    <listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
  </listener>
      
  <!-- Configuração Spring -->
  
</web-app>

O spring é chato demais para fazer essa parte de integração com o JPA. Como você está usando o Glassfish, não tem como você usar CDI mesmo?

Obrigado pela resposta drsmachado, então o outro projeto que menciono que esta funcionando é exatamente com o CDI e esta funfando bem legal gerenciando as transações e tudo mais, mas queria tentar montar um com Spring para fazer um “de para” entre as duas arquiteturas.

Alguém mais pode ajudar?

Obrigado

Alguém?

Então sugiro remover toda a padronização…
CDI (IoC e DI): Spring Framework
JPA : Hibernate (ao invés de EntityManager, usar Session)
Isso é plenamente possível e fica mais fácil gerenciar pelo Spring…

usar session fica bem mais facil com spring como o amigo a cima disse.

é complicado se fizer por jpa
eu fiz uma vez e confesso da vontade de chuta tudo kkkk (ate dar certo pelo tempo que leva para você entender)
mas funcionou…

Aqui tem um exemplo parecido, rodando em JBoss… Vai precisar de uns ajustes, mas funciona.
http://www.guj.com.br/java/302012-jboss-711--spring-32--hibernate-4#1603943

[quote=drsmachado]Aqui tem um exemplo parecido, rodando em JBoss… Vai precisar de uns ajustes, mas funciona.
http://www.guj.com.br/java/302012-jboss-711--spring-32--hibernate-4#1603943[/quote]

Obrigado pelo Link eu olhei sim e utilizei como exemplo. Após algumas pesquisas também consegui fazer o projeto subir e rodar, porém quando chamo a action de um metodo que executa um select simples, esta me retornando o seguinte erro: [color=black]javax.faces.FacesException: #{telaPrincipal.populaLista}: org.springframework.transaction.UnexpectedRollbackException: JTA transaction unexpectedly rolled back (maybe due to a timeout); nested exception is javax.transaction.RollbackException: Transaction marked for rollback. [/color]

Eu debuguei e esta funcionando OK a injeção de dependência, ele executa a query traz o retorno o erro esta acontecendo ao retornar a lista e ai estoura esta Exception que mencionei acima

Creio que eu esteja no quase…

Segue o 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"
    xmlns:jee="http://www.springframework.org/schema/jee"
    xmlns:tx="http://www.springframework.org/schema/tx"
	xsi:schemaLocation="http://www.springframework.org/schema/beans
    http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
    http://www.springframework.org/schema/context
    http://www.springframework.org/schema/context/spring-context-3.0.xsd
    http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
    http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.0.xsd">
    
     <!-- Data Source -->  
    <bean id="poolBean" class="org.springframework.jndi.JndiObjectFactoryBean">  
        <property name="jndiName" value="jdbc/WPOSPool" />  
        <property name="resourceRef" value="true" />  
    </bean>  
  
    <!-- Compartilha a transação JPA -->  
    <bean id="jpaDialect" class="org.springframework.orm.jpa.vendor.EclipseLinkJpaDialect" />  
  
    <!-- JPA -->  
    <!-- Gerenciador de EntityManagerFactory -->  
    <bean id="emf" class="org.springframework.orm.jpa.LocalEntityManagerFactoryBean">  
        <property name="persistenceUnitName" value="AdviceTeste" />  
    </bean> 
     
    <!-- Gerenciador de transação -->
    
    <bean id="transacaoJPA" class="org.springframework.transaction.jta.JtaTransactionManager" />
    	    
    <tx:jta-transaction-manager />
    	
    <context:component-scan base-package="br.adv.wpos" />   		    
   
    <context:annotation-config />
  
    <!-- Localiza e faz auto DI para os bean com @Transaction -->  
    <tx:annotation-driven transaction-manager="transacaoJPA" />
    
    <!-- Localiza e faz auto DI para os bean com @PersistenceContext -->  
    <bean class="org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor" /> 
	
	
</beans>

Quem puder dar mais alguma opinião eu agradeço muito!

Obrigado

O stack trace completo é apenas isso que você colocou aí?

Opa desculpe segue o stack completo:

INFO: EclipseLink, version: Eclipse Persistence Services - 2.5.0.v20130507-3faac2b
INFO: file:/D:/GlassFish4/glassfish/domains/domain1/eclipseApps/AdviceTeste_2/WEB-INF/classes/_AdviceTeste login successful
INFO: WebModule[null] ServletContext.log():No Spring WebApplicationInitializer types detected on classpath
INFO: Registering the Jersey servlet application, named org.eclipse.persistence.jpa.rs.service.JPARSApplication, at the servlet mapping /persistence/*, 
with the Application class of the same name.
INFO: Inicializando Mojarra 2.2.0 ( 20130502-2118 https://svn.java.net/svn/mojarra~svn/tags/2.2.0@11930) para o contexto '/AdviceTeste_2'
WARNING: WELD-001529 An InjectionTarget implementation is created for a class org.primefaces.context.PrimePartialViewContextFactory which 
does not have any appropriate constructor.
INFO: Running on PrimeFaces 3.5
INFO: WebModule[null] ServletContext.log():Initializing Spring root WebApplicationContext
INFO: Root WebApplicationContext: initialization started
INFO: Refreshing Root WebApplicationContext: startup date [Mon Sep 16 11:19:03 BRT 2013]; root of context hierarchy
INFO: Loading XML bean definitions from ServletContext resource [/WEB-INF/applicationContext.xml]
INFO: JSR-250 'javax.annotation.ManagedBean' found and supported for component scanning
INFO: JSR-330 'javax.inject.Named' annotation found and supported for component scanning
INFO: JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
INFO: Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@138c4b9: defining beans [poolBean,jpaDialect,emf,transacaoJPA,transactionManager,acdAlunoDaoImpl,telaPrincipal,acdAlunoServiceImpl,
org.springframework.context.annotation.internalConfigurationAnnotationProcessor,
org.springframework.context.annotation.internalAutowiredAnnotationProcessor,
org.springframework.context.annotation.internalRequiredAnnotationProcessor,
org.springframework.context.annotation.internalCommonAnnotationProcessor,
org.springframework.context.annotation.internalPersistenceAnnotationProcessor,org.springframework.aop.config.internalAutoProxyCreator,
org.springframework.transaction.annotation.AnnotationTransactionAttributeSource#0,
org.springframework.transaction.interceptor.TransactionInterceptor#0,
org.springframework.transaction.config.internalTransactionAdvisor,org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor#0,
org.springframework.context.annotation.ConfigurationClassPostProcessor.importAwareProcessor]; root of factory hierarchy
INFO: Building JPA EntityManagerFactory for persistence unit 'AdviceTeste'
INFO: Using JTA UserTransaction: com.sun.enterprise.transaction.UserTransactionImpl@1c6cbc1
INFO: Using JTA TransactionManager: com.sun.enterprise.transaction.TransactionManagerHelper@9628da
INFO: Using JTA TransactionSynchronizationRegistry: com.sun.enterprise.transaction.TransactionSynchronizationRegistryImpl@7ee378
INFO: Using JTA UserTransaction: com.sun.enterprise.transaction.UserTransactionImpl@8fd3bb
INFO: Using JTA TransactionManager: com.sun.enterprise.transaction.TransactionManagerHelper@9628da
INFO: Using JTA TransactionSynchronizationRegistry: com.sun.enterprise.transaction.TransactionSynchronizationRegistryImpl@7ee378
INFO: Root WebApplicationContext: initialization completed in 1801 ms
INFO: Loading application [AdviceTeste_2] at [/AdviceTeste_2]
INFO: AdviceTeste_2 was successfully deployed in 10.216 milliseconds.
WARNING: #{telaPrincipal.populaLista}: org.springframework.transaction.UnexpectedRollbackException: JTA transaction unexpectedly 
rolled back (maybe due to a timeout); nested exception is javax.transaction.RollbackException: Transaction marked for rollback.
javax.faces.FacesException: #{telaPrincipal.populaLista}: org.springframework.transaction.UnexpectedRollbackException: 
JTA transaction unexpectedly rolled back (maybe due to a timeout); nested exception is javax.transaction.RollbackException: Transaction marked for rollback.
	at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:118)
	at javax.faces.component.UICommand.broadcast(UICommand.java:315)
	at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:790)
	at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1282)
	at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)
	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
	at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:198)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:646)
	at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1682)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:318)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:160)
	at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:734)
	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:673)
	at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:99)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:174)
	at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:357)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:260)
	at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:188)
	at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:191)
	at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:168)
	at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:189)
	at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:288)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:206)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:136)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:114)
	at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
	at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:838)
	at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:113)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:115)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:55)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:135)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
	at java.lang.Thread.run(Thread.java:722)
Caused by: javax.faces.el.EvaluationException: org.springframework.transaction.UnexpectedRollbackException: JTA transaction unexpectedly 
rolled back (maybe due to a timeout); nested exception is javax.transaction.RollbackException: Transaction marked for rollback.
	at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:101)
	at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)
	... 34 more
Caused by: org.springframework.transaction.UnexpectedRollbackException: JTA transaction unexpectedly rolled back 
(maybe due to a timeout); nested exception is javax.transaction.RollbackException: Transaction marked for rollback.
	at org.springframework.transaction.jta.JtaTransactionManager.doCommit(JtaTransactionManager.java:1014)
	at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:755)
	at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:724)
	at org.springframework.transaction.interceptor.TransactionAspectSupport.commitTransactionAfterReturning(TransactionAspectSupport.java:475)
	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:270)
	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
	at $Proxy239.pesquisaAlunosPorId(Unknown Source)
	at br.adv.wpos.service.impl.AcdAlunoServiceImpl.pesquisaAlunosPorId(AcdAlunoServiceImpl.java:20)
	at br.adv.wpos.mbean.TelaPrincipalBBean.populaLista(TelaPrincipalBBean.java:25)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:601)
	at com.sun.el.parser.AstValue.invoke(AstValue.java:275)
	at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:304)
	at org.jboss.weld.util.el.ForwardingMethodExpression.invoke(ForwardingMethodExpression.java:40)
	at org.jboss.weld.el.WeldMethodExpression.invoke(WeldMethodExpression.java:50)
	at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:105)
	at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:87)
	... 35 more
Caused by: javax.transaction.RollbackException: Transaction marked for rollback.
	at com.sun.enterprise.transaction.JavaEETransactionImpl.commit(JavaEETransactionImpl.java:445)
	at com.sun.enterprise.transaction.JavaEETransactionManagerSimplified.commit(JavaEETransactionManagerSimplified.java:854)
	at com.sun.enterprise.transaction.UserTransactionImpl.commit(UserTransactionImpl.java:212)
	at org.springframework.transaction.jta.JtaTransactionManager.doCommit(JtaTransactionManager.java:1011)
	... 55 more

Olha esse caso esta dificil, alguém mais tem alguma ideia do que pode estar havendo! Obrigado

E ainda pra ajudar o site do springsource foi modificado e não estou conseguindo nem postar no forum de lá! para ver se consigo acertar esta configuração! :-S

cara deixa eu ver
o seu DAO cole ai seu o código

[quote=tmvolpato]cara deixa eu ver
o seu DAO cole ai seu o código[/quote]

Olá tmvolpato,

Segue código do meu DAO

interface:

package br.adv.wpos.dao;

import java.util.List;

import br.adv.wpos.entities.AcdAluno;

public interface AcdAlunoDao {
	
	public List<AcdAluno> pesquisaAlunosPorId();

}

Implementação:

package br.adv.wpos.dao.impl;

import java.util.List;

import javax.persistence.Query;

import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;

import br.adv.wpos.dao.AcdAlunoDao;
import br.adv.wpos.entities.AcdAluno;
import br.adv.wpos.jpautil.JpaManager;

@Repository
public class AcdAlunoDaoImpl extends JpaManager implements AcdAlunoDao {

	@Override
	@Transactional
	public List<AcdAluno> pesquisaAlunosPorId() {
		Query query = getEntityManager().createNativeQuery("select ALN.* FROM ACD_ALUNO ALN", AcdAluno.class);
		
		query.setFirstResult(0);  
		query.setMaxResults(10);
		
		List<AcdAluno> lista = query.getResultList();
		
		return lista;
	}

}

O que é o seu populaLista? Um método? Qual o código dele?

Olá Roselito, sim é um método da classe Controller ( MB ) segue o código da classe abaixo:

package br.adv.wpos.mbean;

import java.util.List;

import javax.faces.view.ViewScoped;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;

import br.adv.wpos.entities.AcdAluno;
import br.adv.wpos.service.AcdAlunoService;

@Controller(value="telaPrincipal")
@ViewScoped  
public class TelaPrincipalBBean {
	
	@Autowired
	private AcdAlunoService acdAlunoService;
	
	private List<AcdAluno> listaAlunos;
	private boolean ok;
	
	public void populaLista(){
		
		listaAlunos = acdAlunoService.pesquisaAlunosPorId();
		
		if(listaAlunos != null && !listaAlunos.isEmpty()){
			ok = true;
		}
	}

	public List<AcdAluno> getListaAlunos() {
		return listaAlunos;
	}

	public void setListaAlunos(List<AcdAluno> listaAlunos) {
		this.listaAlunos = listaAlunos;
	}

	public boolean isOk() {
		return ok;
	}

	public void setOk(boolean ok) {
		this.ok = ok;
	}

}

Aqui a Classe Service

package br.adv.wpos.service.impl;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import br.adv.wpos.dao.AcdAlunoDao;
import br.adv.wpos.entities.AcdAluno;
import br.adv.wpos.service.AcdAlunoService;

@Service
public class AcdAlunoServiceImpl implements AcdAlunoService {
	
	@Autowired
	private AcdAlunoDao acdAlunoDao;
	
	@Override
	public List<AcdAluno> pesquisaAlunosPorId() {
		return acdAlunoDao.pesquisaAlunosPorId();
	}

}

Bem,

Até aqui parece tudo certo… ainda falta examinar o código do DAO (pesquisaAlunosPorId()).

Comigo, pelo menos, erros assim são de violação de chave, ou erro de SQL. Um outro caso é o generator da chave primária “atrasado”, ou seja, ele tenta inserir um registro, mas na hora de checar a sequência, bate com outro valor já cadastrado e dá erro de violação. Consequentemente, a transação fica marcada como rollback…

Não sei se pode ser o seu caso.

[quote=Roselito Fávero da Silva]Bem,

Até aqui parece tudo certo… ainda falta examinar o código do DAO (pesquisaAlunosPorId()).

Comigo, pelo menos, erros assim são de violação de chave, ou erro de SQL. Um outro caso é o generator da chave primária “atrasado”, ou seja, ele tenta inserir um registro, mas na hora de checar a sequência, bate com outro valor já cadastrado e dá erro de violação. Consequentemente, a transação fica marcada como rollback…

Não sei se pode ser o seu caso.[/quote]

Então Roselito obrigado pela resposta, o fonte do DAO esta em uma resposta anterior aqui neste post, o estranho é que estou fazendo um simples select mais nada é so pra testar mesmo e este erro esta me assombrando e estou ficando sem idéia de como resolver isso.

Se puder dar uma olhada no DAO como mencionei de repente tem algo de errado la que não estou enxergando!

Obrigado

É verdade. Já estava em um post anterior…

Você já tentou tirar temporariamente a anotação @Transactional do pesquisaAlunosPorId() ?

[quote=Roselito Fávero da Silva]É verdade. Já estava em um post anterior…

Você já tentou tirar temporariamente a anotação @Transactional do pesquisaAlunosPorId() ?[/quote]

Isso eu não tentei!

Vou tentar e ja posto aqui o resultado

Valew