Oracle BPM Integration with Oracle Weblogic Portal using SSO(Single Sign On)

Introduction

In this blog I would describe detailed steps on how to configure Oracle BPM (previously Known as Bea Aqualogic before Bea Acquisition by Oracle) with Oracle Weblogic Portal using SSO (Single Sign On). I intend to write this blog as I didn’t find good detailed document to achieve Bea Portal integration with Oracle BPM using SSO.

So the purpose of writing this blog is that people can find detailed step by step guide and save their time that I wasted earlier when I started working on my Oracle BPM product.

PreRequisite

Configuration Steps

  • Create Simple Portal domain
  • Add directory service in Oracle BPM Weblogic Admin Center
  • Deploying portal workspace on the portal domain using workshop.

Create Portal domain

  • To create portal domain Run Weblogic configuration wizard.
  • On the first screen select Create new domain. Click next
  • On the second screen make sure following three options are checked on the second screen of the wizard when creating portal domain:
  • Weblogic Server (Required)
  • Workshop for Weblogic 10.3
  • Weblogic Portal
  • Follow the wizard till finish.

Add directory service in Oracle BPM Weblogic Admin

  • Run Oracle BPM Weblogic Admin Center.
  • Click Configuration link which would open configuration window. Select the directory tab as shown below:

bpmadmin1

  • Click the Add button on the top right of the screen. This will bring following window. Select the options shown and click next:

bpmadmin2

  • On the Next Screen select first option as shown below and click next :

bpmadmin3

  • At the below screen, fill following and click next:
  • Directory Configuration Name: Any Name
  • Directory provider : should be Oracle 10g or 11g driver since we are using Oracle 10g database for it.
  • BPM Administrator User name and password : any user name and password that you like.

bpmadmin4

  • At the next below screen, provide following information and click next.
  • Host: The hostname where Oracle DB is running. In my case it was local at my machine “imamlt”.
  • Port: The port on which Oracle DB is running. In my case it was 1521.
  • User: This is the user that this wizard will create in the Oracle DB. You can give any name but default is OBPMDir.
  • Password/Confirm Password: Give what ever password you want to assign with this user.
  • SID: Give SID of your Oracle DB. In my case its XE (for oracle Xpress).

bpmadmin5

  • In next screen below, we need to provide system user credentials for Oracle DB so that wizard can create the user OBPMDIR of the previous screen. One important thing, make sure to check the option of Enable SSO before clicking next.

bpmadmin6

  • In the next Screen below, just click next:

bpmadmin7

  • At the next below screen, provide following information and click next.
  • Host: The hostname where Oracle DB is running. In my case it was local at my machine “imamlt”.
  • Port: The port on which Oracle DB is running. In my case it was 1521.
  • User: This is the user that this wizard will create in the Oracle DB. You can give any name but default is OBPMEngine.
  • Password/Confirm Password: Give what ever password you want to assign with this user.
  • SID: Give SID of your Oracle DB. In my case its XE (for oracle Xpress).

bpmadmin8

  • In next screen below, we need to provide system user credentials for Oracle DB so that wizard can create the user OBPMEngine of the previous screen. Also provide Process Engine name and its home folder.

bpmadmin9

  • In the screen below, provide EAR Files locations and make sure that following options are unchecked and then click next:

  • Workspace EAR
  • RSS Feeds EAR
  • PAPI WebService EAR

bpmadmin10

In the screen below, select Modify an existing and running Weblogic Domain.

  • Run Weblogic Portal Server that we created at the beginning of this doc.
  • Provide Weblogic Home , Hostname ,port, Server Name and domain Name etc credentials according to the portal domain running.
  • Before clicking next at below screen, make sure your domain is running otherwise you will get an error.

  • After you click next Oracle BPM would start configuring the running portal domain. This might take several minutes depending on your machine.

  • After the Configuration Wizard finishes, your newly created directory service appears on the Directory tab page of the Configuration Wizard.

bpmadmin11

Generate the workspace Application

Perform following steps to create and configure the Oracle BPM WorkSpace WAR file.

1. Launch the Oracle BPM Admin Center

2. Select Start BPM Applications.

This starts the Oracle BPM Applications that run on the Tomcat Application Server.

3. Click Launch Process Administrator.

4. Enter the administrator username and password.

