17 Managing Notification Service
The notification templates and notification providers are described in the following sections:
17.1 About Notification Providers
Information about events occurring in Oracle Identity Manager is required to be sent to various users, such as requesters, beneficiaries, or administrators. This information about events is sent by using the notification service in the form of notification e-mail messages. The notification service allows you to perform all notification-related operations.
An event is an operation that occurs in Oracle Identity Manager, such as user creation, request initiation, or any custom event created by the user. The events are generated as part of business operations or via generation of errors. Event definition is the metadata that describes the event. To define metadata for events, it is important to identify all event types supported by a functional component. For example, as a part of the scheduler component, metadata can be defined for scheduled job execution failed and shutting down of the scheduler. Every time a job fails or the scheduler is shut down, the events are raised and notifications associated with that event are sent.
The data available in the event is used to create the content of the notification. The different parameters defined for an event help the system to select the appropriate notification template. The different parameters that are defined for an event help the system decide which event variables can be made available at template design time.
A notification template is used to send notifications. These templates contain variables that refer to available data to provide more context to the notifications. The channel through which a notification is sent is known as the notification provider. Examples of such channels are e-mail, Instant Messaging (IM), Short Message Service (SMS), and voice. To use these notification providers, Oracle Identity Manager uses Oracle User Messaging Service (UMS).
At the backend, the notification engine is responsible for generating the notification, and utilizing the notification provider to send the notification.
17.2 Managing Notification Providers
Managing notification providers includes using UMS, SMTP, and SOA composite for notification, configuring custom notification provider, and enabling and disabling notification providers.
Managing notification providers is described in the following sections:
17.2.1 Using UMS for Notification
Using UMS for notification ensures support for a variety of messaging channels and robust delivery of messages. Configuring UMS for notification involves enabling UMS for notification and applying OWSM policy to the UMS web service.
This section describes how to use UMS for notification in the following topics:
17.2.1.1 About UMS for Notification
UMS offers various capabilities for sending notifications. These capabilities are used by Oracle Identity Manager notification engine to achieve the following:
-
Support for a variety of messaging channels: Messages can be sent and received through e-mail, IM, SMS, and voice. Oracle Identity Manager supports sending notification messages only via e-mail.
-
Robust message delivery: UMS keeps track of delivery status information provided by messaging gateways, and makes this information available to applications so that they can respond to a failed delivery.
17.2.1.2 Enabling Oracle Identity Governance to Use UMS for Notification
To enable Oracle Identity Governance to use UMS for notification:
-
Configure UMS properties by using the UMSEmailNotificationProviderMBean MBean. To do so:
-
Log in to Oracle Enterprise Manager.
-
Click Application Deployments.
-
Right-click OIMAppMetadata(11.1.2.0.0)(oim_server_name), and select System MBean Browser.
-
In the System MBean Browser, navigate to Application Defined MBeans, oracle.iam, Server: oim_server_name, Application: oim, IAMAppRuntimeMBean, and select UMSEmailNotificationProviderMBean.
-
In the Attributes tab, enter the information listed in Table 17-1:
Table 17-1 Parameters in Attributes Tab
Attribute Description Policies
The Messaging UMS web service is used for integration between Oracle Identity Manager and UMS. This Web Service can be secured via Oracle Web Services Manager (OWSM) policy. If OWSM policy is attached to the Messaging web service at server level, then provide the name of the corresponding client side policy. Otherwise, leave the field blank. For example, if oracle/wss11_username_token_with_message_protection_service_policy is applied at the server level, then provide the corresponding client policy name here, such as oracle/wss11_username_token_with_message_protection_client_policy.
WSUrl
This is the URL of the UMS Web service to be started. By default, it contains the URL of the Messaging UMS web service used for integration between Oracle Identity Manager and UMS.
You can use any other SOA server, for example:
http://SOA_HOST:SOA_PORT/ucs/messaging/webservice
Here, replace SOA_HOST with the host name of the SOA server and SOA_PORT with the port number to connect to the SOA server.
CSFKey
This is the UMS e-mail notification provider credential store (CSF) key name. The key name is populated by default. This key is in the oracle.wsm.security map.
You can find the oracle.wsm.security map as follows:
-
In Oracle Enterprise Manager, expand WebLogic Domain.
-
Right-click the base domain, and select Security, Credentials. The Credentials page is displayed.
-
In the Credential column, expand the oracle.wsm.security map.
Figure 17-1 shows the properties of the UMSEmailNotificationProviderMBean in the Attributes tab of the System MBean Browser.Figure 17-1 UMSEmailNotificationProviderMBean Properties
Description of "Figure 17-1 UMSEmailNotificationProviderMBean Properties" -
-
Click Apply.
-
-
If Oracle Identity Manager and UMS server are in different domains, then you must import the UMS public key into Oracle Identity Manager domain's keystore, and must import Oracle Identity Manager domain's public key into the UMS keystore.
See Also:
Configuring Oracle User Messaging Service in Administrator's Guide for Oracle SOA Suite and Oracle Business Process Management Suite for details about UMS Web service security.
-
Configure the e-mail driver. There is no default configured e-mail driver. The e-mail driver must be configured explicitly.
To create the e-mail driver:
-
Go to the Target Navigation by clicking the table icon beside the domain name.
-
Expand User Messaging Service.
-
Click usermessagingdriver-email (soa_server1).
-
Select the User Messaging Email Driver drop down.
-
Click Email Driver Properties.
-
Click Create to create the driver.
-
Provide values for the following and save:
Name:
EmailDriver1
(example value)Select Capability :
SEND
Outgoing Mail Server :
localhost
(example value)Outgoing Mail Server Port :
25
(example value)
-
-
If mail server security is SSL, then you must remove DemoTrust store references from the SOA environment. To do so:
-
In a text editor, open the DOMAIN_HOME/bin/setDomainEnv.sh file. Open setDomainEnv.bat file for Microsoft Windows.
-
Remove the following line:
-Djavax.net.ssl.trustStore=$WL_HOME/server/lib/DemoTrust.jks from EXTRA_JAVA_PROPERTIES
-
Save and close the file.
-
In a text editor, open the DOMAIN_HOME/bin/startManagedWeblogic.sh file. For Microsoft Windows, open the startManagedWeblogic.bat file.
-
Remove the following weblogic.security.SSL.trustedCAKeyStore property set in JAVA_OPTIONS from this file:
JAVA_OPTIONS="-Dweblogic.security.SSL.trustedCAKeyStore="{MW_HOME}/server/server/lib/cacerts" ${JAVA_OPTIONS}"
-
Save and close the file.
-
Restart the Admin and Managed servers.
Note:
For more details on configuring UMS to connect to a mail server with SSL, see "Configuring Oracle User Messaging Service" in Administrator's Guide for Oracle SOA Suite and Oracle Business Process Management Suite.
-
-
Edit the username and password in the CSF key. To do so:
-
In Oracle Enterprise Manager, expand WebLogic Domain.
-
Right-click the base domain, and select Security, Credentials. The Credentials page is displayed.
-
In the Credential column, expand the oracle.wsm.security map.
-
Select the record for the Notification.Provider.Key credential key.
-
On the toolbar, click Edit. The Edit Key dialog box is displayed.
-
Edit the values in the User Name and Password fields, and click OK.
-
17.2.1.3 Applying OWSM Policy to the UMS Web Service
Server-side OWSM policy can be applied to the UMS Web service to protect any other Web service that uses EM. The corresponding client side policy, username, and password must be provided in the provider XML or via MBean.
17.2.1.3.1 Attaching Server-Side Policy to the UMS Web Service
To attach server-side policy to the UMS Web Service:
17.2.2 Using SMTP for Notification
Using SMTP for notification involves configuring the SMTP email notification provider properties and adding the CSF key.
By default, the SMTP Email Notification Provider is disabled. This is enabled by setting the value of the enabled attribute to true.
17.2.2.1 Configuring the SMTP Email Notification Provider Properties
To configure SMTP Email Notification Provider properties by using the EmailNotificationProviderMBean MBean:
- Login to Oracle Enterprise Manager.
- Click Application Deployments.
- Right-click OIMAppMetadata(11.1.2.0.0)(oim_server1), and select System MBean Browser. The System MBean Browser is displayed.
- Navigate to Application Defined MBeans, oracle.iam, Server: oim_server1, Application: oim, IAMAppRuntimeMBean, EmailNotificationProviderMBean. All the attributes of the EmailNotificationProviderMBean MBean is displayed in the Attributes tab.
Figure 17-2 shows the properties of EmailNotificationProviderMBean in the Attributes tab of the System Mbean Browser.
Figure 17-2 EmailNotificationProviderMBean Properties

