Skip to main content

Null pointer in OSB Alert in 11g Release 1 (11.1.1.7.0)

When we try to send a mail on sla it is generating null pointer error in logs,Following error log will print on the weblogic OSB console.
####<Sep 16, 2014 12:49:25 PM IST> <Error> <ALSB Alert Rule Engine> <mann-ncr-sandee> <ServiceBusSamples> <pool-2-thread-1> <<anonymous>> <> <bb95dafb3717109e:-3062fb57:1487d2dfba1:-8000-0000000000000003> <1410851965016> <BEA-394004> <Failed to invoke action email that is part of alert destination AlertDestination dbConnection/AlertDestination_SLA. Resource: BusinessService dbConnection/business-service/PROC_CONSPOLIZASTRABAJADOR_db. Alert Rule Name: My_SLA.
com.bea.wli.sb.transports.TransportException
at com.bea.wli.sb.transports.email.EmailOutboundMessageContext.send(EmailOutboundMessageContext.java:81)
at com.bea.wli.sb.transports.email.EmailTransportProvider.sendMessageAsync(EmailTransportProvider.java:152)
at sun.reflect.GeneratedMethodAccessor662.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.bea.wli.sb.transports.Util$1.invoke(Util.java:83)
at $Proxy131.sendMessageAsync(Unknown Source)
at com.bea.wli.sb.transports.TransportManagerImpl.sendMessageWithoutService(TransportManagerImpl.java:513)
at com.bea.wli.sb.transports.TransportManagerImpl.sendMessageAsync(TransportManagerImpl.java:440)
at com.bea.wli.sb.init.FrameworkStarter$TransportServiceImpl.sendMessageAsync(FrameworkStarter.java:402)
at com.bea.alsb.alert.action.email.EmailActionProvider.executeAction(EmailActionProvider.java:204)
at com.bea.alsb.alert.AlertDestinationHandlerImpl.executeProviderAction(AlertDestinationHandlerImpl.java:95)
at com.bea.alsb.alert.AlertDestinationHandlerImpl.sendAlertToDestination(AlertDestinationHandlerImpl.java:76)
at com.bea.alsb.alert.AlertDestinationHandlerImpl.sendAlertToDestination(AlertDestinationHandlerImpl.java:64)
at com.bea.alsb.alert.sla.SlaAlertManager.generateAlert(SlaAlertManager.java:149)
at com.bea.alsb.alert.sla.SlaAlertManager.access$100(SlaAlertManager.java:33)
at com.bea.alsb.alert.sla.SlaAlertManager$RuleListenerForAlertGeneration.onRuleTrue(SlaAlertManager.java:227)
at com.bea.alsb.rule.RuleEngine$ListenerInvocation.invokeListener(RuleEngine.java:76)
at com.bea.alsb.rule.RuleEngine$ListenerInvocation.access$000(RuleEngine.java:61)
at com.bea.alsb.rule.RuleEngine.addFact(RuleEngine.java:115)
at com.bea.alsb.alert.sla.SlaAlertManager.intervalCompleted(SlaAlertManager.java:202)
at com.bea.alsb.alert.sla.TaskCollector$RuleEvaluationTask.run(TaskCollector.java:177)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:139)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:909)
at java.lang.Thread.run(Thread.java:662)
Caused By: java.lang.NullPointerException
at com.bea.wli.sb.transports.email.util.EmailUtil.send(EmailUtil.java:288)
at com.bea.wli.sb.transports.email.EmailOutboundMessageContext.send(EmailOutboundMessageContext.java:69)
at com.bea.wli.sb.transports.email.EmailTransportProvider.sendMessageAsync(EmailTransportProvider.java:152)
at sun.reflect.GeneratedMethodAccessor662.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.bea.wli.sb.transports.Util$1.invoke(Util.java:83)
at $Proxy131.sendMessageAsync(Unknown Source)
at com.bea.wli.sb.transports.TransportManagerImpl.sendMessageWithoutService(TransportManagerImpl.java:512)
at com.bea.wli.sb.transports.TransportManagerImpl.sendMessageAsync(TransportManagerImpl.java:440)
at com.bea.wli.sb.init.FrameworkStarter$TransportServiceImpl.sendMessageAsync(FrameworkStarter.java:402)
at com.bea.alsb.alert.action.email.EmailActionProvider.executeAction(EmailActionProvider.java:202)
at com.bea.alsb.alert.AlertDestinationHandlerImpl.executeProviderAction(AlertDestinationHandlerImpl.java:95)
at com.bea.alsb.alert.AlertDestinationHandlerImpl.sendAlertToDestination(AlertDestinationHandlerImpl.java:76)
at com.bea.alsb.alert.AlertDestinationHandlerImpl.sendAlertToDestination(AlertDestinationHandlerImpl.java:64)
at com.bea.alsb.alert.sla.SlaAlertManager.generateAlert(SlaAlertManager.java:149)
at com.bea.alsb.alert.sla.SlaAlertManager.access$100(SlaAlertManager.java:33)
at com.bea.alsb.alert.sla.SlaAlertManager$RuleListenerForAlertGeneration.onRuleTrue(SlaAlertManager.java:227)
at com.bea.alsb.rule.RuleEngine$ListenerInvocation.invokeListener(RuleEngine.java:76)
at com.bea.alsb.rule.RuleEngine$ListenerInvocation.access$000(RuleEngine.java:61)
at com.bea.alsb.rule.RuleEngine.addFact(RuleEngine.java:115)
at com.bea.alsb.alert.sla.SlaAlertManager.intervalCompleted(SlaAlertManager.java:198)
at com.bea.alsb.alert.sla.TaskCollector$RuleEvaluationTask.run(TaskCollector.java:177)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
Solution: You are hitting bug 18073828 Apply the patch, NPE you are facing will be solved. Install patch 18073828
Patch Installation step:
# Bugs Fixed by this patch:

