Peeyush Tugnawat

Subscribe to Peeyush Tugnawat feed
Oracle Blogs
Updated: 6 hours 11 sec ago

Silicon Valley Code Camp 09

Sun, 2009-10-04 10:53

Attended Silicon Valley Code Camp this weekend. They had great sessions for people interested at looking at real code. Met some wonderful people really passionate about technologies.

Oracle had some interesting sessions there too.

http://www.siliconvalley-codecamp.com/

Recommended!

Silicon Valley Code Camp 09

Sun, 2009-10-04 10:53

Attended Silicon Valley Code Camp this weekend. They had great sessions for people interested at looking at real code. Met some wonderful people really passionate about technologies.

Oracle had some interesting sessions there too.

http://www.siliconvalley-codecamp.com/

Recommended!

ESB and java.security.PrivilegedActionException

Sat, 2009-03-07 03:34

I was running into ESB Invocation failures and was not able to invoke ESB processes from BPEL/ESB processes with the following error

 "java.security.PrivilegedActionException: javax.xml.soap.SOAPException"

It was hard to find the root cause of this error as we were not using any soap header security mechanism as the error might suggest or imply.


If you are getting this exception and are not using any security mechanism, try to check for any unknown / special characters in the input message payload. In my case that was causing it to fail with the above error message, once I got rid of the special characters this error went away.

ESB and java.security.PrivilegedActionException

Sat, 2009-03-07 03:34

I was running into ESB Invocation failures and was not able to invoke ESB processes from BPEL/ESB processes with the following error

 "java.security.PrivilegedActionException: javax.xml.soap.SOAPException"

 

It was hard to find the root cause of this error as we were not using any soap header security mechanism as the error might suggest or imply.


If you are getting this exception and are not using any security mechanism, try to check for any unknown / special characters in the input message payload. In my case that was causing it to fail with the above error message, once I got rid of the special characters this error went away.

FOTY0001: type error

Fri, 2009-02-27 08:05

If you are using Cross References (using xref:lookupXRef1M) function in your integration processes (BPEL/ESB) and ever come across the following error

"XPath expression failed to execute.

Error while processing xpath expression, the expression is

Please verify the xpath query."

This exception can occur because of the following reasons:

  • The cross reference table with the given name is not found

  • The specified column names are not found

  • The specified reference value is empty

  • Multiple values are found

FOTY0001: type error

Fri, 2009-02-27 08:05

If you are using Cross References (using xref:lookupXRef1M) function in your integration processes (BPEL/ESB) and ever come across the following error

"XPath expression failed to execute.

Error while processing xpath expression, the expression is

Please verify the xpath query."

 

This exception can occur because of the following reasons:

  • The cross reference table with the given name is not found

  • The specified column names are not found

  • The specified reference value is empty

  • Multiple values are found

Oracle Technology Network (OTN) TechBlog

Tue, 2009-02-24 14:03

If you have not checked out the OTN TechBlog already, I would like to share this great resource blog from Justin Kestelyn. He is the OTN Editor-in-Chief.

Here is the link to his blog

http://blogs.oracle.com/otn/

 

Add to Technorati Favorites

Oracle Technology Network (OTN) TechBlog

Tue, 2009-02-24 14:03

If you have not checked out the OTN TechBlog already, I would like to share this great resource blog from Justin Kestelyn. He is the OTN Editor-in-Chief.

Here is the link to his blog

http://blogs.oracle.com/otn/

 

 

Add to Technorati Favorites

Best Practices: SOA and Enterprise Applications

Sat, 2009-02-21 14:14

Oracle Fusion Middleware Best Practice Centers for Applications are great reference sources for information on Service Oriented Architecture for Enterprise Applications.

Following are the links to pages for each application:

Best Practice Center: Oracle E-Business Suite and Fusion Middleware

Best Practice Center: Oracle Siebel and Fusion Middleware

Best Practice Center: Oracle PeopleSoft and Fusion Middleware

Best Practice Center: Oracle JD Edwards and Fusion Middleware

I am also a contributor and so far have shared my experiences at Best Practice Center: Oracle E-Business Suite and Fusion Middleware. This blog is also listed there.

There is wealth of information available on these centers and comes from experts in their fields. Highly recommended!

 

Add to Technorati Favorites

Best Practices: SOA and Enterprise Applications

Sat, 2009-02-21 14:14

Oracle Fusion Middleware Best Practice Centers for Applications are great reference sources for information on Service Oriented Architecture for Enterprise Applications.

Following are the links to pages for each application:

Best Practice Center: Oracle E-Business Suite and Fusion Middleware