Description of "Figure 17-2 EmailNotificationProviderMBean Properties"
Table 17-3 describes the properties of Default SMTP Email notification provider.
Table 17-3 Default SMTP Email Notification Provider Properties
Property | Description |
---|---|
Enabled |
This property derives the status of the notification provider. If the value of this property is false, then the provider is inactive. To activate the provider, change the value to true. |
Type |
This property determines the type of the notification provider. Oracle Identity Manager supports only Email type. |
IsAuth |
If the value of this flag is false, then authentication is not required at mail server. As a result, you do not need to provide the CSFKey and CSFMap values. But this depends on the mail server in use. Most of the mail servers support this flag. If any mail server does not support this flag, then authentication credentials must be provided in CSFKey and corresponding CSFMap. |
ItrName |
If you want to provide connectivity information via IT resource instance of type Mail Server, then provide the name of IT resource instance here. This is not a recommended option. |
CSFMap |
This property determines the name of the existing CSF Map, for example oim and oracle.wsm.security. |
CSFKey |
This property takes the name of the key that contains the authentication credentials, which are username and password. This key must exist under the map name. By default, one key with name Notification.Provider.Key is available under oracle.wsm.security map. This key is used for UMS Email notification provider. If UMS email provider is disabled, then use the same map and key to provide the username and password required at mail server for authentication. Otherwise, create a new key under any of the default maps, and provide the name of map and key in these properties. Adding a CSF key is described later in this section. |
ConnectionTimeout |
This is in milliseconds. This is required for setting a maximum time for connection establishment. |
MailServername |
This is the name of mail server. |
Sender |
This is the sender used in Oracle Identity Manager for sending the emails. |
17.2.2.2 Adding the CSF Key
To add a CSF key:
- Login to Oracle Enterprise Manager.
- Expand WebLogic Domain.
- Right-click base_domain, and select Security, Credentials.
- Expand oracle.wsm.security, and then click Create Key.
- Create a key of type password. Provide the key name, description, username, and password. Click OK.
17.2.3 Using SOA Composite for Notification
Using SOA composite for notification involves creating a SOA composite with notification activity, deploying the SOA composite on the SOA server, setting workflow notification properties, configuring the SOA email notification provider properties, and configuring the user messaging drivers.
By default, the SOA Email Notification Provider is disabled. You can enable this notification provider by changing the value of the enabled property to true.
To use SOA composite in Oracle Identity Manager for notification perform the below listed procedure in the given order :
17.2.3.1 Creating a SOA Composite with Notification Activity
Create a SOA composite with notification activity. For details, see Using the Notification Service in Developer's Guide for Oracle SOA Suite.
Figure 17-3 shows the sample mapping of the composite payload via Expression Builder.
Figure 17-3 Sample Mapping of Composite Payload

Description of "Figure 17-3 Sample Mapping of Composite Payload"
17.2.3.2 Deploying the SOA Composite on the SOA Server Manually
Manually deploy the SOA composite on the SOA server. To do so:
-
Create an application connection. To do so:
-
Open the SOA composite in JDeveloper.
-
Create a new Application Server Connection by right-clicking the project and selecting New, Connections, Application Server Connection.
-
Name the connection as
SOA_server
, and click Next. -
Select WebLogic 10.3 as the Connection Type.
-
Enter the authentication information. The typical values are:
Username: weblogic
Password: PASSWORD
-
On the Connection screen, enter the hostname, port, and SSL port for the SOA Admin server or Admin server, and enter the name of the WebLogic domain.
-
Click Next.
-
On the Test screen, click Test Connection. Verify that the success message is displayed.
-
-
Deploy the project. To do so:
-
Right-click the project, select deploy, select the project name. Select the to option to create the application connection, which is SOA_server. Verify that the build successful message is stored in the log.
-
Enter the default revision, and click OK. Verify that the Deployment Finished message is stored in the deployment log.
-
17.2.3.3 Setting Workflow Notification Properties
Using Enterprise Manager, navigate to soa-infra. Right-click soa-infra, and select SOA Administration, Workflow Properties. Under Workflow Notification Properties, select ALL from the drop down to set the Notification Mode to ALL.
17.2.3.4 Configuring the SOA Email Notification Provider Properties
Configure the SOA Email Notification Provider properties by using the SOAEmailNotificationProviderMBean MBean. To do so:
- Log in to Oracle Enterprise Manager.
- Expand Application Deployments. Right-click OIMAppMetadata(11.1.2.0.0)(oim_server1), and select System MBean Browser.
- Navigate to Application Defined MBeans, oracle.iam, Server: oim_server1, Application: oim, IAMAppRuntimeMBean, SOAEmailNotificationProviderMBean.
Change the value of the enabled property from false to true in the SOAEmailNotificationProviderMBean. Figure 17-4 shows the properties of the Bean of SOA Email notification provider.
Figure 17-4 SOAEmailNotificationProviderMBean Properties