5. Click Engines in the left hand pane.

6. Click the engine whose WAR file you want to generate.

7. Click J2EE Application Server File.

8. Click the icon next to Oracle BPM WorkSpace WAR.

The Oracle BPM WorkSpace WAR file is generated and a link to the WAR file appears.

9. Right-click 08-workspace-wlp-FDIDS.war, then select Save Link As.

10. Select a location to save the WAR file.

11. Click Logout.

Deploying workspace war file in Weblogic Portal

The following procedures show you how to deploy the modified WAR file in WebLogic Portal using WorkShop

for WebLogic Platform.

1. Start Oracle WorkShop for WebLogic Platform.,Select a workspace, then click OK.

2. Create a new Portal EAR project.

a) Select File -> New ->Other

b) Expand WebLogic Portal

c) Select Portal Ear Project, then click Next.

d) Enter a project name, then click Next.

The Project Facets window appears.

e) Ensure that the following are selected:

• EAR

• WebLogic EAR Extensions

• WebLogic Portal

f) Click Finish.

g) Click Yes if you are prompted to open the Portal perspective.

Your new Portal EAR project appears in the Project view.

3. Create a Portal Web Project

You must add this portal web project to the Portal EAR project created in the previous step. You must also select JSF from Project Facelets when creating the Web Project.

a) Select File ->New ->Portal Web Project

b) Enter the Project Name

c) Check the Add project to an EAR checkbox.

d) Select the EAR file edited in previous tasks.

e) Click Next.

f) Ensure that the JSF option is selected.

Note: You must ensure that the JSF version is 1.1.

g) Click Next.

The Web Module window appears.

h) Continue clicking Next until the JSF page appears.

i) On the JSF page, select Use Sun RI WebLogic J2EE Library.

Note: You must ensure that the JSF version is 1.1.

j) Click Finish.

Your Portal Web project appears in the Project navigator.

4. Add Oracle BPM Libraries to the Build Path

a) Right-click WorkSpace -> Build Path -> Configure Build Path

The Properties for Work Shop dialog appears.

b) Select Java Build Path

c) Click the Libraries tab.

d) Click Add Library.

The Add Library dialogue appears.

e) Select WebLogic Shared Library.

f) Click Next.

g) Click Browse

The list of shared libraries appears.

h) Click Manage WebLogic Shared Libraries.

The Shared Library dialog appears.

i) Click Add.

The Add WebLogic Shared Libraries dialog appears.

j) Click Browse.

k) Select the Oracle BPM WorkSpace WAR file.

l) Click Open

m) Click OK.

n) Click OK.

o) Select Shared Libraries.

p) Click OK.

q) Click Finish.

r) Click OK.

The WorkSpace libraries are added to the build path of your Portal web project.

5. Add Oracle BPM Libraries to the Runtime Environment

a) Expand the Portal web project

b) Expand Web Content ->WEB-INF .

c) Double-click weblogic.xml

The weblogic.xml appears in the Editor View.

d) Select the Libraries tab.

The Select WebLogic Shared Library dialog appears.

e) Click Add.

f) Select the WorkSpace library.

g) Click OK.

h) Save your revisions.

6. Copy Resources to the Local Project

a) Expand the Portal Web Project

b) Expand Merged Project Content -> WEB-INF .

c) Right-click directory.xml, then select Copy to Project.

d) Right-click workspace.properties, then select Copy to Project.

e) Expand WebContent -> WEB-INF .

f) Double-click web.xml

The deployment descriptor elements appear in the Editor view.

g) In the Editor view, expand ContextParams.

h) Select javax.faces.STATE_SAVING_METHOD

i) Change the Param Value to server.

j) Right-click ContextParams, then select New ContextParam.

k) Enter the following values:

Param Name

com.bea.controls.IMAGESERVER_URI

Param Value

http://hostname:port/ BPM_project /opencontrolsNote: This URL points to the domain wherethe Oracle BPM WorkSpace application isdeployed.

l) Click OK.

7. Specifying a WebLogic Server definition.

This must point to the same WebLogic Portal domain created earlier.

a) Open the Server View.

b) Right click in the view, then select New -> Server

c) Select WebLogic Server 10.

d) Click Next.

e) Click Browse, then select the WebLogic Portal domain.

This must be the WebLogic domain created earlier. If you are using a two domain configuration, then

