Wednesday, May 12, 2010

Configuring OER 11.1.1.2 Harvester with Jdeveloper 11g

There is a OER plugin for JDeveloper that supports harvesting.

  1. Login to the machine where Weblogic server is installed and navigate to the repository home. Go to $MIDDLEWARE_HOME\repository111\core\tools\solutions\ folder.

Copy 11.1.1.2.0-OER-Harvester.zip to your Local machine or where Jdeveloper is installed. Create a folder harvester under <jdeveloper> home. Extract the 1.1.1.2.0-OER-Harvester.zip file to the <jdeveloper>/harvester folder.

  1. Edit tools11g.xml to match your JDeveloper installation.

Replace every occurance of "C:/oracle/middleware/jdev_5361/jdeveloper" with the location of your JDeveloper installation.

  1. Merge the contents of tools11g.xml into your JDeveloper's product preferences XML file. This is located in C:\Documents and Settings\<username>\Application Data\JDeveloper\system11.1.xxxxxx\o.jdeveloper\product-preferences.xml on Windows. This location is different from the OER 10g release where it used to be inside the Jdeveloper home.

If there is an existing entry, with the ExternalToolList tag select the <hash> tag from tools11g.xml and insert it after the lines:

"<hash n="oracle.ideimpl.externaltools.ExternalToolList">,

If the tag is not present , add the contents of tools11g right after the initial <ide:preferences> element.

  1. Start JDeveloper. Under Tools | External Tools you should see two new entries:
    • Submit this File into OER
    • Submit this Project into OER

Select it

o Click "Edit"

o Click the "Properties" tab, and configure the missing properties to point to your OER server.

o The "repository.password" field must be an encrypted password. Need to obtain an encrypted password by saving the unencrypted password in HarvesterSettings.xml,and running the encrypt.bat script that comes with harvester to encrypt it. The file will be modified to contain the encrypted password. Copy it to your Jdev repository.password properties

  1. To run one of the tools:

Select a file in the "Applications Navigator".Right click and select "Submit this File into OER" or "Submit this Project into OER"."Submit this File into OER" will harvest just the selected file. (This works for zips and jars too). "Submit this Project into OER"." will harvest the entire project.

Note:- Please make sure you import 11.1.1.2.0-OER-Harvester-Solution-Pack.zip into the OER server before you execute step5.

Login to OER as admin user. In the Admin tab you will get a Import Export > Import Export Client which will open a java utility to import the solution Pack. In case you miss out on this step you will get the following error.

[repository.submit] An error occurred performing the Repository operation:
[repository.submit] com.oracle.oer.sync.framework.MetadataIntrospectionException: com.oracle.oer.sync.framework.MetadataIntrospectionException: Unable to read plugin file: C:\Oracle\Middleware\jdeveloper\harvester\plugins\biz.introspector

Tuesday, May 11, 2010

Steps to remove a domain from Weblogic Server

As of now there is no out of the box feature with Weblogic Configuration wizard to remove or delete a domain. These are basically manual steps.

For example if I want to delete a domain named geo_domain below are the steps you need to remove the domain.

  1. Open domain-registry.xml under $Middleware_HOME .Remove the corresponding entry referring to geo_domain.

CodeSnippet :: domain-registry.xml

<?xml version="1.0" encoding="UTF-8"?>

<domain-registry xmlns="http://xmlns.oracle.com/weblogic/domain-registry">

<domain location="C:\Oracle\Middleware\user_projects\domains\soa_domain"/>

<domain location="C:\Oracle\Middleware\user_projects\domains\geo_domain"/>

</domain-registry>

  1. Open nodemanager.domains file under $Middleware_HOME \wlserver_10.3\common\nodemanager\ folder. Remove the corresponding entry referring to geo_domain.

CodeSnippet :: nodemanager.domains

#Domains and directories created by Configuration Wizard

geo_domain=C\:\\Oracle\\Middleware\\user_projects\\domains\\geo_domain

  1. Delete the domain folder under domains folder manually.

$Middleware_HOME\user_projects\domains\geo_domain

  1. Delete the domain folder under applications folder manually.

$Middleware_HOME\user_projects\ applications\geo_domain

Friday, May 7, 2010

Enhancements to Transactions(dehydration/audit trial ) in 11.1.1.3