Description of "Figure 17-4 SOAEmailNotificationProviderMBean Properties"
Table 17-4 lists some of the properties of the SOA Email Notification Provider.
Table 17-4 SOA Email Notification Provider Properties
Property | Description |
---|---|
Enabled |
This property derives the status of the notification provider. If the value of this property is false, then the provider is inactive. To activate the provider, change the value to true. |
Type |
This property determines the type of the notification provider. Oracle Identity Manager supports only Email type. |
CompositeID |
This represents the name of the SOA composite. Name includes pkg/Name!version. |
ServiceName |
This is the name given to the service in the SOA composite. |
OperationName |
This is the name given to the process in the SOA composite. |
PayloadID |
This is the name given to the payload in the SOA composite. |
TargetNamespace |
This is the name of the targetNamespace given in various XMLs generated while creating the SOA composite. |
Sender |
This is the sender used in Oracle Identity Manager for sending the emails. |
17.2.4 Configuring Custom Notification Provider
You can configure and use a custom notification provider, other than the default notification providers, for sending notifications.
To configure a custom notification provider:
17.2.5 Disabling and Enabling Notification Providers
The notification providers, such as UMS notification provider or EmailNotificationProvider, can be disabled or enabled by using Oracle Enterprise Manager.
For example, to disable UMS notification provider:
- Login to Enterprise Manager.
- Go to Application Deployments.
- Right-click OIMAppMetadata(11.1.2.0.0)(oim_server1), and select System MBean Browser. The System MBean Browser pane is displayed.
- Go to Application Defined MBeans, oracle.iam, Server: oim_server1, Application: oim, IAMAppRuntimeMBean.
- Select UMSEmailNotificationProviderMBean.
- In the Attributes tab, from the Value list corresponding to the Enabled attribute, select false to disable UMS notification provider. To enable UMS notification provider, select true.
- Click Apply.
17.3 Managing Notification Templates
A notification template, which contains variables that refer to available data to provide more contexts to the notifications, is used to send notifications. Managing notification templates include searching, creating, modifying, enabling and disabling, and deleting notification templates, adding and removing locales to and from notification templates, and configuring notification for a proxy.
This section describes about notification templates in the following topics:
17.3.1 Default Notification Template
Default notification templates are available for various notification scenarios, such as for bulk requests, proxies, password generation, warning, expiry, and reset, and request creation and status change.
Oracle Identity Manager provides a set of default notification templates, as shown in Table 17-5.
Table 17-5 Default Notification Templates
Notification Template | Description |
---|---|
Add Proxy Notification |
Template to send notification after a proxy has been added for a user |
Bulk Request Creation |
Template to send notification during a bulk request creation |
Create User Self Service Notification |
Template to send notification after a new user is created |
End Date |
Template to send notification to the manager when end date of the reportee expires |
Forgotten Username Notification |
Template to send notification after user submits the Forgotten Username form |
Generated Password Notification |
Template to send notification after a password is generated by Oracle Identity Manager |
Password Expired Notification |
Template to send notification after password has expired |
Password Warning Notification |
Template to send notification before password expires |
Request Creation |
Template to send notification during a request creation |
Request Identity Creation |
Template to send notification during a Create User request |
Request Status Change |
Template to send notification during a request status change |
Reset Password |
Template to send notification after password has been reset |
User Deleted |
Template to send notification to the manager when the user account of the reportee is deleted as a result of expired end date |
17.3.2 Searching for a Notification Template
You can perform a simple search or an advanced search for a notification template by using the Identity System Administration.
This section contains the following topics:
17.3.2.1 Performing Simple Search for a Notification Template
To perform a simple search for a notification template:
17.3.3 Creating a Notification Template
Use the Notification page to create a new notification template by specifying various attributes, such as template name and description, event details, and locale information.
Note:
Corresponding to each event that happens, you have to configure an XML file. The XML file defines the behavior of each event. You must first configure the XML for an event. After this is done, you can create a notification template for that event.
For information about creating the event XML file, see Defining Event Metadata in Developing and Customizing Applications for Oracle Identity Governance.
To create a notification template:
-
Log in to Oracle Identity System Administration.
-
In the left pane, under System Configuration, click Notification. The Notification page is displayed.
-
From the Actions menu, select Create. Alternatively, click the Create icon. The Create Template page is displayed.
-
In the Template Information section, enter values for the following fields:
-
Template Name: Enter the template name in this field.
-
Description Text: Enter a brief description of the template in this field.
Note:
The Description Text field cannot be translated and is available only in English.
-
-
In the Event Details section, from the Available Event list, select the event for which the notification template is to be created from a list of available events. Depending on your selection, other fields are displayed in the Event Details section.
-
Under the Locale Information section, enter values in the following fields:
Note:
The Default Locale information is stored in the PTY table and is fetched from there.
-
To specify a form of encoding, select either UTF-8 or ASCII.
-
In the Message Subject field, enter a subject for the notification.
-
From the Type options, select the data type in which you want to send the message. You can choose between HTML and Text/Plain.
-
In the Short Message field, enter a short version of the message.
-
In the Long Message field, enter the message that will be sent as the notification. See step 7.
-
-
To use the token for available data in the messages that will be sent as notification:
-
In the Event Details section, select the attribute from the Available Data list. This attribute will be displayed in the Selected Data field.
-
Copy the attribute and add it in the message text by placing it inside ${}. For example, if selected data is FA_Territory, then include it in the text as ${FA_Territory}.
Figure 17-6 shows the Create Notification Template page with sample values:
Figure 17-6 The Create Notification Template Page
Description of "Figure 17-6 The Create Notification Template Page" -
-
After you have entered the required values in all the fields, click Save.
-
A message is displayed confirming the creation of the notification template. Click OK.
17.3.4 Modifying a Notification Template
Use the notification template details page to modify the attributes of a notification template.
To modify a notification template:
17.3.5 Disabling a Notification Template
Use the Notification section of the Identity System Administration to disable a notification template.
You can disable an enabled notification template in the following ways:
-
Disable by selecting the notification template in the notification search results. To do so:
-
In the Identity System Administration, under System Configuration, click Notification.
-
Search for the notification template that you want to disable.
-
Select the template that you want to disable. Note that the Disable button is active if the notification template is in enabled state.
-
Click Disable. A message is displayed prompting you to confirm the disable operation. Click Yes. A message is displayed confirming the disable operation.
-
-
Disable by opening the notification template details. To do so:
-
In the Identity System Administration, under System Management, click Notification.
-
Search for the notification template that you want to disable.
-
Click the template name to open the template details. In the notification template details page, the Disable button is active if the notification template is in enabled state, as shown in Figure 17-7.
-
Click Disable. A message is displayed confirming the disable operation.
-
17.3.6 Enabling a Notification Template
Use the Notification section of the Identity System Administration to enable a notification template.
You can enable a disabled notification template in the following ways:
-
Enable by selecting the notification template in the notification search results. To do so:
-
In the Identity System Administration, under System Configuration, click Notification.
-
Search for the notification template that you want to enable.
-
Select the template that you want to disable. Note that the Enable button is active if the notification template is in disabled state.
-
Click Enable. A message is displayed prompting you to confirm the enable operation. Click Yes. A message is displayed confirming the enable operation.
-
-
Enable by opening the notification template details. To do so:
-
In the Identity System Administration, under System Management, click Notification.
-
Search for the notification template that you want to enable.
-
Click the template name to open the template details. In the notification template details page, the Enable button is active if the notification template is in disabled state.
-
Click Enable. A message is displayed confirming the enable operation.
-
17.3.7 Adding Locales to a Notification Template
You can add a locale to a notification template from a list of locales that are present in Oracle Identity Manager instance.
To add locales to a notification template:
17.3.8 Removing Locales from a Notification Template
Use the Remove Locale page to remove locales from a notification template.
To remove locales from a notification template:
17.3.9 Deleting a Notification Template
Use the Delete option in the Notification section of Identity System Administration to delete a notification template that is not required or is not in use.
To delete a notification template:
- In the Identity System Administration, under System Configuration, click Notification.
- Search for the notification template that you want to delete.
- Select the template that you want to delete.
- From the Actions menu, click Delete. Alternatively, click the cross icon on the toolbar. A message is displayed prompting you to confirm the delete the operation. Click Yes. A message is displayed confirming the delete operation.
17.3.10 Configuring Notification for a Proxy
You can configure notification for a proxy by configuring a new email IT resource, and specifying a user as a proxy for another user.
Use the following steps to configure notification for a proxy:
- Configure a new Email IT resource.
- Create a new user. (For example, create a user Jane Doe.)
- Create a second user. (For example, create a user John Doe.)
- Assign the Jane Doe user as a manager for John Doe.
- Specify your email ID for John Doe, which enables you to receive notifications in your inbox.
- Login to Oracle Identity Self Service as Jane Doe.
- In the Self Service tab, click My Information. The My Information page is displayed.
- Expand Proxies. In the Proxies section, add John Doe as a proxy for Jane Doe.
Note:
If you successfully added the proxy, you (John Doe in this case) will receive an email notification message similar to the following:
"You have been made the proxy for Jane Doe [JANED] from April 9, 2012 12:00:00 AM to April 30, 2010 12:00:00 AM".
17.4 Configuring Email in Provisioning Workflow
You can configure email notifications for using them in provisioning processes by configuring the default email provider.
To configure default email provider:
- Login to Oracle Identity System Administration, and set the value of the Email Server system property (with keyword XL.MailServer) to point to the IT resource with name Email Server. For information about this system property, see Configuring Oracle Identity Governance.
- Verify that the Email Server IT resource exists. This IT resource must have Mail Server as the IT resource type, and it must have a server name, for example localhost. If this IT resource is not present for mail server, then create the IT resource. For information about creating IT resources, see Creating IT Resources.
17.5 Configuring SOA Email Notification
You can configure and actionable email notification on SOA and troubleshoot issues related to SOA email notification.
This section describes how to configure SOA email notifications in the following topics:
17.5.1 Configuring Actionable Email Notification on SOA
To configure actionable email notification on SOA, specify email as the notification mode and specify driver-specific attributes for email notification.
To configure email notifications on SOA:
-
Before performing the steps to configure email notifications in SOA, ensure the following:
-
Make sure that the user to whom task is assigned has a valid email account set in Oracle Identity Manager.
-
If you want email notifications to be actionable, such as allowing approving or rejecting requests from the email, then ensure that you have configured human task to send actions in the notification. You can verify this by using SOA Composer. To do so:
-
Login to SOA Composer by using weblogic user by using the following URL:
http://SOA_HOST:SOA_PORT/soa/composer
-
From the Open menu, select Open Tasks.
-
In the Select a Task to open dialog box, select the human task for which you want to verify the settings, and then click Open.
-
In Notification Settings section, verify that the Make notification actionable option is selected.
-
-
-
Login to Oracle Enterprise Manager as weblogic user.
-
Go to SOA. Right-click soa-infra (soa_server_name), and select SOA Administration, Workflow Properties.
-
In the Workflow Notification Properties dialog box, select Email from the Notification Mode list.
-
Enter values for the following:
-
Email : From Address: Email account from which notification will be sent to approvers
-
Email : Actionable Address: Email account that will receive approve/reject response sent by approvers via email
-
Email : Reply To Address: Optional email address to which the reply will be sent, for example, no.reply@yourdomain.com
-
-
Click Apply.
-
Go to User Messaging Service. Right-click usermessagingdriver-email (soa_server_name), and select Email Driver properties.
-
In the Driver-Specific Configuration section, configure the following minimum attributes for email notifications to work correctly:
-
MailAccessProtocol: Select IMAP or POP3
-
OutgoingMailServer: Name of the SMTP server, for example, myhost.mycompany.com
-
OutgoingMailServerPort: Port of the SMTP server, for example, 465
-
OutgoingDefaultFromAddress: Same as OutgoingMailServer
-
OutgoingPassword: You can provide the password in clear text stored in driverconfig.xml, or store password in CSF by using indirect option.
-
IncomingMailServer: The hostname of the incoming mail server. Required only if receiving emails is supported on the driver instance.
-
IncomingMailIDs: The email addresses corresponding to the user names. Each email address is separated by a comma and must reside in the same position in the list as their corresponding user name appears on the usernames list. Required only if receiving emails is supported on the driver instance.
-
IncomingUserPasswords: You can provide password in clear text stored in driverconfig.xml, or store password in CSF using indirect option.
-
Debug (Optional): Setting this to true logs all email activity on SOA server console but not SOA log files. Set this to true until you are sure that notifications are working correctly.
See Also:
"Configuring Human Workflow Service Components and Engines" and "Configuring Oracle User Messaging Service" in Administrator's Guide for Oracle SOA Suite and Oracle Business Process Management Suite for detailed information about driver-specific configuration and Human workflow service components.
-
-
Click Apply, and restart SOA Managed Server.
17.5.2 Troubleshooting SOA Email Notification
Troubleshooting considerations for SOA email notification can be enabling Debug mode for driver-specific configuration, verifying email server and accounts, and scrutinizing the SOA server log.
Consider the following to troubleshoot issues encountered with SOA email notification:
-
Enable the Debug option in the driver-specific configuration if you are facing issues with sending or receiving notifications. If you modify the email driver properties, then restart SOA server.
-
Send test notifications. To do so:
Login to Oracle Enterprise Manager. Go to SOA. Right-click soa-infra (soa_server_name), and select Service Engines, Human Workflow, Notification Management, Send Test Notification.
-
Verify that email server and accounts are working. Try sending/receiving emails using your email client.
-
Check the SOA server log. Usually, the issue is with user messaging service configuration. If you have enabled the debug option, then SOA server log provides debugging information.
-
Sometimes if email is not being sent to a particular email account (because of incorrect configuration), then SOA server marks it as bad address. You must manually remove such bad address. To do so:
Login to Oracle Enterprise Manager. Go to SOA. Right-click soa-infra (soa_server_name), Service Engines, Human Workflow, Notification Management, View Bad Address, Remove the Bad Address.
17.6 Disabling Oracle Identity Governance Email Notifications
Disabling email notifications involves disabling email notification by removing the SelfServiceNotificationHandler or PasswordNotificationHandler.
This section describes how to disable Oracle Identity Governance email notification in the following topics:
17.6.1 About Disabling Oracle Identity Governance Email Notifications
Notifications are sent in some scenarios by event handlers when users are created through UI or through SPML. The scenarios are user creation with manual password, manual or auto generated password change, email notification disablement.
Notifications are sent in the following scenarios by event handlers when users are created through UI or through SPML:
See Also:
Developing Event Handlers in Developing and Customizing Applications for Oracle Identity Governance for information about event handlers.
-
A user is created with manual password as a result of SelfServiceNotificationHandler. To disable sending email notification, remove the SelfServiceNotificationHandler section in the /metadata/iam-features-selfservice/event-definition/EventHandlers.xml in MDS. To do so, see Disabling Sending Email Notification by Removing the SelfServiceNotificationHandler.
-
System Administrator creates user with autogenerated password as a result of PasswordNotificationHandler. To disable sending email notification, remove the PasswordNotificationHandler section in the /metadata/iam-features-passwordmgmt/event-definition/EventHandlers.xml file in MDS.
To do so, see Disabling Sending Email Notification by Removing the PasswordNotificationHandler.
-
System Administrator changes password manually. The notification can be disabled through UI based on the email checkbox selected on the UI.
-
System Administrator changes password with autogenerated password (reset password) as a result of ResetPasswordActionHandler. This is not a postprocess event handler that can be disabled.
-
To disable notifications related to reconciliation, login to Oracle Identity System Administration, and set the 'Should send notifications in recon or not' system property to FALSE. For information about this system property, see Default System Properties in Oracle Identity Governance.
-
To disable all email notifications in Oracle Identity Manager, set the value of the XL.DisableAllNotifications system property to true. By default, the value of this system property is false. If an incorrect value is specified for this system property, then notifications are enabled. See Default System Properties in Oracle Identity Governance for information about this system property.
17.6.2 Disabling Sending Email Notification by Removing the SelfServiceNotificationHandler
A user is created with manual password as a result of SelfServiceNotificationHandler. To disable sending email notification, remove the SelfServiceNotificationHandler section in the /metadata/iam-features-selfservice/event-definition/EventHandlers.xml in MDS.
A user is created with manual password as a result of SelfServiceNotificationHandler. To disable sending email notification, remove the SelfServiceNotificationHandler section in the /metadata/iam-features-selfservice/event-definition/EventHandlers.xml in MDS. To do so:
17.6.3 Disabling Sending Email Notification by Removing the PasswordNotificationHandler
System Administrator creates user with autogenerated password as a result of PasswordNotificationHandler. To disable sending email notification, remove the PasswordNotificationHandler section in the /metadata/iam-features-passwordmgmt/event-definition/EventHandlers.xml file in MDS.
To remove the PasswordNotificationHandler section in the /metadata/iam-features-passwordmgmt/event-definition/EventHandlers.xml file in MDS:
17.7 Troubleshooting Notification
Troubleshooting notification includes issues related to incorrect URL, incorrect outgoing server email driver properties, SOA server errors, authentication failure, and failed email deliver not reported through Enterprise Manager.
This section describes the following issues that you might encounter with UMS configuration and the corresponding solutions:
17.7.1 Issues Related to Incorrect URL
Notification issues related to incorrect URL can be because of malformed or incorrect URLs.
Problem
Oracle Identity Manager log shows the following error:
<Jun 13, 2012 12:53:25 AM PDT> <Warning> <oracle.adfinternal.view.faces.renderkit.rich.SelectItemUtils> <ADF_FACES-30118> <No help provider found for helpTopicId=create_user.> java.net.MalformedURLException: For input string: "SOA_PORT" at java.net.URL.<init>(URL.java:601) at java.net.URL.<init>(URL.java:464) at java.net.URL.<init>(URL.java:413) at java.net.URI.toURL(URI.java:1081) at oracle.j2ee.ws.common.transport.HttpTransport.transmit(HttpTransport.java:61) at oracle.j2ee.ws.common.async.MessageSender.call(MessageSender.java:64) at oracle.j2ee.ws.common.async.Transmitter.transmitSync(Transmitter.java:134) at oracle.j2ee.ws.common.async.Transmitter.transmit(Transmitter.java:90) at oracle.j2ee.ws.common.async.RequestorImpl.transmit(RequestorImpl.java:273) at oracle.j2ee.ws.common.async.RequestorImpl.invoke(RequestorImpl.java:94) at oracle.j2ee.ws.client.jaxws.DispatchImpl.invoke(DispatchImpl.java:811) at oracle.j2ee.ws.client.jaxws.OracleDispatchImpl.synchronousInvocationWithRetry(OracleDispatchImpl.java:235) at oracle.j2ee.ws.client.jaxws.OracleDispatchImpl.invoke(OracleDispatchImpl.java:106) at oracle.j2ee.ws.client.jaxws.WsClientProxyInvocationHandler.invoke(WsClientProxyInvocationHandler.java:254) at $Proxy422.send(Unknown Source) at oracle.ucs.messaging.ws.MessagingClient.send(MessagingClient.java:299) at oracle.iam.notification.provider.UMSEmailServiceProvider.sendMessage(UMSEmailServiceProvider.java:188) at oracle.iam.notification.provider.UMSEmailServiceProvider.sendNotification(UMSEmailServiceProvider.java:173) at oracle.iam.notification.impl.NotificationServiceImpl.sendEmailNotification(NotificationServiceImpl.java:601) at oracle.iam.notification.impl.NotificationServiceImpl.notify(NotificationServiceImpl.java:540) at oracle.iam.notification.impl.NotificationServiceImpl.notify(NotificationServiceImpl.java:271) <Jun 13, 2012 12:53:31 AM PDT> <Error> <oracle.iam.notification.impl> <BEA-000000> <Provider UMSEmailServiceProvider has encountered exception : null> <Jun 13, 2012 12:53:31 AM PDT> <Error> <oracle.iam.notification.impl> <BEA-000000> <Sending notification with Provider UMSEmailServiceProvider has encountered exception : Error occured while Sending Notification through Provider UMSEmailServiceProvider : null> <Jun 13, 2012 12:53:31 AM PDT> <Error> <oracle.iam.notification.impl> <BEA-000000> <Sending notification with Provider UMSEmailServiceProvider detailed exception : null>
Solution
The cause of this error is malformed URL. To resolve the issue, provide the correct values for SOA_PORT and SOA_HOST in Enterprise Manager (EM).
Problem
Oracle Identity Manager log shows the following error:
<Jun 13, 2012 3:14:14 AM PDT> <Error> <oracle.iam.notification.impl> <BEA-000000> <Provider UMSEmailServiceProvider has encountered exception : javax.xml.soap.SOAPException: javax.xml.soap.SOAPException: Bad response: 404 Not Found from url http://myhost.mycompany.com:8003/ucs/messaging/webservice> <Jun 13, 2012 3:14:14 AM PDT> <Error> <oracle.iam.notification.impl> <BEA-000000> <Sending notification with Provider UMSEmailServiceProvider has encountered exception : Error occured while Sending Notification through Provider UMSEmailServiceProvider : javax.xml.soap.SOAPException: javax.xml.soap.SOAPException: Bad response: 404 Not Found from url http://myhost.mycompany.com:8003/ucs/messaging/webservice> <Jun 13, 2012 3:14:14 AM PDT> <Error> <oracle.iam.notification.impl> <BEA-000000> <Sending notification with Provider UMSEmailServiceProvider detailed exception : javax.xml.soap.SOAPException: javax.xml.soap.SOAPException: Bad response: 404 Not Found from url http://myhost.mycompany.com:8003/ucs/messaging/webservice>
Solution
The cause of this problem in incorrect URL. To resolve the issue, provide the correct URL in EM.
17.7.2 Incorrect Outgoing Server EMail Driver Properties
To troubleshoot notification issues related to outgoing server email driver properties, provide the correct email server address, and ensure that the server is running.
Problem
The following error is generated:
<Jun 13, 2012 3:39:14 AM PDT> <Error> <oracle.sdp.messaging.driver.email> <SDP-25700> <An unexpected exception was caught. javax.mail.MessagingException: Unknown SMTP host: abc.example.com; nested exception is: java.net.UnknownHostException: abc.example.com at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1389) at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:412) at javax.mail.Service.connect(Service.java:310) at javax.mail.Service.connect(Service.java:169) at javax.mail.Service.connect(Service.java:118) at oracle.sdpinternal.messaging.driver.email.EmailDriver.send(EmailDriver.java:780) at oracle.sdpinternal.messaging.driver.email.EmailManagedConnection.send(EmailManagedConnection.java:50) at oracle.sdpinternal.messaging.driver.DriverConnectionImpl.send(DriverConnectionImpl.java:41) at oracle.sdpinternal.messaging.dispatcher.DriverDispatcherBean.onMessage(DriverDispatcherBean.java:296) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131) at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) at $Proxy349.onMessage(Unknown Source) at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:583) at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:486) at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:388) at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4659) at weblogic.jms.client.JMSSession.execute(JMSSession.java:4345) at weblogic.jms.client.JMSSession.executeMessage(JMSSession.java:3821) at weblogic.jms.client.JMSSession.access$000(JMSSession.java:115) at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:5170) at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:545) at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256) at weblogic.work.ExecuteThread.run(ExecuteThread.java:221) Caused By: java.net.UnknownHostException: abc.example.com at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:195) at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) at java.net.Socket.connect(Socket.java:529) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:564) at com.sun.net.ssl.internal.ssl.BaseSSLSocketImpl.connect(BaseSSLSocketImpl.java:141) at com.sun.mail.util.SocketFetcher.createSocket(SocketFetcher.java:233) at com.sun.mail.util.SocketFetcher.getSocket(SocketFetcher.java:163) at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1359) at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:412) at javax.mail.Service.connect(Service.java:310) at javax.mail.Service.connect(Service.java:169) at javax.mail.Service.connect(Service.java:118) at oracle.sdpinternal.messaging.driver.email.EmailDriver.send(EmailDriver.java:780) at oracle.sdpinternal.messaging.driver.email.EmailManagedConnection.send(EmailManagedConnection.java:50) at oracle.sdpinternal.messaging.driver.DriverConnectionImpl.send(DriverConnectionImpl.java:41) at oracle.sdpinternal.messaging.dispatcher.DriverDispatcherBean.onMessage(DriverDispatcherBean.java:296) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131) at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) at $Proxy349.onMessage(Unknown Source) at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:583) at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:486) at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:388) at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4659) at weblogic.jms.client.JMSSession.execute(JMSSession.java:4345) at weblogic.jms.client.JMSSession.executeMessage(JMSSession.java:3821) at weblogic.jms.client.JMSSession.access$000(JMSSession.java:115) at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:5170) at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:545) at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256) at weblogic.work.ExecuteThread.run(ExecuteThread.java:221) >
Solution
The cause of this problem is incorrect Outgoing Server EMail Driver properties. To rectify the issue, provide the correct email server address, and ensure that the server is running.
17.7.3 Error Generated at the SOA Server
To troubleshoot error generated at the SOA server, ensure that the outgoing server host, outgoing server port, and outgoing server security information are provided correctly.
Problem
The following error is displayed in the SOA server logs:
<Jun 13, 2012 3:53:20 AM PDT> <Error> <oracle.sdp.messaging.driver.email> <SDP-25700> <An unexpected exception was caught. javax.mail.MessagingException: Could not connect to SMTP host: stbeehive.example.com, port: 25; nested exception is: java.net.ConnectException: Connection refused at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1391) at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:412) at javax.mail.Service.connect(Service.java:310) at javax.mail.Service.connect(Service.java:169) at javax.mail.Service.connect(Service.java:118) at oracle.sdpinternal.messaging.driver.email.EmailDriver.send(EmailDriver.java:780) at oracle.sdpinternal.messaging.driver.email.EmailManagedConnection.send(EmailManagedConnection.java:50) at oracle.sdpinternal.messaging.driver.DriverConnectionImpl.send(DriverConnectionImpl.java:41) at oracle.sdpinternal.messaging.dispatcher.DriverDispatcherBean.onMessage(DriverDispatcherBean.java:296) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131) at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) at $Proxy345.onMessage(Unknown Source) at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:583) at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:486) at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:388) at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4659) at weblogic.jms.client.JMSSession.execute(JMSSession.java:4345) at weblogic.jms.client.JMSSession.executeMessage(JMSSession.java:3821) at weblogic.jms.client.JMSSession.access$000(JMSSession.java:115) at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:5170) at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:545) at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256) at weblogic.work.ExecuteThread.run(ExecuteThread.java:221) Caused By: java.net.ConnectException: Connection refused at java.net.PlainSocketImpl.socketConnect(Native Method) at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:351) at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:213) at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:200) at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) at java.net.Socket.connect(Socket.java:529) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:564) at com.sun.net.ssl.internal.ssl.BaseSSLSocketImpl.connect(BaseSSLSocketImpl.java:141) at com.sun.mail.util.SocketFetcher.createSocket(SocketFetcher.java:233) at com.sun.mail.util.SocketFetcher.getSocket(SocketFetcher.java:163) at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1359) at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:412) at javax.mail.Service.connect(Service.java:310) at javax.mail.Service.connect(Service.java:169) at javax.mail.Service.connect(Service.java:118) at oracle.sdpinternal.messaging.driver.email.EmailDriver.send(EmailDriver.java:780) at oracle.sdpinternal.messaging.driver.email.EmailManagedConnection.send(EmailManagedConnection.java:50) at oracle.sdpinternal.messaging.driver.DriverConnectionImpl.send(DriverConnectionImpl.java:41) at oracle.sdpinternal.messaging.dispatcher.DriverDispatcherBean.onMessage(DriverDispatcherBean.java:296) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131) at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) at $Proxy345.onMessage(Unknown Source) at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:583) at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:486) at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:388) at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4659) at weblogic.jms.client.JMSSession.execute(JMSSession.java:4345) at weblogic.jms.client.JMSSession.executeMessage(JMSSession.java:3821) at weblogic.jms.client.JMSSession.access$000(JMSSession.java:115) at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:5170) at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:545) at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256) at weblogic.work.ExecuteThread.run(ExecuteThread.java:221) >
Solution
This is an error in SOA server. To rectify the issue, ensure that the outgoing server host, outgoing server port, and outgoing server security information are provided correctly.
17.7.4 Authentication Failure
To troubleshoot authentication failure, provide the correct username and password, deploy and configure the application server, and ensure certification exchange.
Problem
The following errors are generated:
javax.mail.AuthenticationFailedException
OR
<Jun 13, 2012 4:30:41 AM PDT> <Error> <oracle.sdp.messaging.driver.email> <SDP-25700> <An unexpected exception was caught. javax.mail.MessagingException: Exception reading response; nested exception is: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target at com.sun.mail.smtp.SMTPTransport.readServerResponse(SMTPTransport.java:1611) at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1369) at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:412) at javax.mail.Service.connect(Service.java:310) at javax.mail.Service.connect(Service.java:169) at javax.mail.Service.connect(Service.java:118) at oracle.sdpinternal.messaging.driver.email.EmailDriver.send(EmailDriver.java:780) at oracle.sdpinternal.messaging.driver.email.EmailManagedConnection.send(EmailManagedConnection.java:50) at oracle.sdpinternal.messaging.driver.DriverConnectionImpl.send(DriverConnectionImpl.java:41) at oracle.sdpinternal.messaging.dispatcher.DriverDispatcherBean.onMessage(DriverDispatcherBean.java:296) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131) at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) at $Proxy349.onMessage(Unknown Source) at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:583) at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:486) at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:388) at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4659) at weblogic.jms.client.JMSSession.execute(JMSSession.java:4345) at weblogic.jms.client.JMSSession.executeMessage(JMSSession.java:3821) at weblogic.jms.client.JMSSession.access$000(JMSSession.java:115) at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:5170) at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:545) at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256) at weblogic.work.ExecuteThread.run(ExecuteThread.java:221) Caused By: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:174) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1731) at com.sun.net.ssl.internal.ssl.Handshaker.fatalSE(Handshaker.java:241) at com.sun.net.ssl.internal.ssl.Handshaker.fatalSE(Handshaker.java:235) at com.sun.net.ssl.internal.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1206) at com.sun.net.ssl.internal.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:136) at com.sun.net.ssl.internal.ssl.Handshaker.processLoop(Handshaker.java:593) at com.sun.net.ssl.internal.ssl.Handshaker.process_record(Handshaker.java:529) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:925) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1170) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:785) at com.sun.net.ssl.internal.ssl.AppInputStream.read(AppInputStream.java:75) at com.sun.mail.util.TraceInputStream.read(TraceInputStream.java:110) at java.io.BufferedInputStream.fill(BufferedInputStream.java:218) at java.io.BufferedInputStream.read(BufferedInputStream.java:237) at com.sun.mail.util.LineInputStream.readLine(LineInputStream.java:88) at com.sun.mail.smtp.SMTPTransport.readServerResponse(SMTPTransport.java:1589) at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1369) at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:412) at javax.mail.Service.connect(Service.java:310) at javax.mail.Service.connect(Service.java:169) at javax.mail.Service.connect(Service.java:118) at oracle.sdpinternal.messaging.driver.email.EmailDriver.send(EmailDriver.java:780) at oracle.sdpinternal.messaging.driver.email.EmailManagedConnection.send(EmailManagedConnection.java:50) at oracle.sdpinternal.messaging.driver.DriverConnectionImpl.send(DriverConnectionImpl.java:41) at oracle.sdpinternal.messaging.dispatcher.DriverDispatcherBean.onMessage(DriverDispatcherBean.java:296) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131) at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) at $Proxy349.onMessage(Unknown Source) at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:583) at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:486) at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:388) at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4659) at weblogic.jms.client.JMSSession.execute(JMSSession.java:4345) at weblogic.jms.client.JMSSession.executeMessage(JMSSession.java:3821) at weblogic.jms.client.JMSSession.access$000(JMSSession.java:115) at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:5170) at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:545) at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256) at weblogic.work.ExecuteThread.run(ExecuteThread.java:221) Caused By: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:323) at sun.security.validator.PKIXValidator.engineValidate(PKIXValidator.java:217) at sun.security.validator.Validator.validate(Validator.java:218) at com.sun.net.ssl.internal.ssl.X509TrustManagerImpl.validate(X509TrustManagerImpl.java:126) at com.sun.net.ssl.internal.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:209) at com.sun.net.ssl.internal.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:249) at com.sun.net.ssl.internal.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1185) at com.sun.net.ssl.internal.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:136) at com.sun.net.ssl.internal.ssl.Handshaker.processLoop(Handshaker.java:593) at com.sun.net.ssl.internal.ssl.Handshaker.process_record(Handshaker.java:529) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:925) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1170) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:785) at com.sun.net.ssl.internal.ssl.AppInputStream.read(AppInputStream.java:75) at com.sun.mail.util.TraceInputStream.read(TraceInputStream.java:110) at java.io.BufferedInputStream.fill(BufferedInputStream.java:218) at java.io.BufferedInputStream.read(BufferedInputStream.java:237) at com.sun.mail.util.LineInputStream.readLine(LineInputStream.java:88) at com.sun.mail.smtp.SMTPTransport.readServerResponse(SMTPTransport.java:1589) at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1369) at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:412) at javax.mail.Service.connect(Service.java:310) at javax.mail.Service.connect(Service.java:169) at javax.mail.Service.connect(Service.java:118) at oracle.sdpinternal.messaging.driver.email.EmailDriver.send(EmailDriver.java:780) at oracle.sdpinternal.messaging.driver.email.EmailManagedConnection.send(EmailManagedConnection.java:50) at oracle.sdpinternal.messaging.driver.DriverConnectionImpl.send(DriverConnectionImpl.java:41) at oracle.sdpinternal.messaging.dispatcher.DriverDispatcherBean.onMessage(DriverDispatcherBean.java:296) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131) at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) at $Proxy349.onMessage(Unknown Source) at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:583) at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:486) at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:388) at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4659) at weblogic.jms.client.JMSSession.execute(JMSSession.java:4345) at weblogic.jms.client.JMSSession.executeMessage(JMSSession.java:3821) at weblogic.jms.client.JMSSession.access$000(JMSSession.java:115) at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:5170) at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:545) at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256) at weblogic.work.ExecuteThread.run(ExecuteThread.java:221) Caused By: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(SunCertPathBuilder.java:174) at java.security.cert.CertPathBuilder.build(CertPathBuilder.java:238) at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:318) at sun.security.validator.PKIXValidator.engineValidate(PKIXValidator.java:217) at sun.security.validator.Validator.validate(Validator.java:218) at com.sun.net.ssl.internal.ssl.X509TrustManagerImpl.validate(X509TrustManagerImpl.java:126) at com.sun.net.ssl.internal.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:209) at com.sun.net.ssl.internal.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:249) at com.sun.net.ssl.internal.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1185) at com.sun.net.ssl.internal.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:136) at com.sun.net.ssl.internal.ssl.Handshaker.processLoop(Handshaker.java:593) at com.sun.net.ssl.internal.ssl.Handshaker.process_record(Handshaker.java:529) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:925) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1170) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:785) at com.sun.net.ssl.internal.ssl.AppInputStream.read(AppInputStream.java:75) at com.sun.mail.util.TraceInputStream.read(TraceInputStream.java:110) at java.io.BufferedInputStream.fill(BufferedInputStream.java:218) at java.io.BufferedInputStream.read(BufferedInputStream.java:237) at com.sun.mail.util.LineInputStream.readLine(LineInputStream.java:88) at com.sun.mail.smtp.SMTPTransport.readServerResponse(SMTPTransport.java:1589) at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1369) at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:412) at javax.mail.Service.connect(Service.java:310) at javax.mail.Service.connect(Service.java:169) at javax.mail.Service.connect(Service.java:118) at oracle.sdpinternal.messaging.driver.email.EmailDriver.send(EmailDriver.java:780) at oracle.sdpinternal.messaging.driver.email.EmailManagedConnection.send(EmailManagedConnection.java:50) at oracle.sdpinternal.messaging.driver.DriverConnectionImpl.send(DriverConnectionImpl.java:41) at oracle.sdpinternal.messaging.dispatcher.DriverDispatcherBean.onMessage(DriverDispatcherBean.java:296) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131) at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119) at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) at $Proxy349.onMessage(Unknown Source) at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:583) at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:486) at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:388) at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4659) at weblogic.jms.client.JMSSession.execute(JMSSession.java:4345) at weblogic.jms.client.JMSSession.executeMessage(JMSSession.java:3821) at weblogic.jms.client.JMSSession.access$000(JMSSession.java:115) at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:5170) at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:545) at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256) at weblogic.work.ExecuteThread.run(ExecuteThread.java:221) >
Solution
Ensure the following:
-
Username and password provided are correct.
-
Entry for DemoTrust.jks is removed from setDomainEnv script.
-
Application server, such as Oracle WebLogic Server, has been deployed and configured correctly.
-
Certificate exchange is done.
17.7.5 Issues Related to Failed Email Delivery Not Reported Through EM
The Status Code can be DELIVERY_TO_GATEWAY_SUCCESS in Usermessagingserver Message Status in the Enterprise Manager, although the email is invalid.
Problem
Status Code is always DELIVERY_TO_GATEWAY_SUCCESS in Enterprise Manager (EM) Usermessagingserver Message Status, although the email is invalid. The status code does not update to failure even if the user does not receive any email.
Solution
Ensure that the following Incoming settings in the Driver configuration are properly configured:
-
MailAccessProtocol
-
ReceiveFolder
-
IncomingMailServer
-
IncomingMailServerPort
-
IncomingMailServerSSL
-
IncomingMailIDs
-
IncomingUserIDs
-
IncomingUserPasswords
-
ImapAuthPlainDisable
For additional information on , see Configuring Oracle User Messaging Service in the Administrator's Guide for Oracle SOA Suite and Oracle Business Process Management Suite.