Best Practice Center: Oracle Siebel and Fusion Middleware

Best Practice Center: Oracle PeopleSoft and Fusion Middleware

Best Practice Center: Oracle JD Edwards and Fusion Middleware

 

I am also a contributor and so far have shared my experiences at Best Practice Center: Oracle E-Business Suite and Fusion Middleware. This blog is also listed there.

There is wealth of information available on these centers and comes from experts in their fields. Highly recommended!

 

Add to Technorati Favorites

Technorati

Fri, 2009-02-20 16:14

Cloud Computing

Sun, 2009-02-08 08:54

  What is Cloud Computing?

Try searching for "cloud computing" in google and you get 16,200,000 results.

image

There is lot of interest about Cloud Computing and what it means as it applies to different aspects of computing paradigm. It is more than just Software as a Service (SaaS), which relates to hosted on-demand delivery of applications.

Based on my understanding, Cloud Computing is about applications, platform, infrastructure, and storage resources being available as services.

There are many interesting discussions about what it is and what should be the definition of "Cloud".

Instead of trying to coin yet another definition of "Cloud", I tried to find a somewhat formal but plausible definition. This is the closest one I found. It is from an article published in ACM SIGCOMM Computer Communication Review 

"Clouds are a large pool of easily usable and accessible virtualized resources (such as hardware, development platforms and/or services). These resources can be dynamically re-configured to adjust to a variable load (scale), allowing also for an optimum resource utilization. This pool of resources is typically exploited by a pay-per-use model in which guarantees are offered by the Infrastructure Provider by means of customized SLAs."

"A Break in the Clouds: Towards a Cloud Definition", Luis M. Vaquero, Luis Rodero-Merino , Juan Caceres, Maik Lindner, ACM SIGCOMM Computer Communication Review 50 Volume 39, Number 1, January 2009

  Oracle and Cloud Computing

Visit Oracle Cloud Computing Center to learn about Oracle's offering that allow enterprises to benefit from the developments taking place in the area of Cloud Computing.

Searching BPEL process instances by business keys

Fri, 2009-02-06 03:37

Out of the Box Search Capabilities

BPEL Console provides several out of the box features for searching the process instances using multiple search criteria. Following are the main search criteria that can be used within BPEL console

clip_image002[4]

 

All the above are very powerful features for process administration. Enterprise Integrations and Support

Enterprise integrations deal with business data and transactions. These integrations often have interactions between multiple layers. In case of a failed transaction at any layer, the support function personals can spend a great deal of time and energy on finding the issue and troubleshooting it. I wrote about this in one of my previous post "Service Oriented approach for ERP integration".

Now imagine a use case where thousands of messages are being processed every minute. Searching by some of the default criteria’s can result in multiple search results.

Lets take an example. Custom Search Requirement Example

Lets assume that there is a BPEL process that processes orders in Oracle E-Business Suite. The order details are coming from an external application that is used by end users which in turn publishes to a JMS queue. The BPEL process picks up from the JMS queue and creates an Order in the EBS with the Order Number that comes from the message.

In the above example, if the end application does not receive an order confirmation, you can imagine there can be many reasons for that. One of them could be that the bpel process instance failed for some reason.

When it comes to tracking that order, the end application support will most likely call the support and mention that for this particular order (along with some sort of business key like the order number) there was no confirmation received.

In a production environment, there may be thousands of process instances. For our bpel support person to browse through the instances just by time can also take some time. But for him to be able to search the process instance by using a business key can prove to be extremely useful.

So the question from business user and administrator becomes Can I search by Order Number?

The answer is YES. Is there a simple way to do it?

Any one who has worked with application integration can relate to it and would agree with it. Now the question is Is there a simple way to do it?”

The answer is YES. Let’s Do It

Let's build one simple bpel process from scratch and find out how can we achieve this highly desirable functionality Step 1

Right Click on your application and select “New Project” option

Select BPEL Process Project

ScreenShot131

  Step 2Name the process “SearchableUsingCustomKeyProcess

ScreenShot128 Step 3

For simplicity we will proceed with the default option

ScreenShot129 Step 4

So now we have a skeleton asynchronous BPEL process

ScreenShot130

  Step 5

Click on SearchableUsingCustomKeyProcess.xsd

 

ScreenShot133

 

Change the name of the input to orderNumber

ScreenShot132

 

Step 6

Drag and drop a Java Embedding activity from the Process Activities drop down on right hand side

Name it “JavaEmbeddingToSetProcessTitle”

ScreenShot137

 

Step 7

Double click Java Embedding you just added

Add the following code

 

ScreenShot139

 

