[ 
https://issues.apache.org/jira/browse/DELTASPIKE-1300?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Gerhard Petracek resolved DELTASPIKE-1300.
------------------------------------------
    Resolution: Invalid

please have a look at
http://deltaspike.apache.org/documentation/jpa.html#JTASupport
esp. at
globalAlternatives.org.apache.deltaspike.jpa.spi.transaction.TransactionStrategy

> WFLYJPA0060: Transaction is required to perform this operation (either use a 
> transaction or extended persistence context)
> -------------------------------------------------------------------------------------------------------------------------
>
>                 Key: DELTASPIKE-1300
>                 URL: https://issues.apache.org/jira/browse/DELTASPIKE-1300
>             Project: DeltaSpike
>          Issue Type: Bug
>          Components: JPA-Module
>    Affects Versions: 1.6.1
>         Environment: Wildfly 10.1.0, RESTeasy 3.0.19, CDI 1.2, Ubuntu 16.04
>            Reporter: Nicolas Duminil
>              Labels: Transactional
>
> Hello,
> In a JAX-RS service, using RestEasy 3.0 on Wildfly 10.1, I have the following 
> producer:
> @ApplicationScoped
> public class EntityManagerProducer
> {
>   @PersistenceContext(unitName = "customers")
>   private EntityManager em;
>   @Produces
>   @Default
>   @RequestScoped
>   public EntityManager createEntityManager()
>   {
>     return em;
>   }
>   public void dispose(@Disposes @Default EntityManager entityManager)
>   {
>     if (entityManager.isOpen())
>       entityManager.close();
>   }
> }
> The following end-point:
>   @Inject
>   private CustomerManagementRepository repo;
> ..............
>   @POST
>   @Consumes(MediaType.APPLICATION_JSON)
>   @Transactional
>   public Response createCustomer(Customer customer)
>   {
>     Customer newCustomer = repo.saveAndFlushAndRefresh(customer);
>     return Response.created(URI.create("/customers/" + 
> newCustomer.getId())).build();
>   }
> raises the exception:
> 14:57:53,121 ERROR [io.undertow.request] (default task-1) UT005023: Exception 
> handling request to /customer-management/services/customers: 
> org.jboss.resteasy.spi.UnhandledException: 
> javax.persistence.TransactionRequiredException: WFLYJPA0060: Transaction is 
> required to perform this operation (either use a transaction or extended 
> persistence context)
>       at 
> org.jboss.resteasy.core.ExceptionHandler.handleApplicationException(ExceptionHandler.java:77)
>       at 
> org.jboss.resteasy.core.ExceptionHandler.handleException(ExceptionHandler.java:220)
> ................
> Here above the CustomerManagerRepository is:
> @Repository
> public interface CustomerManagementRepository extends 
> EntityRepository<Customer, BigInteger>
> {
>   public List<Customer> findByFirsName(String firstName);
>   public List<Customer> findByLastName (String lastName);
>   public List<Customer> findByCountry (String country);
>   public List<Customer> findByCity (String city);
>   public List<Customer> findByZip (String zip);
>   public List<Customer> findByState (String state);
>   public List<Customer> findByStreet (String street);
> }
> I also have the following beans.xml file:
> <?xml version="1.0"?>
> <beans bean-discovery-mode="annotated" version="2.0" 
> 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/beans_2_0.xsd";>
>   <alternatives>
>     
> <class>org.apache.deltaspike.jpa.impl.transaction.ContainerManagedTransactionStrategy</class>
>   </alternatives>
> </beans>
> What I'm doing wrong here ?



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to