Patchset 10.1.3.3.1 for 10.1.3.3.0 is avaliable as Patchid 6492514.
For more information see the BPEL home page.
Tuesday, December 11, 2007
10.1.3.3.1 Patchset Release now available!
Posted by
olu
at
11:35 AM
0
comments
Monday, November 26, 2007
Teamwork: Feedback
In software development teams it is important to be open and give feedback. I have been trained to give feedback with my feelings, instead of my thoughts, and to focus on a behaviour in a "I" perspective (Not "the group thinks ").
The structure of the feedback is:
When you ...
I feel that ...
This causes ...
I wish that ...
The "I Feel" makes it hard to argue is a true statement...
I also think that it is important to educate my team on feedback reactions.
The Feedback reaction staircase looks likes follows (I guess i neeed an image for this )
___________________
___________|Continue or Change
________|Understand
_______|Explain
_______|Defend
Reject|
The idea here is that it is important to be able to "catch" feedback in the two uppermost steps, ie it is better to Understand the feedback than to Reject, Defend or Explain your behaviour. It is very,very easy to start explaining your behaviour.
Examples:
Change – ”I think that was good feedback, I will try to change my behaviour, could you help?"
Continiue – ”I think I have undersood your feedback but I will continue as before because ... "
Understand – ”Yes I understand. Could you explain a bit further.."
Explain – ”Yes, but it was because I was tired”
Defend – ”No, you misunderstood”
Reject – ”I Do not care!"
(This is from the ugl.biz courses)
Posted by
olu
at
10:36 PM
0
comments
Thursday, November 22, 2007
Purging runtime documents in B2B
The Oracle B2B purge utilities are used as :
%. setenv.sh (b2b env)
% java -ms1024M -mx1024M oracle.tip.repos.purge.PurgeManager purgeRuntime -start 01-JAN-2007 -end 20-AUG-2007 STATUS
Execution context started.
Purge started, please wait...
Purge completed.
Or with PL/SQL
exec purge_runtime('01-JAN-2007',20-AUG-2007','STATUS
Where STATUS
Posted by
olu
at
11:36 AM
0
comments
Labels: b2b, oracle, oracle_b2b
B2B and Tracking Messages in AQ
This thread on Tracking Messages in AQ in the Oracle forums is intresting
Ramesh Nittur Anantharamaiah suggests the following to for a status overview:
SELECT a.queue_table, a.name, b.waiting, b.ready, b.expired
FROM dba_queues a, v$aq b
WHERE a.qid = b.qidAND owner = 'B2B'
Martien van den Akker suggests the following query to be able to see the message ids easily:
SELECT qtb.queue,
qtb.msg_id,
qtb.msg_state,
qtb.enq_time,
qtb.delay,
qtb.user_data.msg_id,
qtb.user_data.inreplyto_msg_id b2b_inreplyto_msg_id,
decode(instr(qtb.user_data.inreplyto_msg_id, ':'), 0, qtb.user_data.inreplyto_msg_id, SUBSTR(qtb.user_data.inreplyto_msg_id, 1, instr(qtb.user_data.inreplyto_msg_id, ':') -1)) inreplyto_msg_id,
decode(instr(qtb.user_data.inreplyto_msg_id, ':'), 0, NULL, SUBSTR(qtb.user_data.inreplyto_msg_id, instr(qtb.user_data.inreplyto_msg_id, ':') + 1)) conversation_id,
qtb.user_data.from_party,
qtb.user_data.to_party,
qtb.user_data.action_name,
qtb.user_data.doctype_name,
qtb.user_data.doctype_revision,
qtb.user_data.msg_type,
qtb.user_data.payload,
qtb.user_data.attachment,
qtb.consumer_namefrom aq$ip_qtab qtb
ORDER BY enq_time DESC;
I also noted that if you have GridControl 10.2 you can create a UDM based on the following query (reference to IOUG Collaborate 07: Oracle 10g Grid Control ) :
select q.owner '.'q.name queue_name, s.readyfrom v$aq s, dba_queues q where s.qid = q.qidand q.owner IN ('B2B')
And then set alert levels as you wish:
Warning "B2B.IP_OUT_QUEUE:50;B2B.IP_IN_QUEUE:50"
Error "B2B.IP_OUT_QUEUE:100;B2B.IP_IN_QUEUE:100"
And then create create error messages such as "Queue %key% contains %value% unattended messages."
Today I also use this query to have a peek in the actual messages and "DUMP" the contents to be able to try to understand a charachter set issue:
SELECT qtb.queue,
qtb.msg_id,
DBMS_LOB.SUBSTR(qtb.user_data.payload,4000,1),
DUMP (DBMS_LOB.SUBSTR(qtb.user_data.payload,4000,1),16)
FROM aq$ip_qtab qtb
WHERE MSG_ID = '3989F49C24206660E0440003BAE85389';
To list the consumers registrated for the B2B in and out queues one may use the following SQL:
SELECT *
FROM aq$ip_qtab_s
Posted by
olu
at
10:49 AM
0
comments
Labels: b2b, oracle, oracle_b2b
Oracle OpenWorld SOA presentations
Is avaliable here.
Enjoy!
Posted by
olu
at
6:24 AM
0
comments
Tuesday, October 30, 2007
Tuesday, October 23, 2007
More Oracle BPEL 10.1.3.3 Fault Policy Management
I looked in the Technote SOA Suite 10.1.3.3.0 New Features again and suddenly there is a new chapter Fault Management Framework in there.. nice!
This new section contains the following topics:
■ Fault Management Framework Overview
■ Designing a Fault Policy
■ Fault Management Framework Use Case
■ Java Action Fault Policy
Posted by
olu
at
7:17 AM
0
comments
Monday, October 22, 2007
Oracle SOA Suite 10.1.3.1+ Cluster ?
Stellan asks "what do you mean with cluster" in his article What is an Oracle SOA Suite 10.1.3.1+ Cluster?
That is an good article!
I ask: What is an Oracle SOA Suite 10.1.3.1 + Oracle Integration B2B 10.1.2 cluster ??
Posted by
olu
at
1:35 PM
0
comments
Labels: oracle bpel
Wednesday, October 03, 2007
Rameshs Oracle Fusion Middleware B2B Blog
I noticed Ramesh Nittur Anantharamaiah's blog today, nice of Ramesh to share his thought outside of the Oracle Forums.
Sphere: Related Content
Posted by
olu
at
8:34 AM
Labels: b2b, edi, oracle, oracle bpel
Monday, September 10, 2007
Oracle BPEL 10.1.3.3 Fault Policy Management
IT-eye has a good article on Oracle BPEL 10.1.3.3 Fault Policy Management
I have not found any information on what is possible to do in the "test" tag within a condition, but this article sorts part of that out, the below example does "ora-terminate" for the "INVALID_WSDL" fault code.
<condition>
<test>$fault.code/code="INVALID_WSDL"</test>
<action ref="ora-terminate"/>
</condition>
Today however I saw a fault code = "null" from an JCA adapter so I need to have a look at what happens when the fault code is null.
Posted by
olu
at
10:31 AM
3
comments
Labels: oracle, oracle bpel
SOA Suite 10.1.3.3.0 New Features Technote
Oops, I missed this new Technote SOA Suite 10.1.3.3.0 New Features
From the list of contents:
- Deploying a Custom Worklist Application and Enabling SSO
- Changing Workflow Standard View Definitions
- New Database Views for Oracle Workflow
- File/FTP Adapter New Features
- MQSeries Adapter New Features
- Database Adapter New Features
- AQ Adapter New Features
- JMS Adapter New Features
- Oracle ESB Singleton Behavior for Inbound Adapter Endpoints
- Decision Service Support for Ilog JRules
Posted by
olu
at
5:18 AM
0
comments
Labels: oracle, oracle bpel
Saturday, September 01, 2007
BPEL 10.1.3.3 Debug "keepGlobalVariables"
In our build platform we use three diffent bpel.xml files to be able to use different settings in each environemnt, ie right now we have a dev, test and prod environment so we have three different files.
- bpel-dev.xml
- bpel-test.xml
- bpel-prod.xml
One setting that we usually use set to true in the development environment and false in the others is the keepGlobalVariables property. In BPEL 10.1.3.3. this is not set to true by default.
If thes variable is set to false you will not be able to see variable data in the BPEL Debugger window for BPEL instances that have compleated and the variable is out-of-scope.
To set the keepGlobalVariables property to true add a problerty with the name keepGlobalVariables as follows:
<BPELSuitcase>
<!-- .... -->
<BPELProcess src="test.bpel" id="test">
<configurations>
<property name="keepGlobalVariables">true</property>
</configurations>
</BPELProcess>
<!-- .... -->
</BPELSuitcase>
Posted by
olu
at
6:12 AM
0
comments
Wednesday, August 29, 2007
BPEL 10.1.3.3 Optimizes Assigns
Is suddenly a single assign in the BPEL console:

Sphere: Related Content
Posted by
olu
at
10:55 AM
0
comments
Labels: oracle, oracle bpel
Saturday, August 25, 2007
JDeveloper BPEL Assigns messes with your head ?
Have you ever wondered why the BPEL Assigns are "inline" by default? :
Is it because you should not be able to see the contents of the assign without going to the source code?
As we all know the default can be changed to regular dialogs by changing the "Use inline editors" in the "Diagram Properties" dialog:


Still however the dialog does not remember how you resized it the last time so it always pops up in its default size:
When I really wanted:

This is really annoying and time consuming, even one of my first hacks saved the state of the window when the application was closed down.
ZMover to the rescue
Since I think this behaviour is really annoying I use ZMover (thanks to Michael M @ Kentor for the tip) to rearange any "Edit Assign" that pops up. So I suggest that you try it out too if you are frustrated with the "Edit Assigns". Sadly it cannot rearrange the spacing of the columns, so that is left as homework (each time you open a large assign).
Sphere: Related Content
Posted by
olu
at
12:09 PM
0
comments
Labels: oracle, oracle bpel, oracle_soa_suite
Using Oracle Clusterware for Non-RAC Purposes
Kevin Closson blogs avout Using Oracle Clusterware for Non-RAC Purposes, it seemes that we need to run our protected FTP servers on our Oracle RAC nodes
Sphere: Related Content
Posted by
olu
at
11:54 AM
0
comments
Labels: oracle
Wednesday, August 15, 2007
SOA Suite 10.1.3.3 - Remote fault policies
<partnerLinkBinding name="mypartnerlink">
<property name="wsdlLocation">theWSDL.wsdl</property>
<property name="retryMaxCount">4</property>
<property name="retryInterval">60</property>
</partnerLinkBinding>In 10.1.3.3 Oracle decided to add a "aspect oriented" fault managment policy framework to ease fault management and to keep it in a central location.
In 10.1.3.3, the the partnerlink properties retryMaxCount and retryInterval are thenfore ignored and the new fault management policies needs to be used instead of the old setup.
The fault managment setup consists of the following files:
- %ORACLE_HOME%\bpel\domains\
\config\fault-bindings.xml - %ORACLE_HOME%\bpel\domains\
\config\fault-policies\*.xml
Note: If you create a new domain you will need to create the files manually since they are not created by default.
Here "fault-bindings" refers to policies defined in the "fault-polices" folder. That is the fault-bindings file defines which policies that are to be appliced to which processes/partnerlinks.
The XML Schema definitions for the fault policy settings are avaliable in the XMLLIB location:
- %ORACLE_HOME%\bpel\system\xmllib\fault-policy-binding.xsd and
- %ORACLE_HOME%\bpel\system\xmllib\fault-policy.xsd
Fault bindings
The fault bindings file defines that fault policy for a specific file so it basically just sets a default policy or specifies fault policies for a specific process:
The example fault bindings file has the following contents:
<?xml version="1.0" encoding="UTF-8"?>
<faultPolicyBindings version="2.0.1" xmlns="http://schemas.oracle.com/bpel/faultpolicy" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<!-- Enabling this will cause all processes in this domain to use this
fault policy -->
<process faultPolicy="DefaultPolicy"/>
<!-- DefaultPolicy is defined in ./fault-policies/DefaultPolicy.xml -->
<partnerLink faultPolicy="DefaultPolicy">
<!-- Enabling this will cause all invoke faults at partner link
name of "creditRatingService" to use fault policy with
id id = DefaultPolicy -->
<name>creditRatingService</name>
<!-- all invoke faults at partner link below port type use fault policy
with id = DefaultPolicy
The following entry covers the samples/tutorials/122.DBAdapter/InsertWithCatch sample. -->
<portType xmlns:db="http://xmlns.oracle.com/pcbpel/adapter/db/insert/">db:insert_plt</portType>
</partnerLink>
</faultPolicyBindings>
Fault policies
The fault polices file defines the action that will occur when a fault binding triggers. An action is defined as:
The actions provided are:
- retry - retry the operation "retryCount" times pausing "retryInterval" seconds between each iteration. If exponentialBackoff is set the "retryInterval" will be increased exponantially. "retryFailureAction" specifies what will happen if the retry operation fails and "retrySuccessAction" specifies an action to take if the retry operation is successful.
- rethrowFault - bubble up the fault to the closest "catch" handler
- humanIntervention - mark the work item to be "pending recovery from the BPEL console
- abort - terminate the instance
- replayScope - replay scope fault
- javaAction - execute a custom java function
A condition is used to "select" the appropriate action to be taken.
The example and default "DefaultPolicy.xml" file has the following contents:
<?xml version="1.0" encoding="UTF-8"?>
<faultPolicy version="2.0.1" id="DefaultPolicy" xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.oracle.com/bpel/faultpolicy" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<!-- This section describes fault conditions. Build more conditions with faultName, test and action -->
<Conditions>
<!-- Fault if wsdlRuntimeLocation is not reachable -->
<faultName xmlns:bpelx="http://schemas.oracle.com/bpel/extension" name="bpelx:remoteFault">
<condition>
<action ref="ora-retry"/>
</condition>
</faultName>
<!-- Fault if location port is not reachable-->
<faultName xmlns:bpelx="http://schemas.oracle.com/bpel/extension" name="bpelx:bindingFault">
<condition>
<action ref="ora-rethrow-fault"/>
</condition>
</faultName>
</Conditions>
<Actions>
<!-- This action will attempt 8 retries at increasing intervals of 2, 4, 8, 16, 32, 64, 128, and 256 seconds. -->
<Action id="ora-retry">
<retry>
<retryCount>8</retryCount>
<retryInterval>2</retryInterval>
<exponentialBackoff/>
</retry>
</Action>
<!-- This is an action will cause a replay scope fault-->
<Action id="ora-replay-scope">
<replayScope/>
</Action>
<!-- This is an action will bubble up the fault-->
<Action id="ora-rethrow-fault"> <rethrowFault/>
</Action>
<!-- This is an action will mark the work item to be "pending recovery from console"-->
<Action id="ora-human-intervention">
<humanIntervention/>
</Action>
<!-- This action will cause the instance to terminate-->
<Action id="ora-terminate">
<abort/>
</Action>
</Actions>
</faultPolicy>
Sphere: Related Content
Posted by
olu
at
5:30 AM
1 comments
Labels: bpel, error handling, oracle
Oracle names 11g Database price
The Register has a post that Oracle has revieled the 11g Server pricing schema. Here is the Oracle pressrelease.
Oracle options for 11g are: Oracle Real Application Testing, Advanced Compression, Total Recall and Active Data Guard.
Pricing for Oracle Database 11g editions and existing options remains unchanged. The following new Oracle Database 11g Enterprise Edition options are priced as follows:
- Oracle Real Application Testing -- $10,000 per processor or $200 per named user
- Oracle Advanced Compression -- $10,000 per processor or $200 per named user
- Oracle Total Recall -- $5,000 per processor or $100 per named user
- Oracle Active Data Guard -- $5,000 per processor or $100 per named user.
Oracle's complete technology price list is available at: http://www.oracle.com/corporate/pricing/pricelists.html . Sphere: Related Content
Posted by
olu
at
3:25 AM
0
comments
Labels: oracle
Patch 10.1.3.3 for SOA Suite status
We have now run the Patch 10.1.3.3 for SOA Suite for two weeks and all tests show that’s better for us. Logging seems much better especially for the BAM sensors and error messages for JDeveloper.
Sphere: Related Content
Posted by
olu
at
3:23 AM
0
comments
Thursday, June 28, 2007
Patch 10.1.3.3 for SOA Suite
Patch 10.1.3.3 is now avaliable from metalink.oracle.com as patch number 6148874. As we run Sun Solaris we will need to wait 20-30 days for the patch I guess...
More information is located in the following Metalink Notes:
Oracle Application Server 10g Release 3 (10.1.3) Support Status and Alerts Note:397022.1
Note 435108.1 Oracle Application Server 10g Release 3 (10.1.3.3) Patch Set Notes Addendum
Note 437825.1 Fixed Bugs List - 10.1.3.3 Patchset for Oracle Application Server 10g Release 3
Posted by
olu
at
12:23 AM
0
comments
Tuesday, June 19, 2007
BPEL / SOA 10.1.3.3 Patchset is expected this weekend.
Good news, a Metalink SR post from 13-JUN-07 tells me that 10.1.3.3 Patchset is expected this weekend.
Hopfully some of the quirks will be fixed in this new release. (And the 120+ patched merged )
Posted by
olu
at
4:53 AM
0
comments
