This includes:
- Pre-requisites for Connectivity Agent
- Download Connectivity Agent
- Install Connectivity Agent
- Start/Stop Connectivity Agent.
- Log files of Connectivity Agent
This includes:
While one of the SOA external DB was upgrading to 19c, I have stumbled with this following error during the datasourse connection testing.
Test of WorkboothDB on server osb_server1 failed, reason:
Error Connection test failed with the following exception: weblogic.common.resourcepool.ResourceDeadException: 0:weblogic.common.ResourceException: ORA-01034: ORACLE not available ORA-27101: shared memory realm does not exist IBM AIX RISC System/6000 Error: 2: No such file or directory
Solution:
This is because the Database instance name got changed. I have used the correct instance name and it got resolved.
This includes:
Connectivity Agent in HA :
To tackle the high traffic on a single connectivity agent, you can install Connectivity Agent in High Availability mode. you can associate max two agents with a single agent group and both the agents should run on different hosts. The HA mode ensures the transactions will continue if any of the agents goes down or any hosts becomes unavailable.
Connectivity agent constraints:
Go to pgpkeygen and fill up few details like your name, email id and choose algorithm as RSA , key size as 4096 bits(more secure). expires and passphrase and click generate keys.
Now download the keys.The Wait activity works well with an asynchronous BPEL process but not with a synchronous BPEL process where a transaction is required. The Wait activity involves a dehydration. Dehydration will persist the process and continue the process in a new thread. When the BPEL process is transaction required, the persist will not be complete until the BPEL process completes and transaction commits.
Synchronous BPEL process with a wait activity fails with a timeout
One of the solutions is possible:
Remove the following line from the synchronous BPEL process component:
required
OR
Change bpel.config.transaction to “requiredNew”
requiredNew
Data manipulations and text transformations with SED:
type -a sed
sed is /usr/bin/sed
sed is /bin/sed
About curl command:
syntax:
curl [options] [URL...]
Here are the options that we’ll use when making requests:
-X, --request - The HTTP method to be used.
-i, --include - Include the response headers.
-d, --data - The data to be sent.
-H, --header - Additional header to be sent.
Verbose:
When we are testing, it’s a good idea to set the verbose mode on:
curl -v http://www.example.com/
As a result, the commands would provide helpful information such as the resolved IP address, the port we are trying to connect to and the headers.
Example:
curl -v -d '{"Customer": {"ID": "ID10","Name": "Name11","Address": "Address12"}}' -H 'Content-Type: application/json' http://localhost:8001/soa-infra/resources/POC/LoopInBPELProject/RestService/abc
* Connected to host (host ip) port 8001
> POST /soa-infra/resources/POC/LoopInBPELProject/RestService/abc HTTP/1.1
User-Agent: curl/7.9.3 (powerpc-ibm-aix5.3.0.0) libcurl 7.9.3 (OpenSSL 0.9.8y) (ipv6 enabled)
Host: localhost:8001
Pragma: no-cache
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, */*
Content-Type: application/json
Content-Length: 68
{"Customer": {"ID": "ID10","Name": "Name11","Address": "Address12"}}
<CustomersRes xmlns="http://www.cust.abc">
<Outcome>ID10</Outcome>
</CustomersRes>
* Connection #0 left intact
* Closing connection #0
Output:
By default, curl outputs the response body to standard output. Optionally, we can provide the output option to save to a file:
curl -o out.json http://www.example.com/index.html
This is especially helpful when the response size is large.
Example:
1. Export 11g OSB code and import in 12c Jdeveloper. Steps to import OSB project in Jdeveloper: File⇾Import⇾Service Bus Resources⇾ Se...