1 2 Previous Next 29 Replies Latest reply on Sep 8, 2012 6:40 PM by kiransaravi

    Timeout at Fault policy

    521236
      Hi experts,

      I would like to use the Fault Policy Framework but it doesn't seem to work. Here are the logs, fault-policies.xml and fault-bindings.xml.
      The engine can find my fault action (ora-action-termination) but nothing happens. I don't get back response for 15 seconds (when I call my BPEL process) and afterwards I get this SOAP fault:
      <faultstring>Waiting for response has timed out. The conversation id is null. Please check the process instance for detail.</faultstring>
      Do you have any idea why the fault action doesn't work?
      Thank you very much!

      V.

      FINE: FaultPolicyManager.loadFiles Loading default fault policy file fault-policies.xml
      FINE: FaultPolicyManager.loadFiles Loading dfault fault binding  file fault-bindings.xml
      FINE: FaultPolicyManager.loadFiles ------->Found fault policy for composite  default/NotifyInventoryChange!1.0*soa_e3162783-6f4c-41f7-b3e4-0f9460d20174
      INFO: FaultPoliciesParser.parsePolicies ------->Begin Parsing of policy file
      FINE: FaultRecoveryManagerImpl.getServiceEngine  Check Service engine implementation.mediator:implementation.bpel
      FINE: FaultRecoveryManagerImpl.getServiceEngine  Check Service engine implementation.bpel:implementation.bpel
      FINE: RecoverFault.Log ServiceEngine=bpel:resolveToActionRef::Begin resolveToActionRef....
      FINE: RecoverFault.Log ServiceEngine=bpel:resolveToActionRef::looking for policy....ora-bpelx-remoteFault
      FINE: RecoverFault.Log ServiceEngine=bpel:resolveToActionRef:looking for action in policy....ora-bpelx-remoteFault
      FINE: FPFaultPolicy.Log ------->getActionRefForFault:Check Fault Name {http://schemas.oracle.com/bpel/extension}remoteFault with {http://schemas.oracle.com/bpel
      /extension}remoteFault
      FINE: FPFaultPolicy.Log ------->getActionsForRef:Matched to action ora-action-termination
      FINE: RecoverFault.Log ServiceEngine=bpel:resolveToActionRef:Action found ora-action-termination
      FINE: RecoverFault.Log ServiceEngine=bpel:resolveAndRecover:Action found ora-action-termination
      FINE: RecoverFault.Log ServiceEngine=bpel:recoverAndChain:Attempt recovery using Action ora-action-termination
      <Jul 14, 2012 10:33:57 AM BST> <Error> <oracle.soa.bpel.engine.delivery> <BEA-000000> <No response found for the reply for conversation id urn:EC1875C0CD9611E1B
      FFD296AAC282875>
      <Jul 14, 2012 10:33:57 AM BST> <Error> <oracle.webservices.service> <OWS-04086> <javax.xml.rpc.soap.SOAPFaultException: Waiting for response has timed out. The
      conversation id is null. Please check the process instance for detail.
              at oracle.integration.platform.blocks.soap.WebServiceEntryBindingComponent.generateSoapFaultException(WebServiceEntryBindingComponent.java:1193)
              at oracle.integration.platform.blocks.soap.WebServiceEntryBindingComponent.processIncomingMessage(WebServiceEntryBindingComponent.java:971)
              at oracle.integration.platform.blocks.soap.FabricProvider.processMessage(FabricProvider.java:113)
              at oracle.j2ee.ws.server.provider.ProviderProcessor.doEndpointProcessing(ProviderProcessor.java:1187)
      <?xml version="1.0" encoding="UTF-8"?>
      <faultPolicies xmlns="http://schemas.oracle.com/bpel/faultpolicy"
                     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
          <faultPolicy id="ora-bpelx-remoteFault" version="1.0"
                       xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
                       xmlns:xs="http://www.w3.org/2001/XMLSchema"
                       xmlns="http://schemas.oracle.com/bpel/faultpolicy"
                       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
              <Conditions>
                  <faultName xmlns:bpelx="http://schemas.oracle.com/bpel/extension"
                             name="bpelx:remoteFault">
                      <condition>
                          <action ref="ora-action-termination"/>
                      </condition>
                  </faultName>
              </Conditions>
              <Actions>
                  <Action id="ora-action-termination">
                      <abort/>
                  </Action>
                  <Action id="ora-action-human-intervention">
                      <humanIntervention/>
                  </Action>
                  <Action id="ora-action-retry">
                      <retry>
                          <retryCount>3</retryCount>
                          <retryInterval>2</retryInterval>
                          <!--exponentialBackoff/-->
                          <retryFailureAction ref="ora-action-termination"/>
                          <!--retryFailureAction ref="ora-action-termination"/-->
                      </retry>
                  </Action>
              </Actions>
          </faultPolicy>
      </faultPolicies>
      <?xml version="1.0" encoding="windows-1252" ?>
      <faultPolicyBindings version="1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://schemas.oracle.com/bpel/faultpolicy xsd/fault-bindings.xsd"
          xmlns="http://schemas.oracle.com/bpel/faultpolicy">
          
          <composite faultPolicy="ora-bpelx-remoteFault" />
          
      </faultPolicyBindings>
        • 1. Re: Timeout at Fault policy
          521236
          Does anyone have any idea?
          Thanks,
          V.
          • 2. Re: Timeout at Fault policy
            NarsingPumandla
            can you explain clearly like which process calls which one ? Also, what is the interface of the caller and the callee process ??
            • 3. Re: Timeout at Fault policy
              veejai24
              Lets change your string content liek below,

              Change your fault-policy.xml content as below.

              from
              <composite faultPolicy="ora-bpelx-remoteFault" />

              to
              <component faultPolicy="RemoteFault">

              Then in your fault-policies.xml file.

              from
              <faultPolicy id="ora-bpelx-remoteFault" version="1.0"
              to
              <faultPolicy version="3.0" id="RemoteFault"

              Then in the condition tag under Conditions, you should try calling the action "ora-retry", then see whether its been executed or not.
              In your file you are calling terminating, without calling any retry on remotefault.

              Pasting below the working example.

              fault-policies.xml

              +<?xml version='1.0' encoding='UTF-8'?>+
              +<faultPolicies xmlns="http://schemas.oracle.com/bpel/faultpolicy"+
              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
              +<faultPolicy version="3.0" id="RemoteFault"+
              xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
              xmlns:xs="http://www.w3.org/2001/XMLSchema"
              xmlns="http://schemas.oracle.com/bpel/faultpolicy"
              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
              +<Conditions>+
              +<faultName xmlns:bpelx="http://schemas.oracle.com/bpel/extension" name="bpelx:remoteFault">+
              +<condition>+
              +<action ref="ora-retry"/>+
              +</condition>+
              +</faultName>+
              +</Conditions>+
              +<Actions>+
              +<Action id="ora-retry">+
              +<retry>+
              +<retryCount>3</retryCount>+
              +<retryInterval>10</retryInterval>+
              +<!-- <exponentialBackoff/>-->+
              +<retryFailureAction ref="ora-terminate"/>+
              +</retry>+
              +</Action>+
              +<Action id="ora-terminate">+
              +<abort/>+
              +</Action>+
              +</Actions>+
              +</faultPolicy>+
              +</faultPolicies>+

              fault-binding.xml

              +<?xml version='1.0' encoding='UTF-8'?>+
              +<faultPolicyBindings version="3.0"+
              xmlns="http://schemas.oracle.com/bpel/faultpolicy"
              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
              +<!--<composite faultPolicy="RemoteFault"/> -->+
              +<component faultPolicy="RemoteFault">+
              +<name>ProvABCSImplProcess</name>+
              +</component>+
              +</faultPolicyBindings>+

              Check with above file and let me know if that helps or not ?

              Thanks,
              Vijay
              • 4. Re: Timeout at Fault policy
                521236
                Hi Narsing,
                I have a simple synchronous webservice based BPEL process which calls an external webservice with an Invoke operation. I use soapUI to mock this service by its WSDL. Trying out the fault policy framework I didn't start the mock service in soapUI so I get a remoteFault in the Invoke operation.
                I could check in the log file that the appropriate fault (ora-action-termination) action was found but nothing happened just waiting and timeout after 15-20 seconds.
                For some reason the fault action has not been executed...
                Thanks,
                V.
                • 5. Re: Timeout at Fault policy
                  NarsingPumandla
                  what is the interface of the caller process ?
                  • 6. Re: Timeout at Fault policy
                    veejai24
                    That is what you have configured for and thats happening.

                    Check in action

                    ora-action-termination

                    You should try retry rather termination.

                    Thanks,
                    Vijay
                    • 7. Re: Timeout at Fault policy
                      521236
                      Hi Narsing,
                      There are only WSDL based webservices in my environment.
                      Have you thought of this?
                      V.
                      • 8. Re: Timeout at Fault policy
                        521236
                        Hi Vijay,
                        Thanks for your help. I tried the changes which you suggested but I have got exactly the same symptoms.
                        Could I change any other log levels to have more logs related with this problem?
                        Or do you have any other idea?
                        Thanks,
                        V.
                        • 9. Re: Timeout at Fault policy
                          veejai24
                          Have you changed under conditions from

                          +<faultName xmlns:bpelx="http://schemas.oracle.com/bpel/extension"+
                          name="bpelx:remoteFault">
                          +<condition>+
                          +<action ref="ora-action-termination"/>+
                          +</condition>+
                          +</faultName>+


                          to

                          +<faultName xmlns:bpelx="http://schemas.oracle.com/bpel/extension"+
                          name="bpelx:remoteFault">
                          +<condition>+
                          +<action ref="ora-action-retry"/>+
                          +</condition>+
                          +</faultName>+
                          If not, try this and let me know the results..

                          Thanks,
                          Vijay
                          • 10. Re: Timeout at Fault policy
                            521236
                            Hi Vijay,
                            I tried the ora-action-retry as well but I got the same exception...
                            Any idea?
                            Thanks,
                            V.
                            • 11. Re: Timeout at Fault policy
                              521236
                              Hi Vijay,
                              I tried the ora-action-retry as well but I got the same exception...
                              Any idea?
                              Thanks,
                              V.
                              • 12. Re: Timeout at Fault policy
                                521236
                                Hi Vijay,
                                I tried the ora-action-retry as well but I got the same exception...
                                Any idea?
                                Thanks,
                                V.
                                • 13. Re: Timeout at Fault policy
                                  898092
                                  Hi,

                                  Did you get any solution for the same??

                                  I am also facing such kind of issue..

                                  Regrds,
                                  • 14. Re: Timeout at Fault policy
                                    521236
                                    Hi,
                                    Unfortunately I couldn't find a solution so I can't use the fault policy framework yet to handle faults.
                                    V.
                                    1 2 Previous Next