Step 7

Deploy the process on server

Step 8

Initiate the process from BPEL console with “1001” as input to the orderNumber field

Notice the instance title is different than the process name. This is because of the setTitle statement in our Java Embedding.

 

ScreenShot141

Click on Audit Flow and then on the Java activity to make sure that the instance ran without any errors

ScreenShot144

 

Step 10

Let’s see if we can search by our custom field (order number) that we want to search for out of many bpel process intances in the console

Click on Instances

Now put the following into the Title field under Locate Instances and click “Go”

“OrderEntryBPELProcess - OrderNumber:1001”

clip_image002[6]

Notice how we are able to search for our particular order number (1001).

clip_image004[4]

You can search for other order numbers easily by just replacing the end of the string with the order number. For example searching for the following string within the title field will search for order number “2001”

“OrderEntryBPELProcess - OrderNumber:2001”

Summary

Requirements related to searching for a process instance in BPEL console by using a custom field could be addressed by the approach demonstrated in this post.

This example demonstrates that it can be done and it can be done easily.

Java Embedding in BPEL Process

Fri, 2009-01-30 14:34

If you have a Java embedding in your BPEL process and have ever wondered where (if not domain.log) the output is written to if you do something like

System.out.println statement from your code within the java embedding

The  output gets written to the file under <soa_suite / oas_install_home>/opmn/logs/default*.log

Siebel Record Locking with Web Services

Tue, 2009-01-27 16:03

 

Error: "The selected record has been modified by another user since it was retrieved"

Reason: The reason we were getting this error in our case was because of the custom scripts. Execution of custom scripts on the Business Components was slowing down the WriteRecord process. This was resulting in the record locking issue.

One way to know if custom scripts are causing this error is to disable all custom scripts (if any) and then try to run the web service to check if you still run into the same error. If yes, following references might help.

 

Related References:

Troubleshooting Workflow Process Execution Problems
http://download.oracle.com/docs/cd/B40099_02/books/BPFWorkflow/BPFWorkflow_Admin20.html

Defining an Error Exception to Handle an Update Conflict
http://download.oracle.com/docs/cd/B40099_02/books/BPFWorkflow/BPFWorkflow_Design22.html#wp1223641

ORABPEL-10902

Tue, 2009-01-27 16:01

I was getting this error when trying to deploy or compile a bpel project

Error:
[Error ORABPEL-10902]: compilation failed
[Description]: in "bpel.xml", XML parsing failed because "undefined part element.
In WSDL at

Please make sure the spelling of the element QName is correct and the WSDL import is complete.
".
[Potential fix]: n/a.

 

The problem was that the within my wsdl file the schema definition included an import statement and the schemaLocation attribute was not pointing to correct path

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <xsd:import namespace="something" schemaLocation="http://something:someport/MyXSD.xsd"/>
</xsd:schema>

Once this was changed to correct url, the error went away.

Siebel Web Service Invocation Error

Mon, 2008-07-07 10:05

Issue: Error code: SBL-EAI-04313 while invoking a Sibel Web Service from BPEL.

Error Details:

