Thursday, October 24, 2013

Email Notification with SOA Suite 11g


Thanks to Moumi M. for today's post!

Oracle SOA Suite 11g supports a number of different notification channels through the User Messaging Service (UMS). This blog provides a step-by-step guide for configuring and testing email notification. Before Enterprise Manager can send e-mail notifications, you must first specify the Outgoing Mail (SMTP) servers to be used by the notification system. Once email notification has been configured, emails can be sent from SOA Suite components such as BPEL processes and Human Tasks. It is useful for the business case scenario where any invoice will send to Rescan or Supplier Maintenance group for further approval processes, users are assigned under Rescan or Supplier Maintenance group , get an email-notification after configuring the below mentioned steps.

Configuring Email Notification

To support email notification from SOA Suite 11g the UMS email driver and workflow notification properties to be configured with the mail server details. This can be done through the Enterprise Manager Fusion Middleware Control console (e.g. http://<hostname>:7001/em) as follows:

1.     First we need SMTP server details, not IMAP.


2.     Navigate to the Email Driver Properties page available under User Messaging Service > usermessagingdriver-email


3.     Update the following properties according to your mail server configuration:
OutgoingMailServer - The SMTP hostname (i.e., 127.0.0.1)
OutgoingMailServerPort - The SMTP port (i.e., 25)
OutgoingMailServerSecurity - The type of security (i.e., None)
OutgoingUsername - The mail user account
OutgoingPassword - The mail user password (Type -> Use ClearText Password)


4.     Click Apply to save the changes.


5.     Right-click on soa-infra under SOA and navigate to the Workflow Notification Properties page available under SOA Administration


6.     Set the Notification Mode to 'Email' and enter the default values which you wish to use for from, actionable and reply to email addresses.
7.     Click Apply to save the changes to the workflow notification properties.
8.     Restart the SOA server for the changes to take effect. If you are using Gmail or any other mail server that requires SSL you will need to perform extra before restarting the server.

Testing Email Notification

Now that we have configured outbound email notification, we want to test our configuration easily without having to create a BPEL process or human task to do this. Fortunately, we can do this from Enterprise Manager Fusion Middleware Control.



1.     Right-click on soa-infra under SOA and navigate to the Human Workflow page available under Service Engines.


2.     Select the Notification Management tab.
2.1.   Click Send Test Notification


2.2.   The Send Test Notification dialog box should now appear. Enter the email subject, content, to address and be sure to select 'Email' for the channel. Click Send. Once the email has been sent, you should receive a value of 'SENT' for Response. You can now close the dialog box.



3.     Ensure that the email has been received.


4.     Other way to cross-check the status of the mail after right-click usermessagingserver (soa-server1) > Message Status, same way user can again check if the message was sent or not.
5.     When assigned user receives an email, he must click on the ‘Imaging Application’ link and check the proper solution namespace is configured and that will redirect to proper Tasklist Login Page.

Troubleshooting

If you encounter an issue with the outgoing email notification, it is a good idea to check the SOA server log for error messages. There are log files available at:

·         DOMAIN_HOME/servers/<soa server name>/logs/<soa server name>-diagnostic.log

                                                                                
 Thanks everyone! Thanks Moumi!
-ryan


Tuesday, October 22, 2013

WebCenter Enterprise Capture - Client Profiles (Part 1)

Hi all, 

I wanted to continue part 2 of the Capture 11g review with some practical examples. The focus will be on "Client Profiles", which are the new container for the end-user interaction with the system.

We'll start with a review of Client Profiles and their purpose, then we'll go into creating the individual assets that makeup a client profile. These are some typical, basic examples that should be very to relate to the 10g experience.

You can find the documentation for Client Profiles in section 4 in this document. 

From the documentation:

A client profile contains the settings used when end-users select it to scan, import, and / or index documents in the client. Client profiles control such things as how 
documents are created and separated in batches, whether metadata fields are available 
and required, and what happens next to batches after users release them.

In other words, a 'client profile' is the top-level container for end users.



You can see how the client profiles are used by the end users in the above screenshot. Changing the client profile changes the available items in the batch list area.

Now that you know what we're going to create, let's start building one.

Creating the Workspace

Since I want to present an end-to-end example, let's start with creating the top-level container on the administration side.


  1. As a Capture admin, log into the console: http://yourdns:16400/dc-console
    Note that capture admins are WLS administrators (with appropriate roles) as well as users with the CaptureWorkspaceManager application role. We'll cover security in more detail in an upcoming article.
  2. Click on the "+" in the Capture Workspaces pane, this will pop up a prompt for the new workspace name and description
  3. Populate the name & description, for this example, I'll be creating a workspace for my work items


At this point, the workspace is created. It's time to populate it with our commit, index, input, metadata, and other assets.

I'll use a similar logical diagram as used in the documentation, starting with the workspace assets:


The general purpose of this workspace will be to ingest work items. Specifically, we'll be processing expense reports, contracts, and other project documentation. 

We want to manually index all items, regardless of how they're captured. 

For this example, we'll create a system that allows for emailing contracts, dropping notes into a watch folder, and using the scanner (or file system) to capture any sort of project document.

After indexing, the index user will be able to release each batch to be committed into the back-end WCC server.

The security of this workspace will be fairly simple. We'll do everything as the admin for this sample.

Create the Workspace Assets


Select the metadata tab to gain access to the following tables:

  • Metadata Fields
  • User Defined Choice Lists
  • Database Choice Lists
  • Dependent Choice Lists
  • Database Lookup Profiles
Let's start with the Database Choice Lists table.

Database Choice Lists

Note that this is a bit different. You don't 'add', as you may expect, but instead you 'edit' the default Database type that's pre-loaded.
  1. Select 'Database' and click the edit button (the pencil)
  2. In the Choice List Sources table, click the add button
  3. This will take you to the "Choice List Source: Database Choice List Source" page

  4. Populate the Choice List Source Name & Description with logical values
  5. Note that there's a field for the JNDI value; now that the application is living on the WebLogic Server, it has access to the shared data sources; below is a screenshot of the data sources for this sample instance; Note that, since we want to use the CSDS (i.e., the WCC data source), we must target it to the capture_server1 managed server first

  6. After populating, click on the Connect button to check connectivity; the result should appear similar to the below screenshot

Now, we'll create some lists based on this connection
  1. In the table below the above configurations, click on the add button
  2. Populate the Database Choice List Properties similar to the below:

  3. From this sample, the choice list will be based on the values in WCC_OCS.CLIENTTABLE
Repeat the above for the Projects table, which will be dependent upon the client table.

In the end, you'll end up back on the workspace's Metadata tab. The "Database Choice Lists" table will look like the following screenshot:



Now, ideally, we'd create a DCL (dependent choice list) that would replicate the behavior that we have in WebCenter Content. That is, the children can all come from a single table, filtered by the parent value. This still does not appear possible in 11g out of the box configurations. 

With 11g, the DCL capabilities is similar to the 10 DCL functionality. 

From the documentation:
  • You can create choice list dependencies between Capture user defined choice lists, database choice lists, or between choice list types
  • Create all choice lists you plan to link before creating a choice list dependency. At a minimum, you need a parent choice list, and two or more child choice lists
  • Each item in a child list can be related to multiple parent items. For example, Supplies could be a child item to Household and Automotive subproducts
  • You can create multi-level dependencies (for example, great grandparent, grandparent, parent, and child choice lists)
  • Only one choice list dependency may be assigned to a client profile. Multiple parent/child dependencies must be defined within a single choice list dependency
See section 3.7 in the Managing Capture guide for full details.

The downside of this framework is that we still cannot (in)directly leverage DCLs defined in WebCenter Content. Each Capture parent value will re-populate the child value with an entire list opposed to a filtered list. Continuing with this example, we'll simply have two, unassociated drop down lists.

Metadata Fields

Next, now that the metadata data sources (database choice lists, in our case) are defined, we can create the metadata fields.

To create the metadata fields, we'll move up to the top table on the Metadata tab. This is the "Metadata Fields" table.
  1. Click on the add button
  2. On the Metadata Field: New Metadata Field page, enter in the following values:

    - Field Name: Client Name
    - Data Type: Alpha Numeric
    - Required: Checked
    - Choice List Source: WCCLists
    - Choice List: Clients
  3. Click Submit
Fairly simple process, but you do have the options to configure these fields with masks, regex validation, and some other more advanced options. 

Comparing this to 10g, you'll notice that, instead of creating the fields attached to a file cabinet with only the most basic attributes (name, datatype, length), you now create the full definition at the top level.

The following diagram shows the details for the remaining fields:


Note that the input mask serves a secondary purpose. As per the documentation:

To allow the user to enter decimal values, you must create a format that forces at least one decimal (#.0#).For client users to change a number's sign, they must enter the number first, then press the + or the - key.

By adding this mask, we're allowing (and enforcing, in this case) the use of a double datatype.

Document Profiles

The next step will be to create the needed document profiles for this workspace. This occurs within the Classification tab under the Document Profiles table.
  1. Click on the add button
  2. Give the document profile a name
  3. Select which fields apply for this document profile
  4. Click Submit

Fairly simple process. Repeat the above for the "Documentation" profile, but don't select the two expense report fields.

Comparing this to the 10g method, you see that there are less options at the 'index profile' level. 11g removed index profiles and spread out the options a bit more. Keep this in mind to help understand the 11g context.

Client Profiles

It's time to start tying things together with the client profile. Switch to the Capture tab. There are two tables under this tab: Client Profiles & Import Processor Jobs. Let's start on the Client Profiles table.
  1. Clicking on the add button will take us to a wizard-like grouping of pages, or train sequence, in ADF parlance; each page is a 'train stop'
  2. On the General Settings train stop, select the following:
    - Profile Type: 2 - Capture and Index
    - Profile Name: Expense Reports
    - Batch Prefix: er
  3. Click Next
  4. Click Next
  5. On the "Image Settings" page:
    - Default Color: Color
    - Default DPI: 200
    - Non-Image Import Action: Convert to Image Format
  6. Click Next
  7. On the "Document Indexing Settings" page:
    - Document Profiles: Expense Reports
  8. Click Next
  9. Click Next
  10. On the "Security" page
    - Add the weblogic user as a client profile user
  11. Click Next
  12. On the "Post-Processing" page:
    - Batch Processor: Commit Processor
  13. Click Next
  14. Click Submit
Note, on the "Document Indexing Settings" page there's a new option called "Document Creation Option". This allows the workspace manager to pre-define whether this client profile will be scanning in Simplex, 'Duplex', Variable, and user-prompt mode. Simplex will create a document per page scanned. The "2 - Two Pages (e.g. Duplex)" option makes it seem that this is for duplex scanning, but it's more geared for two-page invoices. But, it's still the scanner's settings that determine whether pages are scanned simplex (front page only) or duplex (front & back). Keep this in mind while making your selection. 

The default is "Variable Number of Pages". This is similar to the 10g method that will scan in all pages into a batch and allows the user to break the batch into documents while indexing.

The final option is "Prompt User". This allows the index user to select any of the three above options at scan time.

Commit Processors

The next step will be to create the needed commit profiles for this workspace. This occurs within the Commit tab under the Commit Profiles table.


  1. In the table, click on the add button
  2. On the "General Settings" page:
    - Commit Profile Name: WCCCommit
    - Commit Driver: WebCenter Content
    - Document Output Format: PDF Image-Only
    - Restrict Commit to Document Profile: All
  3. Click Next
  4. On the "Commit Driver Settings" page
    - Login tab:
    - - User Name: weblogic
    - - Password: **********
    - - Server URL: http://<dns>:16200/cs/idcplg
  5. Click Login
  6. Verify that Status: Connected
  7. Click on the "Check-In" tab:
    - Document Title: [Client Name]-[Project Name]
    - Default Type: Scan
    - Default Security Group: Secure
  8. Click on the "Field Mappings" tab
    - Map the scan fields to appropriate fields in your target WCC instance
  9. Click on the "Options" tab
    - Leave the defaults as-is, but notice that the bypass workflow and alternative check-in service options are available here
  10. Click Submit

Test Run

At this time, we are able to process a document.

  1. Log into the client: http://<dns>:16400/dc-client
  2. Select the "Expense Report" client profile
  3. Select a scanner from the Capture Settings list
  4. Click on Capture
  5. Expand the batch and you'll see your document(s)

  1. Select the Document and index it
    - NOTE: notice that the expense report total isn't throwing an error, but it's also not retaining the value that you entered. This is because you must select the correct datatype and display format.
    - - Return to your metadata settings and update the values for the Expense Report Total. Switch the Data Type from "Numeric" to "Float" and set the Display Format to "Currency".
    -- Now, refresh your client and you should be able to enter the expense amount without issue.
  2. After successfully indexing the document, release the batch
  3. After a moment, click the Refresh Batch List button (not the browser refresh), the batch should disappear from your list
  4. Verify
    - Log into the WebCenter Content instance to verify that the item landed as expected



At this point, you have a basic scan and index profile in 11g. This process mimics the basic process of a simple scan and index profile in 10g.

In the second part of Client Profiles, the other import options will be explored.

Thanks!
-ryan

Thursday, October 10, 2013

Keep Current! - WebCenter Patches as of 2013/10/08


Hey all, 

In an effort to help everyone stay current, we're going to post some preferred patches on a regular schedule. This way, you'll have a single place to find all of the updated cumulative patches (MLRs, ARUs, Bundle Patches, etc) for the month.

Please be sure to let me know if there's any other patches that should be included on this list. The current format has the support recommended installs in bold & underlined, but there are some other nice-to-know patches included as well. These nice-to-know patches may not be necessary for your particular installation.

The formatting may change over time, but hopefully this is helpful!

** As always, please be sure to do your own due dilligance before applying any patch. This list is for reference only.


Oracle Patches[1]

ODC
·       14538406 – 2012/09/17 – ODC Patch 4 for 10.1.3.5.1 (cumulative)
·       16312671 - 2013/02/15 – CPUAPR2013 Oracle Document Capture 10.1.3.5 (ActiveX IE killbit to prevent certain ActiveX controls; verify before installing!)
WEC (Capture 11g)
·       17383091 – 2013/08/29 – Cumulative Capture Patch 11.1.1.8 #1
OFR
·       13882540 – 2012/04 – Critical Patch Update
·       13548500 – 2011/12/30 – Registry fix for searching for vendors with identical addresses
·       11813845 – 2011/02 - OFR Patch 1 (not cumulative)
·       12692984 – 2011/06 – OFR Patch 2 (not cumulative)
·       12372094 – 2011/04/27 – (updated ODC macros)

WebCenter Content Patches

·       11.1.1.8
o    17453460 – 2013/09/14 – MLR02
o    17545942 - 2013/10/03 – OIT cumulative patch
·       11.1.1.7
o    17180477 – 2013/08 - MLR02
o    17545942 - 2013/10/03 – OIT cumulative patch
·       11.1.1.6
o    17046964 – 2013/07 – MLR15
o    17545942 - 2013/10/03 – OIT cumulative patch

WebCenter Content Imaging Patches
·       11.1.1.8
·       11.1.1.7
o    17458031 – 2013/09/13 - CUMULATIVE IPM/AXF PATCH 11.1.1.7.0 NUMBER 4
o    17056936 – 2013/07/21 - CUMULATIVE EBS PATCH 11.1.1.7.0 NUMBER 1
o    16403418 – 2013/03/12 - CUMULATIVE FUSION APPS PATCH 11.1.1.7.0 NUMBER 1
·       11.1.1.6
o    17436422 – 2013/09/20 - CUMULATIVE IPM/AXF PATCH 11.1.1.6.0 NUMBER 20
o    17057174 – 2013/07/05 - CUMULATIVE EBS PATCH 11.1.1.6.0 NUMBER 5
o    16547732 – 2013/03/29 - CUMULATIVE FUSION APPS PATCH 11.1.1.6.0 NUMBER 4
BAM Patches
·       (No cumulative patch threads could be found, but many one-off patches exist)
·       14491485
o    Bug #14491485
o    CANNOT LOGIN TO BAM ON RESTARTING BAM SERVER WHILE SOA & WLS ARE RUNNING

SOA Manager Patches
·       11.1.1.7
o    17559974 – 2013/10/07 – ** Merge request on top of 11.1.1.7.0
·       11.1.1.6
o    16702086 – 2013/06/13 – 11.1.1.6.7 Bundle Patch
o    17353577 – 2013/09 – HCFP MLR13 (** Merge request on top)
o    17560052 – 2013/10/06 – ** Merge request on top of 11.1.1.6.0
o    11.1.1.6.7
§  17571007 – 2013/10/08 – ** Merge request on top of SOA BP 11.1.1.6.7
** Note that there are multiple “merge request” patches per SOA release; they do not appear to be cumulative; please research and download as applicable for your version
WLS Patches
·       10.3.6
o    16619891 – 2013/07 – WLS Patch Set Update 10.3.6.0.5
* Note that WLS has many one-off patches and “merge request” patches; please research and download as applicable for your version
WebCenter Portal

·       11.1.1.8
·       11.1.1.7
o    16761779 – 2013/07/23 – WebCenter Portal Bundle Patch 11.1.1.7.1
·       11.1.1.6
o    16269470 – 2013/07/23 – WebCenter Portal Bundle Patch 11.1.1.6.6
o    14823234 – 2013/07/23 – WebCenter Portal Bundle Patch 11.1.1.6.5
o    15996694 – 2013/01/15 – WebCenter Bundle Patch #5 for FA (Fusion Applications) POST-release 5
o    15966094 – 2013/01/14 – WebCenter Bundle Patch #11 for FA (Fusion Applications) POST-RUP3

o    17328920 – 2013/09/25 – Content Presenter throws stuck thread and OOM when UCM returns many profiles
o    16925779 – 2013/09 – ** Merge Request on top of 11.1.1.6.0
** Note that there are many one-off and “merge request” patches per Portal release; they do not appear to be cumulative; please research and download as applicable for your version



[1] http://support.oracle.com *requires a valid support agreement to download patches