# -------------------------

# 18073828: NPE EXCEPTION WHEN USE ALERT SEND EMAIL WITH SSL

#

# Patch Installation Instructions:

# --------------------------------

#

# Set ORACLE_HOME env var to your OSB_HOME

#

# To apply the patch, unzip the PSE container file:

#

# % unzip 18073828.zip

#

# - Set your current directory to the directory where the patch is located:

#

# % cd 18073828

#

#

# - Ensure that the directory containing the opatch script appears in

# your $PATH; then enter the following command:

#

# % opatch apply -jdk <Path to jdk> -jre <Path to jre>

# e.g. opatch apply -jdk /usr/local/packages/jdk14 -jre /usr/local/packages/jre14

#

#

#

# Patch Special Instructions:

# ---------------------------

# - Stop the servers.

# - Delete all the contents from cache and tmp under the server folder in the domain

# - If patch is for an application deployed in stage mode, delete the patched application deployment directory from stage folder under the server folder in the domain.

# - Restart the servers after applying the patch

#

# - Make sure you have downloaded the correct and latest Standalone OPatch via BUG 5912518 from My Oracle Support (formerly Metalink).

# Please follow the instructions to install this patch. OPatch scripts should be copied under $ORACLE_HOME/OPatch.

# NOTE: This is only required the first time a one-off patch is applied or if there is new opatch version available.

#

# - If you are applying the Standalone patch for the first time, you'll be presented with the following:

# Please enter your choice to enable OPatch to create 'product.xml' file or quit creation...

#

#

# Choice Product Version

# ------ ------- -------

# 1 SA_OSB 11.1.1.7.0

#

# 2. If you wish, quit 'product.xml' creation

#

# Please enter [1-2]:

#

# Enter the value '1'

#

# - If the Oracle inventory is not setup correctly this utility will fail.

# To check accessibility to the inventory you can use the command

#

# % opatch lsinventory

#

Comments

Post a Comment

Popular posts from this blog

Oracle SOA 12C rest adapter with Custom HTTP headers

Most existing web applications are connected through web services, which are commonly known as SOAP services. More and more users are relying on mobile devices for communication, and they’re looking for lighter ways to access enterprise information on the go. REST services are the answer for the mobile device platform, because they get rapid responses and fast access to data. Oracle SOA Suite 12 c  provides a complete set of service infrastructure components for designing, deploying, and managing composite applications. Oracle SOA Suite 12 c  enables services to be created, managed, and orchestrated into composite applications and business processes. Some time we have need to send HTTP headers in REST service, In OSB we use header component and add what ever is needed but in oracle SOA 12C it's little bit different. Let see how we can do it. Create one SOA Application. Create one SOA Sample project inside SOA Application. Go to composite and drag drop REST ...

How to Change Weblogic Domain MODE to Production and Development.

Hi all,   today i experienced a little task to change the "Production mode" settings to FALSE in weblogic domain because due to production mode web service test client was not working. Setting up the mode to true was easy and straight forward but a little trick comes where for some reasons we had to rollback that change to test some issues.  If you want to know what are the differences between the two modes check this post  To configure all servers in a domain to run in production mode:  Login to Weblogic Console In the left pane of the WebLogic Console, under Domain Structure, select the domain name.  Select Configuration > General and select the Production Mode check box.  Click Save, and then, to activate these changes, in the Change Center, click Activate Changes. Start and stop any servers that are currently running. Here are the steps to configure all servers in a domain back to development mode. Weblogic server stor...

Swagger API document from Any WADL & Schema in Oracle SOA

Hi everyone, Hope everyone is doing well these days, Recently i started a project work over how to generate swagger API document for your any REST API, In case if you don't know what is swagger please go and check " https://swagger.io/tools/swagger-editor/ ". It's a great and easy to use tool which will help to create user friendly, human readable form API documentation with extension for generating API client in different languages with capability of testing your API from same. What is swagger editor, Design, describe, and document your API on the first open source editor fully dedicated to OpenAPI-based APIs. The Swagger Editor is great for quickly getting started with the OpenAPI (formerly known as the Swagger Specification) specification, with support for Swagger 2.0 and OpenAPI 3.0.  What benefits you will get by using swagger, Runs Anywhere, The Editor works in any development environment, be it locally or in the web. Smart Feedback, Validate you...