“There is no active Web Service with operation named 'http://siebel.com/asi/:SiebelAccountInsert'.(SBL-EAI-04313”

<detail>
   <siebelf:siebdetail xmlns:siebelf="http://www.siebel.com/ws/fault" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
      <siebelf:logfilename xmlns:siebelf="http://www.siebel.com/ws/fault" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">EAIObjMgr_enu_0024_25165939.log</siebelf:logfilename>
      <siebelf:errorstack xmlns:siebelf="http://www.siebel.com/ws/fault" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
         <siebelf:error xmlns:siebelf="http://www.siebel.com/ws/fault" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
            <siebelf:errorcode xmlns:siebelf="http://www.siebel.com/ws/fault" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">SBL-EAI-04313</siebelf:errorcode>
            <siebelf:errorsymbol xmlns:siebelf="http://www.siebel.com/ws/fault" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">IDS_EAI_WS_OP_NOT_FOUND</siebelf:errorsymbol>
            <siebelf:errormsg xmlns:siebelf="http://www.siebel.com/ws/fault" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">There is no active Web Service with operation named 'http://siebel.com/asi/:SiebelAccountInsert'.(SBL-EAI-04313)</siebelf:errormsg>
         </siebelf:error>
      </siebelf:errorstack>
   </siebelf:siebdetail>
</detail>

Solution:

I was able to resolve this issue by doing the the following:

1. Login to Siebel

2. Browse to Administration - Web Services

3. Within Siebel WS Administration, make sure that the status of WS is ‘Active’

image

4. Make sure that the Binding is set to SOAP_DOC_LITERAL

image

5. and finally Clear the Cache by clicking the “Clear Cache” button

image

Service enable integration business services using Oracle Application adapter

Fri, 2008-03-28 07:22

 

To make the business service within E-Business Suite participate in your service oriented integration architecture as a web services. The integration approach used depends upon the requirements and the integration mechanism that is best suited to satisfy the requirements. To use one of the integration function in a SOA based solution (integration or composite process) is relatively simple with the help of Oracle Applications adapter by exposing them as web services. This enhances re-usability, extensibility, and faster design to deploy time frame.

Using EBS adapter has tremendous advantages. It exposes existing EBS Integration Interfaces as Web Services. The adapter inherently uses and leverages open standards, including J2CA, XML, WSIF, WSIL, and WSDL. Most importantly it dramatically reduces the time to design and develop a SOA based integration that interfaces with web service based integration interface for EBS.
Bookmark and Share

E-Business Suite Integration: Using Irep to discover available business services

Thu, 2008-03-27 10:40

Bookmark and Share

To plan your soa based integrations, the architects and business users need to know what services are available within ebs that can be leveraged to be a part of your information integration, business process integration or coming up with composite application spanning across enterprise silos.

The first step when planning and designing your integrations should be to use Oracle Irep. This will give you the details of the business services available within EBS and also the details of service end-points. IRep lets users easily discover the appropriate business service interface for integration with any system, application, or business partner.

It is a pre-built central catalog of information about the numerous public integration interfaces delivered with Oracle applications, known as business interfaces.

The key advantages of using Irep are

  • Helps in better integration planning by providing information to make informed decisions

  • Acts as single source of truth for the available business servicesEnhanced re-use of existing components


  • Assurance that you are using supported public interfaces

    Using Irep

    Go to http://irep.oracle.com/

    If you are working on EBS R12: From the Navigator menu, select the Integration Repository responsibility, then click the Integration Repository link that appears.

    Browse IRep : You can browse Irep using the categories of product or by the integration standards you wish to leverage.

     irep-browse

    Search IRep: IRep also lets you search using various search parameters. You can search by interface name, internal name, product family, interface type (concurrent program, web service, XML gateway map etc), product, and business entities.

     irep-search


    In Release 12, the Oracle Integration Repository will ship as part of the E-Business Suite. As your instance is patched, the repository will automatically be updated with content appropriate for the precise revisions of interfaces in your environment. But until Release 12 is available, you can explore an on-line version of the Integration Repository for the 11i10 version of E-Business applications.
    Bookmark and Share

  • E-Business Suite Integration Components

    Wed, 2008-03-26 05:14

    Bookmark and Share


    It is important to understand different integration components available within EBS to make informed decision about using one or more for your SOA integration project. Selecting one or more of them depends upon the requirements and the interaction pattern determined to be best fit for the service oriented architecture based integration.
    Following are the integration mechanisms available within e-Business suite.

    Oracle XML Gateway: E-Business Suite utilizes the Oracle Workflow Business Event System to support event-based XML message creation and consumption. It can consume events raised by the Oracle E-Business Suite and can subscribes to inbound events for processing. It can be leveraged for Business-to-Business (B2B) and Application-to-Application (A2A) integration scenarios. Majority of messages delivered with the Oracle E-Business Suite are mapped using the Open Application Group (OAG) standard.

    Business Events: The Oracle Workflow Business Event System is an application service that leverages the Oracle Advanced Queuing (AQ) infrastructure to communicate business events between systems. There are more than 1000 built in events with in EBS that can be leveraged for event-based integration of business processes.


    Concurrent Programs: A concurrent program is an instance of an execution file. Concurrent programs use a concurrent program executable to locate the correct execution file. Several concurrent programs may use the same execution file to perform their specific tasks, each having different parameter defaults.

    Interface Tables: Interface tables are intermediate tables into which the data is inserted first. Once the data gets inserted into the interface tables, the data is validated, and then transferred to the base tables. Base tables are real application tables that reside in the application database. The data that resides in the interface tables is transferred to the base tables using concurrent programs. Interface views provide a way to retrieve data from Oracle Applications. By using views, you can get synchronous data access to Oracle Applications.

    PL/SQL APIs: These are stored procedures that enable you to insert and update data in Oracle Applications.
    Oracle e-Commerce (EDI) Gateway: Oracle e-Commerce Gateway provides a common, standards-based approach for Electronic Data Interchange (EDI) integration between Oracle Applications and third party applications. It is the EDI integration enabler for Oracle Applications.


    Bookmark and Share

    Pages