this must be the WebLogic Portal domain created earlier.

f) Click OK.

g) Click Next.

h) Select the EAR file edited previously.

i) Click Add.

This adds the EAR to the list of configured projects.

j) Click Next.

k) Click Finish.

Importing Login Portlet

1. Locate the Login Portlet

The login portlet is shipped with Oracle BPM. It is located at following location:

ORABPM_HOME/samples/interop/WebLogicPortal_LoginPortlet.zip

2. Right-click WorkSpace -> Import -> Import

The Import dialogue appears.

3. Expand General.

4. Select Archive File

5. Click Next.

6. Click Browse

7. Select the zip file for the login portlet.

8. Click Open.

9. Ensure that all elements of the zip file are selected.

10. Click Finish.

Creating a New Portal

1. In the Project Navigator view, expand your Web Portal Project folder

2. Right-click the WebContent folder

3. Select New ->Portal

4. Provide a name for your portal.

5. Click Finish

The following procedures show how to create a basic portal layout, however you can customize your

portal as necessary.

Note:You should not use flow layouts within your portal. Flow layouts are not supported by Oracle

BPM.

6. In the Preferences View, change the following:

• Select Single Column Layout

• Change the title

7. Select the Login Portlet from the design palette view, and drag it on the Portlet editor view

8. In the portlet Editor, right-click Insert ->New Page

9. Set the layout to 2 column

10. Add the following portlets by dragging and dropping them from the Design Palette View:

• Menu Action

• Work List

• Instance Detail

11. Save you portal

12. In the Server View, Right-click your WebLogic Server installation

13. Select Publish

Deploying a Sample work flow application in the workspace

Deploy a sample workflow application like expenseManagement.exp that comes with BPM studio. Following is the procedure on how to deploy it:

  • Start BPM Admin Center
  • Start BPM web application.
  • Click Launch Process Administrator
  • This will bring up web browser window for process administration. Enter the BPM Admin credential in it to login.
  • Once login, Click project on the left tree.
  • On the right screen click Publish button. This will bring following screen:

publishingproject

  • Select 2nd option Exported Project and browser ExpenseManagement.exp file that we exported from BPM Studio.
  • Check the option “Deploy processes after publishing them” and click ok

  • After clicking ok, new section called Role Mapping would come up. Click plus sign of it. This will bring up all the roles of the process to import. If those roles doesn’t exists in the workspace it would show an icon before them. Clicking that icon would create that role. Expense Management Process comes with three roles namely employee, supervisor and Treasurers. You need to map these three only.

  • After mapping of these roles click publish. This will bring deploy screen. Click ok to finish the process deployment.

  • Now our process is successfully deployed on the workspace.

  • Now we will create a simple user called assigned with the role employee.

  • Expand the organization tree on the left and click participant in it. In the right screen click add to add user.

  • Add User screen would come. Just type the name of the user and its particulars in it and assign to it to Role. Say we create a user called imam and assign it with role of employee.

  • Now run the portal server that we made in section 2.6.

  • We would go into the portal administation and create a portal user called “imam” that we created above in the Expense management process.

  • Now launch the portal in browser as shown below:

bpmportallogin

  • Type username and password to login. This would bring following window showing workspace with Expense Management Process:
  • You can see on the left side there is global activity for employee role that login user click to create form and forward it. On the right side there worklist portlet that contains tasks assigned to the user. Right bottom is the Instance detail portlet that tells the detail of each task in worklist.

bpmportalworkspace

Advertisements

