Integrating Subversion into Eclipse 3.x

This blog is about the steps to take to integrate Subclipse into Oracle Workshop for Weblogic 10.3.

1) Goto Help -> Software Updates -> Find and Install ...
2) Check "Search for new features to install
3) Click on the "New Remote Site.." button
4) Enter the next information in the dialogue:

5) Select the new site and click Finish

6) The screen shows the features that can be selected, check as shown below and click Next

7) Accept the license agreement, click Next
8) Click the Finish button on the Installation dialogue
9) The software is downloaded.

10) At the Feature Verification dialogue, click Install All
11) You have to Restart Eclipse, so choose Yes
12) The choose Window -> Open Perspective -> Other and choose SVN Repository Exploring

13) Now you can add your repositories.
14) You can change the SVN preferences, under Window -> Preferences -> Team -> SVN

And thats it.

You are now also able to check out projects from the repository:
1) Goto the Project Explorer and choose Import

2) Select to import from SVN

3) Choose an existing Repository or create a new one (see step 13)
4) Choose Next and off you go.


Oracle SOA Suite 11g Introduction

If you want to have a good overview of the SOA Suite products you can visit this page.
Also some links to tutorials are given.


Moving away from file interfaces

In the company I work for, I see a lot of batch oriented, file interfaces. An example is within the proces of where an employee gets employed.
This new employee ie entered within the PeopleSoft system and once a day an export is ran of all employees. This file contains the action that has to be taken towards other systems (add, delete, update). The other systems are phonebook system and authorisation system in which the new employee must be registered too. There is even a separate database that keeps track of the files already processed!

This is not what you want, but how would you integrate the systems? Should you use an ESB? Should you use a Common Data Model? Should you include BPM? Should you add another presentation layer?

All this creates a lot of overhead for a secondary process, just to SOAlize/BPM it. So what are the benefits to use this elegant IT solution?

I think:
* Monitoring of the process, so better maintenance
* Easier to change the process (for example other authorisation levels for different employees)
* Easier to change an implementation for a system
* Realtime update of the employee information instead of waiting a day or more

What's your experience in these kind of situations?


"Not valid in an Oracle Service Bus Configuration project"

This is the error I got when importing an existing project into Workspace (version 10.3).

I found nothing to circumvent the error and the only way was to create a new Configuration and copy the projects into it.


Reuse XQuery within OSB 10gR3

XQuery is a great language that can be used within the OSB for translations and other expressions. Unfortunately the OSB does not support the module construction of XQuery. A module construction can be perfectly reused for code reuse.
This post shows how this omission in the OSB can be solved.

This example shows how a message with a header and a body can be created of which the header code is reused.

1) First the header function is created (without parameters, but these can also be added).

2) Add another XQuery that creates the message with the header and body content as parameters.

3) Within a Stage or where you want to use the construction add an Assign.

4) The expression must be the Header XQuery.

5) Add another Assign for the message XQuery and add the $body and $header as binding variables.

And that's it, so the trick is to use parameters. This may be not always possible but it is a construction you could use.


Integrating PeopleSoft in a SOA

I came accross this post about exposing PeopleSoft functionality as a webservice.
This can be very useful when you want to use this functionality within a BPM process, like for example "EmployeeEmployment".


OSB 10gR3 Service versioning

There has been a lot written and discussed about how to do Service versioning.
On LinkedIn there is a nice discussion about the WSDL versioning (read here). Also on InfoQ there is a nice article.

I like the strategy in which a minor and major version is used. A minor change is backwards compatible and only updates the documentation element within the WSDL. A major change, also changes the namespace (http://.../v2).

The following structure within the OSB can help to implement this strategy.

The advantages of this structure are:
* The different versions are nicely seperated and can be governed and maintained seperatly. Instead of having only one proxy for all versions and doing some content based routing.
* The two versionings can live together and in case the old version is deprecated the proxy can be deleted. This way "old" consumers do not have to migrate in case a major update is published, so they have the time to plan it.


OSB 10gR3 project structure

This blog describes a way you can structure your OSB project structure in a SOA project.

Within you OSB domain you have one configuration file that contains several projects. each project represents a Service.
The shared resources directories contain common resources that are used within the other projects. This can be a good place to store the CDM XSDs of the domain.


Use of Oracle Adapters (OSB 11g)

In this Oracle post it is stated that new Adapters are available for the Oracle Service Bus.
But do we really want these Adapters on the OSB within a SOA?
I propose not to implement Services this way, because:

Adapters do not belong on the OSB but on the system the Service is actually implemented, because this goed against a known service-oriented design principle of "Service Autonomy". This belongs and should be governed by the Service and not by the OSB (as the Service provider).


SOASchool: Certified SOA Architect

I am currently studying for the first module of the 5 module certification traject for becoming a SOA Certified Architect.
What I like about the traject is that you have the option to go to workshops or order self study kits. The workshops can be followed also at the SOA Symposium in Rotterdam in october 2009.
Furthermore the exams are based on the books of Thomas Erl a respected author in the SOA field.

I have ordered the self study kit and it took a couple of weeks to arrive. It contains two reading materials, one handout of the presentation (fortunately with an audio CD) and one what to study and example questions (unfortunately just three). The audio CDs are a pain to listen to. It looks like generated from text with hardly any tonations.
The best way for me was to read the SOA Principles of Service Design book. Tomorrow (4 sept 2009) is my exam for this first module. Keep you up-to-date about the level required.

What I am curious about though is how this certification is seen by customers. Has it reached the image of the Java certifications for example yet? That still must be seen, i guess.


OSB 10.3.1 Database Adapter

Edwin Biemond wrote a great post on using the DB Adapter within OSB 10.3.1. You can find his article here and I followed the steps nicely.
However I did not get it working. I made a mistake by giving the connection factory the same JNDI name as the JDBC Data Source!

So please be aware of the JNDI traps.