Using JPA in SCA Spring Beans by Dusan Chromy

When using  Oracle SOA Suite 11g SCA Spring Bean components you will likely be facing a decision about how to interact with your database from within the Spring Beans. The answer will ultimately depend on your overall system architecture. For instance you may wire a Spring Bean directly to a DB adapter, or you can encapsulate the data access inside a web service or an EJB session bean. In my last project we have decided to access the data directly from the Spring Beans, taking advantage of the flexibility provided by Spring's JDBC abstraction framework. In fact Spring makes JDBC access so simple that it is easy to miss other alternatives, one of them being especially noteworthy - the Java Persistence API.

Java Persistence API has greatly simplified the object-relational mapping in Java. Let's have a look at how JPA can be incorporated into an SCA application.
The Service
We will create a simple service inspired by my other passion, motorcycles. The service will provide these operations:

  • createBike - creates an entity for a motorcycle with the specified manufacturer and model name and returns the entity's ID.
  • getBikeDescription - retrieves the description of a motorcycle with the specified ID.

The Project
We start with an empty composite project and add a Spring Bean, following the code-first approach:

  • Create a Java interface for our SCA service: MotoService.java
  • Create a dummy implementation of the above interface MotoServiceImpl.java.
  • Create a Spring Context which uses the classes created in the above steps.
  • Wire the Spring Context to the Exposed Services lane - this step will generate MotoService.wsdl.

Read the complete article here.

SOA & BPM Partner Community

For regular information on Oracle SOA Suite become a member in the SOA & BPM Partner Community for registration please visit www.oracle.com/goto/emea/soa (OPN account required) If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn image[7][2][2][2] Facebook clip_image002[8][4][2][2][2] Wiki

Comments:

Post a Comment:
  • HTML Syntax: NOT allowed
About





Search

Archives
« April 2014
SunMonTueWedThuFriSat
  
15
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
Today