14 thoughts on “Oracle BPM Integration with Oracle Weblogic Portal using SSO(Single Sign On)

  1. Hi Imamraza,
    Thanks a lot for posting this article. I am looking for an article which gives me step by step instructions to make Oracle BPM work. It helped a lot. I think your article is with ref to workshop 9.2, right? I am having difficulty with last few sections because I am working with workshop 10.3 and could not find some of the options mentioned and some of .xml files could not found. for example directory.xml and workspace.properties. And also at the end in creating portlet section ( I am new to protal and portlets) I could not find Menu Action, Work List and Instance Detail in Design pallet. I was able to get login portal though.
    If you don’t mind, I am requesting you to send screen shots, if you have any, for “Deploying workspace war file in weblogic portal” section.
    Once again thanks for your excellent work in compilling this article.

    thanks
    Hari Doodi
    haridoodi@gmail.com

    1. Hari,
      Thanks for the appreciation. Sorry I have been little late to reply you due to some stuff I was working on.
      This article is written for Oracle workshop 10.3 not for 9.2. You shouldn’t have any problem while following this step by step guide for 10.3 workshop. If you have successfully add oracle BPM libraries to you runtime and build path then it should work. Make sure to Expand Merged Project Content ==> WEB-INF Content you would definitely find directory.xml and workspace.properties

  2. from Create a new Portal EAR project.

    i can not find the the following items..

    b) Expand WebLogic Portal

    c) Select Portal Ear Project, then click Next.

    i am using the Oracle WebLogic Server 10.3..

    1. Hmmm
      The reason is that you didn’t install weblogic portal server. By default you wouldn’t find any portal related stuff in workshop until and unless you install weblogic portal server. Once you install it you will get all these options available in the workshop

      1. Hi imamraza,
        i have follow the steps you mention and sucessfully implemented SSO with BPM.
        but i have another situation where i need to authenticate a another jsp running on another domain and server. can you please give me an idea how this authentication will happen in BPM.

        Thanks in adv

  3. The windows and options seem to look different for me. For example:

    “In the screen below, provide EAR Files locations and make sure that following options are unchecked and then click next:

    Workspace EAR
    RSS Feeds EAR
    PAPI WebService EAR”

    The wizard doen’t show these options. I use the BPM standalone version (10gR3). I can find them on other locations in the config windows but it seems strange to me the screens don’t look alike.

    Furthermore where can I find the windows for modifying an running Weblogic domain? Or do I need to configure this using workshop?

    Thanks

    1. Strange the options should be visible to you on the screen. For modifying running weblogic domain, you would need to first run your weblogic domain separatly. In the screen of Standalone BPM that I show in the blog for specifying your running domain related information, provide related information of your domain. The wizard would connect to your running domain and configure the domain for SSO.

  4. Hi Imamraza,

    Thanks for the great instructions.

    Can i ask if you’ve tried deploying this solution in a unix implementation of BPM and WLP before?

    I ask this because, I’ve managed to successfully integrate BPM and WLP in a windows environment. But I hit an error deploying the BPM war file in WLP running on Solaris. (Uname -a output is: SunOS 5.10 Generic_118822-25 sun4u sparc SUNW,Sun-Fire-V440)

    I get the following errors:

    1) Caused by: java.lang.RuntimeException: Critical Error.
    Detail: Error checking directories: This error usually takes place when an ALBPM Web Application is deployed as a WAR rather from an expanded directory. Please check that the ALBPM Web Application has been deployed from an expanded directory

    2) Caused by: java.lang.ClassNotFoundException: com.sun.faces.config.ConfigureListener
    at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:283)
    at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:256)
    at weblogic.utils.classloaders.ChangeAwareClassLoader.findClass(ChangeAwareClassLoader.java:54)

    Sigh – any ideas, I’ve been looking at this problem for days now. I believe it’s a solaris specific problem, but I can’t figure out what to do to fix it! =(

    1. Hi Ryan Teoh,
      Thanks for the appreciation.
      Actually I did all this setup on Ubuntu Desktop Edition and didn’t get any problem. I think your problem is solaris specific.

      Regards
      Imam Raza

  5. Hi,
    Nice post..
    Do u have any documention available for ALBPM6.0 intigration with WLP10 ?
    BEA documention is not a complete one and i dint find Login portal in my installed directotory.
    When i compare both the Web.xml ( Sample in oracle documention, and my web portal web.xml) there are huge diffrences..

    Will you be able to help me on this ?
    Do u have any auto scripts for the task ?

    pls help

    Chandrakantasamal@gmail.com

  6. Hi imamraza,
    Great post and very good explanation.
    can you help me on configuring Oracle BPM to any web application which was deployed on Weblogic Server 10.3.x.

    Thanks in Advance!
    Suresh

  7. asak,

    imam bhai ,i came across this word recently i.e., Oracle weblogic portals.i dont know what it is and how does it works.i`m in the field of search engine optimization.i want to change the field and enter into this scenario by getting trained,any how is this field be beneficial,if don`t mind can clearly explain the usage of these terms.

    May allah(swt) help you.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s