1 2 Previous Next 22 Replies Latest reply on Jul 7, 2017 1:20 PM by 3413691

    Email Sending using BPEL

    ItsSaurabh

      Hi,

       

      I have developed a simple composite to send email, however it is failing with RemoteFault.

       

      I have installed the hMailServer on my laptop and done the configuration in Enterprise Manager.

      I am even able to trigger the Test Notification using soa-infra -> Service Engines -> Human Workflow -> Notification Management.

       

      When I am testing the composite using EM, it is failing with Remote Fault.

       

      <bpelFault><faultType>0</faultType><remoteFault xmlns="http://schemas.oracle.com/bpel/extension"><part name="summary"><summary>oracle.fabric.common.FabricException: java.lang.NullPointerException</summary></part><part name="detail"><detail>null</detail></part></remoteFault></bpelFault>

       

      Please tell me how I can fix this issue.

       

      Thanks

      Saurabh

        • 1. Re: Email Sending using BPEL
          Vidya_osb

          Can you enable logging to finest and share log

          • 2. Re: Email Sending using BPEL
            ItsSaurabh

            Can you please tell me, how to do that? I am actually new to BPEL.

            • 3. Re: Email Sending using BPEL
              ItsSaurabh

              Capture.JPGHere is the log as captured from EM.

               

               

              The selected operation process could not be invoked.

              A fault occurred while invoking the webservice operation. The fault is : <env:Fault xmlns:ns0="http://schemas.oracle.com/bpel/extension" xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">

              <faultcode>ns0:remoteFault</faultcode>

              <faultstring>oracle.fabric.common.FabricException: java.lang.NullPointerException</faultstring>

              <faultactor/>

              <detail>

              <exception>null</exception>

              </detail>

              </env:Fault>

              oracle.sysman.emInternalSDK.webservices.util.SoapTestException: Client received SOAP Fault from server : oracle.fabric.common.FabricException: java.lang.NullPointerException

               

               

               

               

              java.lang.Exception: oracle.sysman.emInternalSDK.webservices.util.SoapTestException: Client received SOAP Fault from server : oracle.fabric.common.FabricException: java.lang.NullPointerException at oracle.sysman.emas.model.wsmgt.WSTestModel.invokeOperation(WSTestModel.java:1745) at oracle.sysman.emas.view.wsmgt.WSView.invokeOperation(WSView.java:565) at oracle.sysman.emas.view.wsmgt.WSView.invokeTest(WSView.java:408) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at com.sun.el.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:181) at com.sun.el.parser.AstValue.invoke(AstValue.java:289) at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:304) at org.apache.myfaces.trinidadinternal.taglib.util.MethodExpressionMethodBinding.invoke(MethodExpressionMethodBinding.java:53) at org.apache.myfaces.trinidad.component.UIXComponentBase.broadcastToMethodBinding(UIXComponentBase.java:1988) at org.apache.myfaces.trinidad.component.UIXCommand.broadcast(UIXCommand.java:183) at org.apache.myfaces.trinidad.component.UIXComponent.broadcastInContext(UIXComponent.java:364) at org.apache.myfaces.trinidad.component.WrapperEvent.broadcastWrappedEvent(WrapperEvent.java:82) at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:168) at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:510) at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:171) at org.apache.myfaces.trinidad.component.UIXComponent.broadcastInContext(UIXComponent.java:364) at org.apache.myfaces.trinidad.component.WrapperEvent.broadcastWrappedEvent(WrapperEvent.java:82) at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:111) at org.apache.myfaces.trinidad.component.UIXComponent.broadcastInContext(UIXComponent.java:364) at org.apache.myfaces.trinidad.component.WrapperEvent.broadcastWrappedEvent(WrapperEvent.java:82) at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:168) at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:510) at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:171) at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:115) at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:790) at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1282) at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._invokeApplication(LifecycleImpl.java:1243) at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executeInvokeApplication(LifecycleImpl.java:686) at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:364) at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:227) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:650) at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:286) at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:260) at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:137) at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:350) at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:25) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78) at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:207) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78) at oracle.adf.view.page.editor.webapp.WebCenterComposerFilter.doFilter(WebCenterComposerFilter.java:119) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78) at oracle.adf.share.http.ServletADFFilter.doFilter(ServletADFFilter.java:77) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78) at oracle.help.web.rich.OHWFilter.doFilter(OHWFilter.java:95) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78) at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:105) at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:529) at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60) at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:529) at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:354) at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:232) at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78) at oracle.sysman.eml.app.EMRepLoginFilter.doFilter(EMRepLoginFilter.java:729) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78) at weblogic.websocket.tyrus.TyrusServletFilter.doFilter(TyrusServletFilter.java:274) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78) at oracle.sysman.emas.fwk.MASConnectionFilter.doFilter(MASConnectionFilter.java:50) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78) at oracle.sysman.eml.app.MBeanServerConnFilter.doFilter(MBeanServerConnFilter.java:43) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78) at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:169) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78) at oracle.sysman.eml.app.ContextInitFilter.doFilter(ContextInitFilter.java:561) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78) at oracle.adfinternal.view.faces.caching.filter.AdfFacesCachingFilterImpl.doFilter(AdfFacesCachingFilterImpl.java:134) at oracle.adf.view.rich.webapp.AdfFacesCachingFilter.doFilter(AdfFacesCachingFilter.java:66) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78) at oracle.sysman.core.app.exception.EMRuntimeExceptionFilter.doFilter(EMRuntimeExceptionFilter.java:81) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78) at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:141) at java.security.AccessController.doPrivileged(Native Method) at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:315) at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:650) at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:124) at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:232) at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:94) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78) at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:248) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78) at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:32) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78) at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3683) at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3649) at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:326) at weblogic.security.service.SecurityManager.runAsForUserCode(SecurityManager.java:197) at weblogic.servlet.provider.WlsSecurityProvider.runAsForUserCode(WlsSecurityProvider.java:203) at weblogic.servlet.provider.WlsSubjectHandle.run(WlsSubjectHandle.java:71) at weblogic.servlet.internal.WebAppServletContext.doSecuredExecute(WebAppServletContext.java:2433) at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2281) at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2259) at weblogic.servlet.internal.ServletRequestImpl.runInternal(ServletRequestImpl.java:1691) at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1651) at weblogic.servlet.provider.ContainerSupportProviderImpl$WlsRequestExecutor.run(ContainerSupportProviderImpl.java:270) at weblogic.invocation.ComponentInvocationContextManager._runAs(ComponentInvocationContextManager.java:348) at weblogic.invocation.ComponentInvocationContextManager.runAs(ComponentInvocationContextManager.java:333) at weblogic.work.LivePartitionUtility.doRunWorkUnderContext(LivePartitionUtility.java:54) at weblogic.work.PartitionUtility.runWorkUnderContext(PartitionUtility.java:41) at weblogic.work.SelfTuningWorkManagerImpl.runWorkUnderContext(SelfTuningWorkManagerImpl.java:640) at weblogic.work.ExecuteThread.execute(ExecuteThread.java:406) at weblogic.work.ExecuteThread.run(ExecuteThread.java:346) Caused by: oracle.sysman.emInternalSDK.webservices.util.SoapTestException: Client received SOAP Fault from server : oracle.fabric.common.FabricException: java.lang.NullPointerException at oracle.sysman.emInternalSDK.webservices.impl.ServiceDispatchImpl.invoke(ServiceDispatchImpl.java:527) at oracle.sysman.emInternalSDK.webservices.impl.OperationInfoImpl.invokeWithDispatch(OperationInfoImpl.java:1191) at oracle.sysman.emas.model.wsmgt.PortName.invokeOperation(PortName.java:935) at oracle.sysman.emas.model.wsmgt.WSTestModel.invokeOperation(WSTestModel.java:1727) ... 103 more Caused by: oracle.j2ee.ws.client.jaxws.JRFSOAPFaultException: Client received SOAP Fault from server : oracle.fabric.common.FabricException: java.lang.NullPointerException at oracle.j2ee.ws.client.jaxws.DispatchImpl.throwJAXWSSoapFaultException(DispatchImpl.java:1833) at oracle.j2ee.ws.client.jaxws.DispatchImpl.invoke(DispatchImpl.java:1408) at oracle.j2ee.ws.client.jaxws.OracleDispatchImpl.synchronousInvocationWithRetry(OracleDispatchImpl.java:237) at oracle.j2ee.ws.client.jaxws.OracleDispatchImpl.invoke(OracleDispatchImpl.java:108) at oracle.sysman.emInternalSDK.webservices.impl.ServiceDispatchImpl.invoke(ServiceDispatchImpl.java:523) ... 106 more

              • 4. Re: Email Sending using BPEL
                Vidya_osb

                Did you set Notification Mode to ALL or Email?

                • 5. Re: Email Sending using BPEL
                  ItsSaurabh

                  I have set it to EMAIL.

                   

                  Using Test Notification, I am able to send Email Notification.

                   

                  Thanks

                  Saurabh

                  • 6. Re: Email Sending using BPEL
                    ItsSaurabh

                    Any pointers please??

                    • 7. Re: Email Sending using BPEL
                      RakeshKr

                      Can you explain what settings you have done in EM?

                       

                      Have you done it under usermessagingdriver-email(soa_server)?

                      • 8. Re: Email Sending using BPEL
                        ItsSaurabh

                        Hi Rakesh,

                         

                        Yes, I have done the configuration at two places.

                        1. User Messaging Service -> usermessagingdriver-email -> Email Driver Properties
                        2. SOA -> SOA-INFRA -> SOA Administration -> Workflow Properties

                         

                        After doing the above configuration, I was able to send the test email using the below navigation

                         

                        1. SOA -> SOA-INFRA -> Human Workflow Engine -> Notification Management -> Send Test Notifications

                         

                        But when I am trying to send the email, using EMAIL activity in a BPEL process, thats when it is failing.

                         

                        Thanks

                        Saurabh

                        • 9. Re: Email Sending using BPEL
                          RakeshKr

                          Hi Saurabh,

                           

                          Did you bounce the SOA server after email configuration?

                           

                          Can you verify from the image below to see your configuration is something similar?

                           

                          Thanks,

                           

                          Rakesh

                           

                          Mail.jpg

                           

                          There's not much in the configuration. I just tried, it works fine for me.

                           

                          Mail2.jpg

                          • 10. Re: Email Sending using BPEL
                            ItsSaurabh

                            Yes Rakesh. Configuration is very much like that...

                             

                            If there was any issue with configuration, then I would not be able to send the email using Send Test Notifications.

                             

                            I am not sure, why its failing with Remote Fault when running the composite.

                             

                            Thanks

                            Saurabh

                            • 11. Re: Email Sending using BPEL
                              RakeshKr

                              Did you bounce the soa server after the configuration?

                              • 12. Re: Email Sending using BPEL
                                ItsSaurabh

                                Hi Rakesh,

                                 

                                Yes I bounced the server also.

                                 

                                I am able to find the resolution of this issue. There is a bug in JDeveloper v 12.2.1.2. Because of this Bug, the BPEL process is not linked to Email Notification Service in the Composite.xml

                                 

                                After applying the patch mentioned in below URL, the issue got resolved.

                                Refer the below URL for more details.

                                https://support.oracle.com/epmos/faces/DocumentDisplay?_afrLoop=307670475400126&parent=SrDetailText&sourceId=3-148286318…

                                 

                                Thanks everyone for the inputs.

                                 

                                Regards,

                                Saurabh

                                • 13. Re: Email Sending using BPEL
                                  RakeshKr

                                  Hi Saurabh,

                                   

                                  Good to know about the bug. I will keep that for my reference.

                                   

                                  Glad you got sorted.

                                   

                                  Thanks,

                                   

                                  Rakesh

                                  • 14. Re: Email Sending using BPEL
                                    Martien van den Akker

                                    Indeed good point. I put this on my blog for further reference.

                                     

                                    Thanks!

                                     

                                    Regards,
                                    Martien

                                    1 2 Previous Next