Category Archives: SOA

Dynamic Partner Link with BPEL 2.0 and SOA Suite 12.2.1.3

Problem: Calling the external soap services dynamically using BPEL 2.0.

Issues Fixed:

<selectionFailure xmlns=”h ttp://docs.oasis-open.org/wsbpel/2.0/process/executable”>

<part name=”summary”>

<summary>fromValue is not a sref:service-ref element</summary>

</part>

Continue reading →

Transactions in SOA

Transactions

  • Services can be:
    • Non-Transactional Services
    • Transactional Service
  • Non-Transactional services are the services that does not modify data.

E.g. File Adapter, FTP Adapter

  • Transactional service can be defined as any service that performs DML operations, where each operation are subject to ACID(Atomicity, Consistency, Isolation, Durability) principles.
  • Transactional services are implemented as a java web services or adapter services which are invoked from SOA using BPEL or Mediator
  • Transactional boundaries depend on context, configurations and environment of the services that are implemented and invoked.
  • Transactional semantics differs for the services that are invoked synchronously compared with services invoked asynchronously.

Continue reading →

SOA Suite 12C Installation and Domain Creations

Open cmd prompt as Administrator

C:\>cd Java\jdk1.7.0_65\bin

C:\Java\jdk1.7.0_65\bin>java -jar C:\Softwares\fmw_12.1.3.0.0_soaqs_Disk1_1of1\f

mw_12.1.3.0.0_soa_quickstart.jar

 

We can configure below mentioned three different types of domain in Oracle SOA 12c.

 

Integrated WebLogic Server’s default domain in JDeveloper – Uses internal JavaDB

Standalone domain – Uses internal JavaDB

Compact domain – Uses External Oracle DB

Continue reading →

SOA Server Startup Failed with error message: JDBC LLR, table verify failed for table ‘WL_LLR_ADMINSERVER’, row ‘JDBC LLR Domain//Server’

Most common errors that you probably get when you are starting off on soa server. While starting the server, if you check the server logs, and you get a message similar to this

<Critical> <JTA> <BEA-110482> <A logging last resource failed during initialization. The server cannot boot unless all configured logging last resources (LLRs) initialize. Failing reason:

weblogic.transaction.loggingresource.LoggingResourceException: java.sql.SQLException: JDBC LLR, table verify failed for table ‘WL_LLR_ADMINSERVER’, row ‘JDBC LLR Domain//Server’ record had unexpected value ‘base_domain//AdminServer’ expected ‘domain1//AdminServer’*** ONLY the original domain and server that creates an LLR table may access it ***

Continue reading →

Mediator with Re-sequencing

Mediator:
  1. Provides mediation capabilities such as routing, transformation, and validation capabilities.
  2. Provides a lightweight framework to mediate between various components within a composite application
  3. Provides services like
  • Content based routing and header based routing
  • Sequential and parallel routing
  • Message re-sequencing
  • Data transformation
  • Payload validation
  • Event Handling

When you compare your Mediator with BPEL, using Mediator you can achieve everything what you achieve using BPEL. But it will be difficult to implement complex logic in Mediator.

But if you want to implement the re-sequencing of incoming message before calling to external system/process, which can’t be achieve with BPEL. In this case we only Mediator can solve the problem. Know lets see use-case with implementation

Continue reading →

Business Rules

Oracle Business Rules allows you in separating rule logic from underlying application code(i.e. in BPEL, Mediator) to enable business persons to take dynamic decisions at run-time allowing them to modify the rule at run-time.

Business Rules provide more agile rule maintenance and empowers business analysts with the ability to modify rule logic without programmer assistance and without interrupting business processes.

In SOA Suite, BPEL, Human task and Mediator service components can make use of rules for dynamic routing. A mediator service component can use a business rule for routing messages, and a human task can use a business rule for routing assignments.

The Oracle Metadata Repository (MDS) stores the rulesets for Oracle Business Rules.

Use case: In Banking systems, Average minimum monthly balance to be maintained in an account many vary from time to time. In this example we will get account id, average minimum monthly balance as inputs to the process and call a business rules service to evaluate business rule saying maintenance fee will be applicable if average balance is less than 10000.

Continue reading →

JMSAdapter

In this post we will implement the following

1. How to configure JMS server, Queue on weblogic server.

2. BPEL process publishing messages to Queue

Continue reading →

Dehydration In SOA

Why Dehydration

  • Long running process or processes waiting for response consumes memory and CPU
  • While waiting for the response the bpel engine can store the process, thus freeing up server resources.
  • Over the life cycle of the BPEL instance, the instance with the current state of execution may be saved in database.

Continue reading →

Transactions in SOA

  • In SOA space, Services can be either:
    • Non-Transactional Services
    • Transactional Service
  • Non-Transactional services are the services that does not modify data.

E.g. File Adapter, FTP Adapter

Continue reading →

BPEL Process with multiple Operations / Pick Activity / BPEL Process in Top-down approach

Topics covered:

1. Developing a BPEL process which can expose multiple operations to its clients or handle multiple messages request from clients

2. Developing the BPEL process in Top – Down approach

3. Having a pick activity as the first activity in BPEL process

4. Developing a BPEL process Based on WSDL

5. Developing XSD and WSDL

Sample Description:

    Implementing the Calculator service which exposes 4 operations( addition, subtraction, multiplication, division) which takes 2 parameters as input and returns value. Use BPEL to implement the Calculator service and expose it as service so that client can any operations of his choice

Continue reading →