There always used to be a concern that the BPEL instances don’t show up when one of the processes taking part in transaction issues a rollback. This used to happen because BPEL process state is also rolled back to the last commit and if there has been no commit and this process was invoked through a synchronous interaction then the process will be wiped out since nothing has been dehydrated. BPEL uses the same transaction to update process state in the and also to log audit events in the database. Many clients used to enquire on why there is no trace of the process as the BPEL process itself will not show up in the Console.
I am happy to see that Oracle has addressed this issue in 11g - 11.1.1.3 where they have made enhancements to BPEL's transactional behavior and audit-trail .Audit trail saving settings can be configured to take part in a local or different transaction, there by not affecting the transaction of the BPEL process. This feature allows you to get a complete trail, especially in the case of rollbacks or unhandled faults - no matter what happened to the underlying "working" transaction.

More on the new features of 11.1.1.3 :- http://blogs.oracle.com/soabpm/2010/03/11gr1_patchset_2_111130_soa_fe.html

Thursday, May 6, 2010

more on SCA configuration file in SOA 11g

Introducing SCA

In this blog I will be explaining the basic structure and components involved in composite.xml which as you all know is the master configuration file of a composite application. This file uses an XML-based format called the Service Component Definition Language to describe the components and specify how they relate to one another. As you know in an increasingly SO world the interaction between components should be modeled as services, cleanly separating the implementation technology from the function that’s provided.

There are some terminologies that you need to be familiar when it comes to using the SCA model in SOA 11g.

The fundamental elements of a SCA SCDL are:

· Component

SCA defines a basic atom as a component. The implementation of each component can be done using any technology. Implementation.<tech> tag inside the <component> tag will specify the component used to implement that component. It can be BPEL, Mediator, Human Workflow, Java class, Business Rules or any other supported technology.

· Composites

Components can be combined into larger structures called composites. The composite.xml is used as the configuration file to define the composite application. It is defined using the SCDL language. (Service Component Definition Language)

· References

Whenever a component needs the services of other components it uses references. Each reference defines an interface containing operations that the component needs to invoke

· Bindings

Bindings specify how that communication happens. There can be multiple bindings, and the binding to be used will be determined at runtime.

· Wire

A reference is connected to a service using a wire. A wire is an abstract representation of the relationship between a reference and some service that meets the needs of that reference.

· Service

A composite can also expose one or more services. These services are actually implemented by components within the composite.

Code Snippet :: composite.xml

<composite name="MyExample" .>

<component name="Component1">

<implementation.bpel process="Process1"/>

</component>

<component name="Component2">

<implementation.java class="com.geo.HellloWorld"/>

</component>

<component name="RouteRequest">

<implementation.mediator src="RouteRequest.mplan" />

</component>

<component name="ManualApprovalTask">

<implementation.workflow src="ManualApproval.task" />

</component>

<component name="ManualApprovalRule">

<implementation.decision src="ManualApprovalRule.decs" />

</component>

<reference name="FileWrite" ui:wsdlLocation="FileWrite.wsdl">

<interface.wsdl interface="http://geo.com/FileWrite#wsdl.interface(Write_ptt)" />

<binding.jca config="FileWrite_file.jca" />

</reference>

<reference name="getStatus" ui:wsdlLocation="http://<host>:port/soa-infra/services/default/CCValidation!1.0/GetStatus.wsdl">

<interface.wsdl interface="http://geo.com/GetStatus#wsdl.interface(execute_ptt)" />

<binding.ws port="http://geo.com/GetStatus#wsdl.endpoint(GetStatusByCC/execute_pt)" location="http://host:port/soa-infra/services/default/CCValidation!1.0/GetStatus?WSDL" />

</reference>

<wire>

<source.uri>RouteRequest/FileWrite</source.uri>

<target.uri>FileWrite</target.uri>

</wire>

<service name=“ HelloWorld” ui:wsdlLocation="HelloWorld.wsdl">

<interface.wsdl interface="http://geo.com/recieveHello#wsdl.interface(execute_ptt)"/>

<binding.ws/>

<service/>

</composite>

The SCDL configuration file’s implementation element tells the runtime both what kinds of containers it needs for a particular composite and where to find the implementations of the components in that composite .The SCA runtime provides all bindings, allowing components created using any technology to use any available binding. Hope this helps J

Tuesday, May 4, 2010

Oracle AIA Highlights: Oracle Announces Oracle® Application Integration Architecture (AIA) Foundation Pack 11gR1

The AIA 3.0 release has been rechristened as 11gR1 as Oracle wants to align the AIA releases to go with the Fusion middleware releases. Happy to see that finally it got released

Read Oracle Press Release for more : http://www.oracle.com/us/corporate/press/068339