BPEL - Throw Fault Question

Hi All,
We defined a fault on our service that we want returned to the calling service. The fault is thrown inside of the BPEL process and returned through a mediator to the calling service.
My question is regarding the payload. Will all of the faults returned be encapsulated in <bpelFault>? The fault we defined is <testCommonFault> but it appears to always be encapsulated within the bpelFault?
<?xml version="1.0" encoding="utf-8"?>
<bpelFault>
  <faultType>1</faultType>
  <fault xmlns="http:/mytest.com/services/test/xsd/TestService">
    <part name="fault">
      <testCommonFault xmlns="http://mytest.com/services/test/xsd/commonFault/2011/02">
        <faultCode>InvalidEmplid</faultCode>
        <faultSubCode/>
        <faultMessage>Invalid Emplid</faultMessage>
        <faultDetailMessage>Invalid Emplid Was Passed</faultDetailMessage>
        <retryDefinitions/>
      </testCommonFault>
    </part>
  </fault>
</bpelFault>Edited by: Scarpacci on Jan 26, 2012 6:16 AM

So will the fault that I throw always be encapsulated? Or can I configure it so that my testCommonFault is the root element?
Thanks Naresh!
--S                                                                                                                                                                                                                                                                                                           

Similar Messages

  • Invoking a PL/SQL function from BPEL throws fault.

    Hi, I'm trying to invoke a PL/SQL function that inserts data in to a table from a BPEL via DB Adapter. The process, when I test it, throws a runtime fault as follows:
    *Exception occured when binding was invoked. Exception occured during invocation of JCA binding: "JCA Binding execute of Reference operation 'EmpRegister' failed due to: JCA Binding Component connection issue. JCA Binding Component is unable to create an outbound JCA (CCI) connection. AddEmployee:EmpRegister [ EmpRegister_ptt::EmpRegister(InputParameters,OutputParameters) ] : The JCA Binding Component was unable to establish an outbound JCA CCI connection due to the following issue: BINDING.JCA-12510 JCA Resource Adapter location error. Unable to locate the JCA Resource Adapter via .jca binding file element <connection-factory/> The JCA Binding Component is unable to startup the Resource Adapter specified in the <connection-factory/> element: location='eis/DB/DBConn_215'. The reason for this is most likely that either 1) the Resource Adapters RAR file has not been deployed successfully to the WebLogic Application server or 2) the '<jndi-name>' element in weblogic-ra.xml has not been set to eis/DB/DBConn_215. In the last case you will have to add a new WebLogic JCA connection factory (deploy a RAR). Please correct this and then restart the Application Server ". The invoked JCA adapter raised a resource exception. Please examine the above error message carefully to determine a resolution.*
    Also, the fault description was a s follows:
    *JCA Resource Adapter location error. Unable to locate the JCA Resource Adapter via .jca binding file element <connection-factory/> The JCA Binding Component is unable to startup the Resource Adapter specified in the <connection-factory/> element: location='eis/DB/DBConn_215'. The reason for this is most likely that either 1) the Resource Adapters RAR file has not been deployed successfully to the WebLogic Application server or 2) the '<jndi-name>' element in weblogic-ra.xml has not been set to eis/DB/DBConn_215. In the last case you will have to add a new WebLogic JCA connection factory (deploy a RAR). Please correct this and then restart the Application Server.*
    I know, it looks like a JCA adapter error, but when I do a DB to DB table synchronization with this connection factory, no problems happen. Is ther any special procedure I should follow in mapping input data to db schema?

    HI,
    I am working on BPEL process and human workflow...
    I created a process and a Data control and now can see it as JCA Adapter in console..in this adapter I am executing a sql procedure.. we can execute in in BPEL process through invoke activity, now my requirement is how to invoke this data control through custom java code. please help...\
    now i have two wsdl files.
    RegistrationUpload.wsdl(process name)
    <?xml version="1.0" encoding="UTF-8"?>
    <wsdl:definitions name="RegistrationUpload"
    targetNamespace="http://xmlns.oracle.com/RegistrationUpload_jws/RegistrationUpload/RegistrationUpload"
    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
    xmlns:client="http://xmlns.oracle.com/RegistrationUpload_jws/RegistrationUpload/RegistrationUpload"
    xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/">
         <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         TYPE DEFINITION - List of services participating in this BPEL process
         The default output of the BPEL designer uses strings as input and
         output to the BPEL Process. But you can define or import any XML
         Schema type and use them as part of the message types.
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
         <wsdl:types>
              <schema xmlns="http://www.w3.org/2001/XMLSchema">
                   <import namespace="http://xmlns.oracle.com/RegistrationUpload_jws/RegistrationUpload/RegistrationUpload" schemaLocation="xsd/RegistrationUpload.xsd" />
              </schema>
         </wsdl:types>
         <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         MESSAGE TYPE DEFINITION - Definition of the message types used as
         part of the port type defintions
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
         <wsdl:message name="RegistrationUploadRequestMessage">
              <wsdl:part name="payload" element="client:process"/>
         </wsdl:message>
         <wsdl:message name="RegistrationUploadResponseMessage">
              <wsdl:part name="payload" element="client:processResponse"/>
         </wsdl:message>
         <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         PORT TYPE DEFINITION - A port type groups a set of operations into
         a logical service unit.
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
         <!-- portType implemented by the RegistrationUpload BPEL process -->
         <wsdl:portType name="RegistrationUpload">
              <wsdl:operation name="process">
                   <wsdl:input message="client:RegistrationUploadRequestMessage"/>
              </wsdl:operation>
         </wsdl:portType>
         <!-- portType implemented by the requester of RegistrationUpload BPEL process
         for asynchronous callback purposes
         -->
         <wsdl:portType name="RegistrationUploadCallback">
              <wsdl:operation name="processResponse">
                   <wsdl:input message="client:RegistrationUploadResponseMessage"/>
              </wsdl:operation>
         </wsdl:portType>
         <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         PARTNER LINK TYPE DEFINITION
         the RegistrationUpload partnerLinkType binds the provider and
         requester portType into an asynchronous conversation.
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
         <plnk:partnerLinkType name="RegistrationUpload">
              <plnk:role name="RegistrationUploadProvider">
                   <plnk:portType name="client:RegistrationUpload"/>
              </plnk:role>
              <plnk:role name="RegistrationUploadRequester">
                   <plnk:portType name="client:RegistrationUploadCallback"/>
              </plnk:role>
         </plnk:partnerLinkType>
    </wsdl:definitions>
    uploadDataToPermananentDB.wsdl
    <?binding.jca uploadDataToPermananentDB_db.jca?>
    <wsdl:definitions name="uploadDataToPermananentDB"
    targetNamespace="http://xmlns.oracle.com/pcbpel/adapter/db/RegistrationUpload/RegistrationUpload/uploadDataToPermananentDB"
    xmlns:db="http://xmlns.oracle.com/pcbpel/adapter/db/DAMSMGR/TEMP_TO_PERMANENTDB/"
    xmlns:tns="http://xmlns.oracle.com/pcbpel/adapter/db/RegistrationUpload/RegistrationUpload/uploadDataToPermananentDB"
    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
    xmlns:plt="http://schemas.xmlsoap.org/ws/2003/05/partner-link/">
    <plt:partnerLinkType name="uploadDataToPermananentDB_plt">
    <plt:role name="uploadDataToPermananentDB_role">
    <plt:portType name="tns:uploadDataToPermananentDB_ptt"/>
    </plt:role>
    </plt:partnerLinkType>
    <wsdl:types>
    <schema xmlns="http://www.w3.org/2001/XMLSchema">
    <import namespace="http://xmlns.oracle.com/pcbpel/adapter/db/DAMSMGR/TEMP_TO_PERMANENTDB/"
    schemaLocation="xsd/DAMSMGR_TEMP_TO_PERMANENTDB.xsd"/>
    </schema>
    </wsdl:types>
    <wsdl:message name="args_in_msg">
    <wsdl:part name="InputParameters" element="db:InputParameters"/>
    </wsdl:message>
    <wsdl:portType name="uploadDataToPermananentDB_ptt">
    <wsdl:operation name="uploadDataToPermananentDB">
    <wsdl:input message="tns:args_in_msg"/>
    </wsdl:operation>
    </wsdl:portType>
    </wsdl:definitions>
    please help me how to call the data adaper from my java code..
    hope i will get some hint in this forum...
    Edited by: user13370040 on Mar 22, 2011 5:55 AM

  • BPEL 11g fault policy action java class not sending email

    Hi All,
    I am trying to attach fault policy to my bpel process. The fault conditions are working fine but the email part from the action class is not able to send email. The code execute properly , i can't see any error message in the log but I cant access the email in my inbox.
    I am able to send email from using email bpel activity and also test work flow notification from em console.
    I have used both the java options for sending email like javax.mail and oracle.sdp.messaging .
    JAVA CODE FOR EMAIL javax.mail
    public String handleFault(IFaultRecoveryContext iFaultRecoveryContext){
    //Print Fault Meta Data to Console
    System.out.println("****************Fault Metadata********************************");
    System.out.println("Fault policy id: " + iFaultRecoveryContext.getPolicyId());
    System.out.println("Fault type: " + iFaultRecoveryContext.getType());
    System.out.println("Partnerlink: " + iFaultRecoveryContext.getReferenceName());
    System.out.println("Port type: " + iFaultRecoveryContext.getPortType());
    System.out.println("**************************************************************");
    //print all properties defined in the fault-policy file
    System.out.println("Properties Set for the Fault");
    //Print Fault Details to Console if it exists
    System.out.println("****************Fault Details********************************");
    // if(iFaultRecoveryContext instanceof BPELFaultRecoveryContextImpl)
    BPELFaultRecoveryContextImpl bpelCtx = (BPELFaultRecoveryContextImpl)iFaultRecoveryContext;
    System.out.println("Fault: " + bpelCtx.getFault());
    System.out.println("Activity: " + bpelCtx.getActivityName());
    System.out.println("Composite Instance: " + bpelCtx.getCompositeInstanceId());
    System.out.println("Composite Name: " + bpelCtx.getCompositeName());
    System.out.println("***********************************************************");
    try {
    bpelCtx.addAuditTrailEntry("Sending Email...");
    Map props = iFaultRecoveryContext.getProperties();
    if (props != null && props.size() > 0) {
    setFrom(getParameterValue((ArrayList)props.get("from")));
    setTo(getParameterValue((ArrayList)props.get("to")));
    setSubject(getParameterValue((ArrayList)props.get("subject")) + bpelCtx.getTitle());
    setText(getParameterValue((ArrayList)props.get("text")) + "\n" + "BPEL Process Instance: " + bpelCtx.getInstanceId() + " needs intervention to recover from a technical exception: " + bpelCtx.getFault().getMessage() + ".\n" + "Check the Activities tab in the BPEL Management Console in order to resolve the error as soon as possible.\n" + "This message was automatically generated, please do not reply to it.");
    setHost(getParameterValue((ArrayList)props.get("host")));
    setPort(getParameterValue((ArrayList)props.get("port")));
    bpelCtx.addAuditTrailEntry("to Email getFrom..."+getFrom());
    bpelCtx.addAuditTrailEntry("to Email getTo..."+getTo());
    bpelCtx.addAuditTrailEntry("to Email getText..."+getText());
    bpelCtx.addAuditTrailEntry("to Email getHost..."+getHost());
    bpelCtx.addAuditTrailEntry("to Email getPort..."+getPort());
    Session mailSession = Session.getDefaultInstance(properties);
    Message simpleMessage = new MimeMessage(mailSession);
    bpelCtx.addAuditTrailEntry("to Email toAddresses2...");
    InternetAddress fromAddress = new InternetAddress(from);
    bpelCtx.addAuditTrailEntry("to Email fromAddress..."+fromAddress);
    simpleMessage.setFrom(fromAddress);
    String[] toAddresses = to.split(";");
    if (toAddresses != null && toAddresses.length > 0)
    bpelCtx.addAuditTrailEntry("to Email toAddresses3...");
    InternetAddress[] toInternetAddresses =new InternetAddress[toAddresses.length];
    for (int i = 0; i < toAddresses.length; i++)
    bpelCtx.addAuditTrailEntry("to Email toAddresses4444..."+ toAddresses);
    toInternetAddresses[i] = new InternetAddress(toAddresses[i]);
    bpelCtx.addAuditTrailEntry("to Email toInternetAddresses..."+ toInternetAddresses[i]);
    simpleMessage.setRecipients(RecipientType.TO,toInternetAddresses);
    simpleMessage.setSubject(subject);
    simpleMessage.setText(text);
    Transport.send(simpleMessage);
    bpelCtx.addAuditTrailEntry("After Email...");
    } catch (Exception e) {
    bpelCtx.addAuditTrailEntry("fault Message:" + e.getMessage());
    //Custom Code to Log Fault to File/DB/JMS or send Emails etc.
    return "Manual";
    private String getParameterValue(ArrayList parameterList) {
    String value = null;
    if (parameterList != null && parameterList.size() > 0)
    value = (String)parameterList.get(0);
    return value;
    JAVA CODE FOR EMAIL oracle.sdp.messaging 
    private void sendMail(IFaultRecoveryContext iFaultRecoveryContext) {
    BPELFaultRecoveryContextImpl bpelCtx = (BPELFaultRecoveryContextImpl)iFaultRecoveryContext;
    bpelCtx.addAuditTrailEntry("In sendMail...");
    Map<String, Object> params = new HashMap<String, Object>();
    // params.put(key, value); // if optional parameters need to be specified.
    MessagingClient messagingClient;
    try {
    bpelCtx.addAuditTrailEntry("In sendMail111...");
    messagingClient =
    MessagingClientFactory.createMessagingClient(params);
    Message newMessage = MessagingFactory.createMessage();
    // newMessage.setContent(createEventPayload(iFaultRecoveryContext),"text/plain");
    newMessage.setContent("Component Name :"+bpelCtx.getComponentName()+ "\n Instacne Id :"+bpelCtx.getComponentInstanceId()+
    "\n Composite Instance Id :"+bpelCtx.getCompositeInstanceId()+ "\n Composite Name :" bpelCtx.getCompositeName()
    "\n Activity name :"+bpelCtx.getActivityName() + "\n Activity Id :" bpelCtx.getActivityId() "\n ECID :" bpelCtx.getECID()
    "\n Reference Name :"+bpelCtx.getReferenceName()+ "\n Title :" bpelCtx.getTitle()
    "\n Fault :" + bpelCtx.getFault()+ "\n Port Name :"+bpelCtx.getPortType(), "text/plain");
    bpelCtx.addAuditTrailEntry("In sendMail222...");
    Address sender = MessagingFactory.createAddress(getFrom());
    bpelCtx.addAuditTrailEntry("In sendMail sender..."+sender.toString());
    bpelCtx.addAuditTrailEntry("from Email..."+getFrom());
    String recipientsStr[] = to.split(";");
    bpelCtx.addAuditTrailEntry("to Email..."+getTo());
    bpelCtx.addAuditTrailEntry("In sendMail333...");
    Address[] recipients = MessagingFactory.createAddress(recipientsStr);
    bpelCtx.addAuditTrailEntry("In sendMail444...");
    newMessage.addSender(sender);
    messagingClient.registerAccessPoint(MessagingFactory.createAccessPoint(sender));
    newMessage.addAllRecipients(recipients);
    bpelCtx.addAuditTrailEntry("In sendMail5555...");
    newMessage.getMessageInfo().setSession(MessageSessionType.INBOUND_SESSION);
    newMessage.setSubject(getSubject());
    bpelCtx.addAuditTrailEntry("Subject..."+getSubject());
    String messageId = "";
    bpelCtx.addAuditTrailEntry("In sendMail666...");
    synchronized (this) {
    bpelCtx.addAuditTrailEntry("In sendMail777...");
    messageId = messagingClient.send(newMessage);
    bpelCtx.addAuditTrailEntry("In sendMail888...");
    Status[] statuses = messagingClient.getStatus(messageId);
    bpelCtx.addAuditTrailEntry("In sendMail999...");
    } catch (MessagingException e) {
    bpelCtx.addAuditTrailEntry("inside exception email fault Message:" + e.getMessage());
    //e.printStackTrace();
    MESSAGES FROM SOA SERVER OUT LOG after test the bpel process:
    ===========================================
    ****************Fault?Metadata********************************
    Fault?policy?id:?SimpleFaultPolicy
    Fault?type:?bpel
    Partnerlink:?Service1
    Port?type:?{http://kacst.edu.sa/process/nstip/coPINotifyProcess}kacst_process_nstipCoPIMotifyProcess
    Properties?Set?for?the?Fault
    ****************Fault?Details********************************
    Fault:?com.oracle.bpel.client.BPELFault: faultName: {{http://schemas.oracle.com/bpel/extension}remoteFault}
    messageType: {{http://schemas.oracle.com/bpel/extension}RuntimeFaultMessage}
    parts: {{
    summary=<summary>Message Router for nstip/nstip_Pro_CoPiNotificationProcess!1.0*soa_084da522-a825-4aa6-9d1c-ca1d50b4595b is not able to process messages. The composite state is set to "off". The composite can be turned "on" by using the administrative consoles.</summary>
    ,detail=<detail>&lt;exception>Message Router for nstip/nstip_Pro_CoPiNotificationProcess!1.0*soa_084da522-a825-4aa6-9d1c-ca1d50b4595b is not able to process messages. The composite state is set to "off". The composite can be turned "on" by using the administrative consoles.&lt;/exception>
    </detail>
    ,code=<code>env:Server</code>}
    Activity:?Invoke1
    Composite?Instance:?740332
    Composite?Name:?TestBPELFaultPolicy
    DEBUG: getProvider() returning javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc]
    DEBUG SMTP: useEhlo true, useAuth false
    DEBUG SMTP: trying to connect to host "localhost", port 25, isSSL false
    220 taisirsit.kacst.edu.sa ESMTP Sendmail 8.14.4+Sun/8.14.4; Fri, 12 Oct 2012 13:00:45 +0300 (AST)
    DEBUG SMTP: connected to host "localhost", port: 25
    EHLO taisirsit.kacst.edu.sa
    250-taisirsit.kacst.edu.sa Hello localhost [127.0.0.1], pleased to meet you
    250-ENHANCEDSTATUSCODES
    250-PIPELINING
    250-EXPN
    250-VERB
    250-8BITMIME
    250-SIZE
    250-DSN
    250-ETRN
    250-DELIVERBY
    250 HELP
    DEBUG SMTP: Found extension "ENHANCEDSTATUSCODES", arg ""
    DEBUG SMTP: Found extension "PIPELINING", arg ""
    DEBUG SMTP: Found extension "EXPN", arg ""
    DEBUG SMTP: Found extension "VERB", arg ""
    DEBUG SMTP: Found extension "8BITMIME", arg ""
    DEBUG SMTP: Found extension "SIZE", arg ""
    DEBUG SMTP: Found extension "DSN", arg ""
    DEBUG SMTP: Found extension "ETRN", arg ""
    DEBUG SMTP: Found extension "DELIVERBY", arg ""
    DEBUG SMTP: Found extension "HELP", arg ""
    DEBUG SMTP: use8bit false
    MAIL FROM:<[email protected]>
    250 2.1.0 <[email protected]>... Sender ok
    RCPT TO:<[email protected]>
    250 2.1.5 <[email protected]>... Recipient ok
    DEBUG SMTP: Verified Addresses
    DEBUG SMTP: [email protected]
    DATA
    354 Enter mail, end with "." on a line by itself
    From: [email protected]
    To: [email protected]
    Message-ID: <[email protected].sa>
    Subject: SOA EXCEPTIONInstance #890381 of BPELProcess1
    MIME-Version: 1.0
    Content-Type: text/plain; charset=us-ascii
    Content-Transfer-Encoding: 7bit
    Testing Email From Fault
    BPEL Process Instance: 890381 needs intervention to recover from a technical exception: faultName: {{http://schemas.oracle.com/bpel/extension}remoteFault}
    messageType: {{http://schemas.oracle.com/bpel/extension}RuntimeFaultMessage}
    parts: {{
    summary=<summary>Message Router for nstip/nstip_Pro_CoPiNotificationProcess!1.0*soa_084da522-a825-4aa6-9d1c-ca1d50b4595b is not able to process messages. The composite state is set to "off". The composite can be turned "on" by using the administrative consoles.</summary>
    ,detail=<detail>&lt;exception>Message Router for nstip/nstip_Pro_CoPiNotificationProcess!1.0*soa_084da522-a825-4aa6-9d1c-ca1d50b4595b is not able to process messages. The composite state is set to "off". The composite can be turned "on" by using the administrative consoles.&lt;/exception>
    </detail>
    ,code=<code>env:Server</code>}
    Check the Activities tab in the BPEL Management Console in order to resolve the error as soon as possible.
    This message was automatically generated, please do not reply to it.
    250 2.0.0 q9CA0j30012424 Message accepted for delivery
    QUIT
    221 2.0.0 taisirsit.kacst.edu.sa closing connection
    Details from Instance of BPEL PROCESS :
    Started invocation of operation "process" on partner "Service1".
    Oct 12, 2012 10:00:45 AM [FAULT RECOVERY] Invoked handleBPELFault on custom java action class "com.kacst.fault.CustomFaultHandler".
    Oct 12, 2012 10:00:45 AM Sending Email...
    Oct 12, 2012 10:00:45 AM to Email [email protected]
    Oct 12, 2012 10:00:45 AM to Email [email protected]
    Oct 12, 2012 10:00:45 AM to Email getText...Testing Email From Fault BPEL Process Instance: 890381 needs intervention to recover from a technical exception: faultName: {{http://schemas.oracle.com/bpel/extension}remoteFault} messageType: {{http://schemas.oracle.com/bpel/extension}RuntimeFaultMessage} parts: {{ summary=<summary>Message Router for nstip/nstip_Pro_CoPiNotificationProcess!1.0*soa_084da522-a825-4aa6-9d1c-ca1d50b4595b is not able to process messages. The composite state is set to "off". The composite can be turned "on" by using the administrative consoles.</summary> ,detail=<detail>&lt;exception>Message Router for nstip/nstip_Pro_CoPiNotificationProcess!1.0*soa_084da522-a825-4aa6-9d1c-ca1d50b4595b is not able to process messages. The composite state is set to "off". The composite can be turned "on" by using the administrative consoles.&lt;/exception> </detail> ,code=<code>env:Server</code>} . Check the Activities tab in the BPEL Management Console in order to resolve the error as soon as possible. This message was automatically generated, please do not reply to it.
    Oct 12, 2012 10:00:45 AM to Email getHost...smtp.kacst.edu.sa
    Oct 12, 2012 10:00:45 AM to Email getPort...25
    Oct 12, 2012 10:00:45 AM to Email toAddresses2...
    Oct 12, 2012 10:00:45 AM to Email [email protected]
    Oct 12, 2012 10:00:45 AM to Email toAddresses3...
    Oct 12, 2012 10:00:45 AM to Email [email protected]
    Oct 12, 2012 10:00:45 AM to Email [email protected]
    Oct 12, 2012 10:00:45 AM After Email...
    Oct 12, 2012 10:00:45 AM [FAULT RECOVERY] Marked Invoke activity as "pending manual recovery".
    Oct 12, 2012 10:00:45 AM Faulted while invoking operation "process" on provider "Service1".
    Please suggest.
    Thanks

    Hi,
    I got the solution. our email server is sending email to the mail accounts those are in the same domain but for different domains its not able to send the email.
    you can try with the email those are created on the same email server.
    Thanks
    Tuku

  • Throwing fault message WebProxy generated over webservices

    I have a requirement to throw fault message when ever there is any exception caught in webservice. I have written a xsd for Fault Type and using the same in all webservices. But the problem is when generating webProxy it is generating multiple Fault Message java class for each webservice.
    Constraint I want to apply is .. When generating WebProxy for these webservices, it should generate single fault message class for the Fault type.
    How to achieve this?
    Sample webservice that I have created -
    <?xml version="1.0" encoding="UTF-8" ?>
    - <wsdl:definitions name="UserRegistrationService" targetNamespace="http://xmlns.oracle.com/UserRegistrationApp/UserRegistrationService/UserRegistrationService" xmlns:tns="http://xmlns.oracle.com/UserRegistrationApp/UserRegistrationService/UserRegistrationService" xmlns:inp1="http://portal.nv.gov/EnterpriseObjects/CBO/PortalAccount" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:flt1="http://portal.nv.gov/EnterpriseObjects/Common" xmlns:out1="http://portal.nv.gov/EnterpriseObjects/CBO/PortalAccount">
    - <wsdl:documentation>
    <abstractWSDL>http://IN-BLR-SOADEVL.corp.capgemini.com:8001/soa-infra/services/default/UserRegistrationService!2.3/UserRegistrationService.wsdl</abstractWSDL>
    </wsdl:documentation>
    - <wsdl:types>
    - <schema xmlns="http://www.w3.org/2001/XMLSchema">
    <import namespace="http://portal.nv.gov/EnterpriseObjects/CBO/PortalAccount" schemaLocation="http://10.74.100.28:7001/CoreObjectsLibrary/Schema/v1.0/CBM/PortalAccountCBM.xsd" />
    </schema>
    - <schema xmlns="http://www.w3.org/2001/XMLSchema">
    <import namespace="http://portal.nv.gov/EnterpriseObjects/Common" schemaLocation="http://10.74.100.28:7001/CoreObjectsLibrary/Schema/v1.0/Primitives/FaultType.xsd" />
    </schema>
    </wsdl:types>
    + <wsdl:message name="UserRegistrationServiceRequestMessage">
    <wsdl:part name="request" element="inp1:SyncPortalAccountCBM" />
    </wsdl:message>
    - <wsdl:message name="UserRegistrationServiceResponseMessage">
    <wsdl:part name="reply" element="inp1:SyncPortalAccountResponseCBM" />
    </wsdl:message>
    - <wsdl:message name="faultMessage">
    <wsdl:part name="fault" element="flt1:Fault" />
    </wsdl:message>
    - <wsdl:message name="validateUserNameAccountRequestMessage">
    <wsdl:part name="request" element="inp1:ValidatePortalAccountUsernameCBM" />
    </wsdl:message>
    - <wsdl:message name="validateUserNameAccountResponseMessage">
    <wsdl:part name="reply" element="inp1:ValidatePortalAccountUsernameResponseCBM" />
    </wsdl:message>
    - <wsdl:message name="validateEmailIdAccountRequestMessage">
    <wsdl:part name="request" element="inp1:ValidatePortalAccountEmailIdCBM" />
    </wsdl:message>
    - <wsdl:message name="validateEmailIdAccountResponseMessage">
    <wsdl:part name="reply" element="inp1:ValidatePortalAccountEmailIdResponseCBM" />
    </wsdl:message>
    - <wsdl:message name="activatePortalAccountRequestMessage">
    <wsdl:part name="request" element="inp1:ActivatePortalAccountCBM" />
    </wsdl:message>
    - <wsdl:message name="activatePortalAccountResponseMessage">
    <wsdl:part name="reply" element="inp1:ActivatePortalAccountResponseCBM" />
    </wsdl:message>
    - <wsdl:message name="requestMessage">
    <wsdl:part name="request" element="inp1:AssociateExistingBusinessRequsetCBM" />
    </wsdl:message>
    - <wsdl:message name="replyMessage">
    <wsdl:part name="reply" element="inp1:AssociateExistingBusinessResponseCBM" />
    </wsdl:message>
    - <wsdl:portType name="UserRegistrationService">
    - <wsdl:operation name="createPortalAccount">
    <wsdl:documentation>This operation is used to create a Portal Account.</wsdl:documentation>
    <wsdl:input message="tns:UserRegistrationServiceRequestMessage" />
    <wsdl:output message="tns:UserRegistrationServiceResponseMessage" />
    <wsdl:fault name="PortalAccountFault" message="tns:faultMessage" />
    </wsdl:operation>
    - <wsdl:operation name="editPortalAccount">
    <wsdl:documentation>THis operation is used to update or edit a user portal account.</wsdl:documentation>
    <wsdl:input message="tns:UserRegistrationServiceRequestMessage" />
    <wsdl:output message="tns:UserRegistrationServiceResponseMessage" />
    <wsdl:fault name="PortalAccountfault" message="tns:faultMessage" />
    </wsdl:operation>
    - <wsdl:operation name="validateUserName">
    <wsdl:documentation>This operation is used to validate whether a username is unique or not.</wsdl:documentation>
    <wsdl:input message="tns:validateUserNameAccountRequestMessage" />
    <wsdl:output message="tns:validateUserNameAccountResponseMessage" />
    <wsdl:fault name="PortalAccountfault" message="tns:faultMessage" />
    </wsdl:operation>
    - <wsdl:operation name="validateEmailId">
    <wsdl:documentation>This operation is used to validate whether a emailid is unique or not.</wsdl:documentation>
    <wsdl:input message="tns:validateEmailIdAccountRequestMessage" />
    <wsdl:output message="tns:validateEmailIdAccountResponseMessage" />
    <wsdl:fault name="PortalAccountfault" message="tns:faultMessage" />
    </wsdl:operation>
    - <wsdl:operation name="activateUserProfile">
    <wsdl:documentation>This operation is used to activate a user account in Portaldatabase.</wsdl:documentation>
    <wsdl:input message="tns:activatePortalAccountRequestMessage" />
    <wsdl:output message="tns:activatePortalAccountResponseMessage" />
    <wsdl:fault name="PortalAccountfault" message="tns:faultMessage" />
    </wsdl:operation>
    - <wsdl:operation name="Authenticate">
    <wsdl:documentation>This operation is used to authenticate and create account in TAX, UCM and eSoS.</wsdl:documentation>
    <wsdl:input message="tns:requestMessage" />
    <wsdl:output message="tns:replyMessage" />
    <wsdl:fault name="Authenticatefault" message="tns:faultMessage" />
    </wsdl:operation>
    - <wsdl:operation name="forgotUserName">
    <wsdl:documentation>This operation is used to send username to a registered Email-Id.</wsdl:documentation>
    <wsdl:input message="tns:UserRegistrationServiceRequestMessage" />
    <wsdl:output message="tns:UserRegistrationServiceResponseMessage" />
    <wsdl:fault name="fault" message="tns:faultMessage" />
    </wsdl:operation>
    - <wsdl:operation name="changePassword">
    <wsdl:documentation>This operation is used to change password on OIM..</wsdl:documentation>
    <wsdl:input message="tns:UserRegistrationServiceRequestMessage" />
    <wsdl:output message="tns:UserRegistrationServiceResponseMessage" />
    <wsdl:fault name="fault" message="tns:faultMessage" />
    </wsdl:operation>
    </wsdl:portType>
    - <wsdl:binding name="UserRegistrationServiceBinding" type="tns:UserRegistrationService">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
    - <wsdl:operation name="createPortalAccount">
    <soap:operation style="document" soapAction="createPortalAccount" />
    - <wsdl:input>
    <soap:body use="literal" namespace="http://xmlns.oracle.com/UserRegistrationApp/UserRegistrationService/UserRegistrationService" />
    </wsdl:input>
    - <wsdl:output>
    <soap:body use="literal" namespace="http://xmlns.oracle.com/UserRegistrationApp/UserRegistrationService/UserRegistrationService" />
    </wsdl:output>
    - <wsdl:fault name="PortalAccountFault">
    <soap:fault name="PortalAccountFault" use="literal" encodingStyle="" />
    </wsdl:fault>
    </wsdl:operation>
    - <wsdl:operation name="editPortalAccount">
    <soap:operation style="document" soapAction="editPortalAccount" />
    - <wsdl:input>
    <soap:body use="literal" namespace="http://xmlns.oracle.com/UserRegistrationApp/UserRegistrationService/UserRegistrationService" />
    </wsdl:input>
    - <wsdl:output>
    <soap:body use="literal" namespace="http://xmlns.oracle.com/UserRegistrationApp/UserRegistrationService/UserRegistrationService" />
    </wsdl:output>
    - <wsdl:fault name="PortalAccountfault">
    <soap:fault name="PortalAccountfault" use="literal" encodingStyle="" />
    </wsdl:fault>
    </wsdl:operation>
    - <wsdl:operation name="validateUserName">
    <soap:operation style="document" soapAction="validateUserName" />
    - <wsdl:input>
    <soap:body use="literal" namespace="http://xmlns.oracle.com/UserRegistrationApp/UserRegistrationService/UserRegistrationService" />
    </wsdl:input>
    - <wsdl:output>
    <soap:body use="literal" namespace="http://xmlns.oracle.com/UserRegistrationApp/UserRegistrationService/UserRegistrationService" />
    </wsdl:output>
    - <wsdl:fault name="PortalAccountfault">
    <soap:fault name="PortalAccountfault" use="literal" encodingStyle="" />
    </wsdl:fault>
    </wsdl:operation>
    - <wsdl:operation name="validateEmailId">
    <soap:operation style="document" soapAction="validateEmailId" />
    - <wsdl:input>
    <soap:body use="literal" namespace="http://xmlns.oracle.com/UserRegistrationApp/UserRegistrationService/UserRegistrationService" />
    </wsdl:input>
    - <wsdl:output>
    <soap:body use="literal" namespace="http://xmlns.oracle.com/UserRegistrationApp/UserRegistrationService/UserRegistrationService" />
    </wsdl:output>
    - <wsdl:fault name="PortalAccountfault">
    <soap:fault name="PortalAccountfault" use="literal" encodingStyle="" />
    </wsdl:fault>
    </wsdl:operation>
    - <wsdl:operation name="activateUserProfile">
    <soap:operation style="document" soapAction="activateUserProfile" />
    - <wsdl:input>
    <soap:body use="literal" namespace="http://xmlns.oracle.com/UserRegistrationApp/UserRegistrationService/UserRegistrationService" />
    </wsdl:input>
    - <wsdl:output>
    <soap:body use="literal" namespace="http://xmlns.oracle.com/UserRegistrationApp/UserRegistrationService/UserRegistrationService" />
    </wsdl:output>
    - <wsdl:fault name="PortalAccountfault">
    <soap:fault name="PortalAccountfault" use="literal" encodingStyle="" />
    </wsdl:fault>
    </wsdl:operation>
    - <wsdl:operation name="Authenticate">
    <soap:operation style="document" soapAction="Authenticate" />
    - <wsdl:input>
    <soap:body use="literal" namespace="http://xmlns.oracle.com/UserRegistrationApp/UserRegistrationService/UserRegistrationService" />
    </wsdl:input>
    - <wsdl:output>
    <soap:body use="literal" namespace="http://xmlns.oracle.com/UserRegistrationApp/UserRegistrationService/UserRegistrationService" />
    </wsdl:output>
    - <wsdl:fault name="Authenticatefault">
    <soap:fault name="Authenticatefault" use="literal" encodingStyle="" />
    </wsdl:fault>
    </wsdl:operation>
    - <wsdl:operation name="forgotUserName">
    <soap:operation style="document" soapAction="forgotUserName" />
    - <wsdl:input>
    <soap:body use="literal" namespace="http://xmlns.oracle.com/UserRegistrationApp/UserRegistrationService/UserRegistrationService" />
    </wsdl:input>
    - <wsdl:output>
    <soap:body use="literal" namespace="http://xmlns.oracle.com/UserRegistrationApp/UserRegistrationService/UserRegistrationService" />
    </wsdl:output>
    - <wsdl:fault name="fault">
    <soap:fault name="fault" use="literal" encodingStyle="" />
    </wsdl:fault>
    </wsdl:operation>
    - <wsdl:operation name="changePassword">
    <soap:operation style="document" soapAction="changePassword" />
    - <wsdl:input>
    <soap:body use="literal" namespace="http://xmlns.oracle.com/UserRegistrationApp/UserRegistrationService/UserRegistrationService" />
    </wsdl:input>
    - <wsdl:output>
    <soap:body use="literal" namespace="http://xmlns.oracle.com/UserRegistrationApp/UserRegistrationService/UserRegistrationService" />
    </wsdl:output>
    - <wsdl:fault name="fault">
    <soap:fault name="fault" use="literal" encodingStyle="" />
    </wsdl:fault>
    </wsdl:operation>
    </wsdl:binding>
    - <wsdl:service name="UserRegistrationService">
    - <wsdl:port name="UserRegistrationService" binding="tns:UserRegistrationServiceBinding">
    <soap:address location="http://10.74.100.28:8001/soa-infra/services/default/UserRegistrationService/UserRegistrationService" />
    </wsdl:port>
    </wsdl:service>
    </wsdl:definitions>
    Thanks,
    Rajdeep

    Hi Frank,
    In response to " the web service proxy doesn't generate the methods but exposed the WS port for you" .
    There is a operation getAllDepartments() in your WebService.
    I referred to link provided and in Class WsPrxyWrapperBean.java -
    there is a method getAllDepartments() where wsport.getAllDepartments() is called to return the Departments.
    In the WSDL i have provided the operation is supposed to return a responseDataType ... but Proxy created is not having any method like that.
    I hope I made it more clear this time. Or Just creating a WebProxy on top the provided WSDL will show that Port is not having the proper methods.
    Thanks,
    Rajdeep

  • Trying to throw fault from one BPEL process to another

    We are trying to throw a fault from one BPEL process to another and apparently are experiencing a common problem. That is, the invoking process times out and never receives the fault.
    Likely a beginner's mistake is at fault (pun intended).
    Below are samples of a simple "Hello World" process that tries to throw the fault.
    snippet of pbel file....
    <process name="HelloJavaWorldSynchronous"
    targetNamespace="http://xmlns.oracle.com/HelloJavaWorldSynchronous"
    xmlns="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
    xmlns:xp20="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.Xpath20"
    xmlns:bpws="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
    xmlns:ns1="http://helloworldjavaproject/"
    xmlns:ldap="http://schemas.oracle.com/xpath/extension/ldap"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:client="http://xmlns.oracle.com/HelloJavaWorldSynchronous"
    xmlns:bpelx="http://schemas.oracle.com/bpel/extension"
    xmlns:ora="http://schemas.oracle.com/xpath/extension"
    xmlns:orcl="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.ExtFunc">
    <faultHandlers>
    <catchAll>
    <sequence name="Sequence_1">
    <assign name="Assign_3">
    <copy>
    <from expression="12345"/>
    <to variable="FaultVar" part="code"/>
    </copy>
    <copy>
    <from expression="'Hello fault summary'"/>
    <to variable="FaultVar" part="summary"/>
    </copy>
    <copy>
    <from expression="'Hello test detail'"/>
    <to variable="FaultVar" part="detail"/>
    </copy>
    </assign>
    <throw name="Throw_2" faultName="client:myFault"
    faultVariable="FaultVar"/>
    </sequence>
    HelloJavaWorldSynchronous.wsdl file
    <definitions
    name="HelloJavaWorldSynchronous"
    targetNamespace="http://xmlns.oracle.com/HelloJavaWorldSynchronous"
    xmlns="http://schemas.xmlsoap.org/wsdl/"
    xmlns:ns1="http://schemas.oracle.com/bpel/extension"
    xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/"
    xmlns:client="http://xmlns.oracle.com/HelloJavaWorldSynchronous"
    >
    <import namespace="http://schemas.oracle.com/bpel/extension" location="RuntimeFault.wsdl";/>
    <types>
    <schema xmlns="http://www.w3.org/2001/XMLSchema">
    <import namespace="http://xmlns.oracle.com/HelloJavaWorldSynchronous" schemaLocation="HelloJavaWorldSynchronous.xsd";/>
    </schema>
    </types>
    <message name="HelloJavaWorldSynchronousRequestMessage">
    <part name="payload" element="client:HelloJavaWorldSynchronousProcessRequest"/>
    </message>
    <message name="HelloJavaWorldSynchronousResponseMessage">
    <part name="payload" element="client:HelloJavaWorldSynchronousProcessResponse"/>
    </message>
    <portType name="HelloJavaWorldSynchronous">
    <operation name="process">
    <input message="client:HelloJavaWorldSynchronousRequestMessage"/>
    <output message="client:HelloJavaWorldSynchronousResponseMessage"/>
    <fault name="myFault" message="ns1:RuntimeFaultMessage"/>
    </operation>
    </portType>
    <plnk:partnerLinkType name="HelloJavaWorldSynchronous">
    <plnk:role name="HelloJavaWorldSynchronousProvider">
    <plnk:portType name="client:HelloJavaWorldSynchronous"/>
    </plnk:role>
    </plnk:partnerLinkType>
    </definitions>
    The standard RuntimeFault.wsdl file (RuntimeFaultMessage message is defined in here, so I don't need a message in HelloJavaWorldSynchronous.wsdl. Do I?)
    <?xml version="1.0"; encoding="UTF-8"?>
    <definitions name="RuntimeFault"
    targetNamespace="http://schemas.oracle.com/bpel/extension"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns="http://schemas.xmlsoap.org/wsdl/">
    <message name="RuntimeFaultMessage">
    <part name="code" type="xsd:string"/>
    <part name="summary" type="xsd:string"/>
    <part name="detail" type="xsd:string"/>
    </message>
    </definitions>
    But when we invoke the process, after the standard 45 seconds timeout, we still get...
    <Faulthttp://schemas.xmlsoap.org/soap/envelope/>
    <faultcode>env:Server</faultcode>
    <faultstring>com.oracle.bpel.client.delivery.ReceiveTimeOutException: Waiting for response has timed out. The conversation id is f290d62d2ad31aa6:-49eb76f4:124eb51622a:-7c91. Please check the process instance for detail.</faultstring>
    </Fault>
    The console audit below might hold a clue. I noticed the mesage BPELFault" has not been caught by a catch block at the end.
    <catchAll>
    <sequence>
    Assign_3
    [2009/11/13 11:18:32] Updated variable "FaultVar" More...
    -<FaultVar>
    -<part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="code">
    <code xmlns="" xmlns:def="http://www.w3.org/2001/XMLSchema" xsi:type="def:string" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">12345
    </code>
    </part>
    -<part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="summary">
    <summary xmlns="" xmlns:def="http://www.w3.org/2001/XMLSchema" xsi:type="def:string" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
    </part>
    -<part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="detail">
    <detail xmlns="" xmlns:def="http://www.w3.org/2001/XMLSchema" xsi:type="def:string" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
    </part>
    </FaultVar>
    [2009/11/13 11:18:32] Updated variable "FaultVar" More...
    -<FaultVar>
    -<part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="code">
    <code xmlns="" xmlns:def="http://www.w3.org/2001/XMLSchema" xsi:type="def:string" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">12345
    </code>
    </part>
    -<part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="summary">
    <summary xmlns="" xmlns:def="http://www.w3.org/2001/XMLSchema" xsi:type="def:string" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Hello fault summary
    </summary>
    </part>
    -<part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="detail">
    <detail xmlns="" xmlns:def="http://www.w3.org/2001/XMLSchema" xsi:type="def:string" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
    </part>
    </FaultVar>
    [2009/11/13 11:18:32] Updated variable "FaultVar" More...
    -<FaultVar>
    -<part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="code">
    <code xmlns="" xmlns:def="http://www.w3.org/2001/XMLSchema" xsi:type="def:string" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">12345
    </code>
    </part>
    -<part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="summary">
    <summary xmlns="" xmlns:def="http://www.w3.org/2001/XMLSchema" xsi:type="def:string" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Hello fault summary
    </summary>
    </part>
    -<part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="detail">
    <detail xmlns="" xmlns:def="http://www.w3.org/2001/XMLSchema" xsi:type="def:string" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Hello test detail
    </detail>
    </part>
    </FaultVar>
    Throw_2 (faulted)
    [2009/11/13 11:18:32] "{http://xmlns.oracle.com/HelloJavaWorldSynchronous}myFault" has been thrown. More...
    -<myFault xmlns="http://xmlns.oracle.com/HelloJavaWorldSynchronous">
    -<part name="code">
    <code xmlns="" xmlns:def="http://www.w3.org/2001/XMLSchema" xsi:type="def:string" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">12345
    </code>
    </part>
    -<part name="summary">
    <summary xmlns="" xmlns:def="http://www.w3.org/2001/XMLSchema" xsi:type="def:string" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Hello fault summary
    </summary>
    </part>
    -<part name="detail">
    <detail xmlns="" xmlns:def="http://www.w3.org/2001/XMLSchema" xsi:type="def:string" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Hello test detail
    </detail>
    </part>
    </myFault>
    </sequence>
    </catchAll>
    [2009/11/13 11:18:32] "BPELFault" has not been caught by a catch block.
    [2009/11/13 11:18:32] BPEL process instance "570162" cancelled

    Thanks very much for this answer. It was right on.
    You wanted to know "how (I) get on". Funny you should ask. Believe it or not, I had figured out the problem on my own just about the time you were posting your reply (of course, this is a bit too convenient. No one will ever believe me).
    But the answer leads to another question. What is the Throw activity for, if not to throw an error to the calling process? Is it only used to throw within scope of the process its self?
    I am probably biased by the Java world I am coming from, but Throw feels like it should terminate the process (without side effects like a big red mark in the console) bubble up the fault to the calling process who can catch it (if so desired). Using the reply we must explicitly Terminate (which includes that unsightly red mark).
    Is there any way to get this behavior from the Throw, or should we just reprogram the "wetware" and learn a new paradigm?
    Is there any way to end a process without marking it with a red flag that suggests something went wrong?

  • Throwing fault to client

    hi all ...first of all i use 10.1.3.1.
    1)I have defined a fault in service.xsd:
    <complexType name="SubscriberError">
    <sequence>
    <element minOccurs="1" maxOccurs="1" name="errorCode" type="int"/>
    <element minOccurs="1" maxOccurs="1" name="errorDesc" nillable="true" type="string"/>
    </sequence>
    </complexType>
    2)I used this in my service.wsdl:
    <message name="SubscriberError">
    <part name="fault" type="client:SubscriberError"/>
    </message>
    3)and finally i changed the port type in service.wsdl as following:
    <portType name="denek">
              <operation name="process">
                   <input message="client:denekRequestMessage" />
                   <output message="client:denekResponseMessage"/>
    <fault message="client:SubscriberError" name="SubscriberError"/>
              </operation>
    </portType>
    Here is the scenario and error :
    When i want to throw a fault from BPEL(in reply activity,i set fault message as a response),fault message goes to client as i expected but at every response i see following error in log files . Is it normal to see these in log files and how can i prevent this?
    <2007-05-14 14:13:39,079> <ERROR> <default.collaxa.cube> <BaseCubeSessionBean::logError> Error while invoking bean "delivery": faultName: {{http://xmlns.oracle.com/denek}SubscriberError}
    messageType: {{http://xmlns.oracle.com/denek}SubscriberError}
    parts: {{fault=oracle.xml.parser.v2.XMLElement@1757d61}}
    com.oracle.bpel.client.BPELFault: faultName: {{http://xmlns.oracle.com/denek}SubscriberError}
    messageType: {{http://xmlns.oracle.com/denek}SubscriberError}
    parts: {{fault=oracle.xml.parser.v2.XMLElement@1757d61}}
    at com.collaxa.cube.ejb.impl.DeliveryBean.request(DeliveryBean.java:109)
    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:585)
    at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
    at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
    at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
    at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
    at com.evermind.server.ejb.interceptor.system.JAASInterceptor$1.run(JAASInterceptor.java:31)
    at com.evermind.server.ThreadState.runAs(ThreadState.java:620)
    at com.evermind.server.ejb.interceptor.system.JAASInterceptor.invoke(JAASInterceptor.java:34)
    at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
    at com.evermind.server.ejb.interceptor.system.TxRequiredInterceptor.invoke(TxRequiredInterceptor.java:50)
    at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
    at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
    at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
    at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
    at com.evermind.server.ejb.StatelessSessionEJBObject.OC4J_invokeMethod(StatelessSessionEJBObject.java:87)
    at DeliveryBean_RemoteProxy_4bin6i8.request(Unknown Source)
    at com.collaxa.cube.ws.soap.oc4j.SOAPRequestProvider.processNormalOperation(SOAPRequestProvider.java:455)
    at com.collaxa.cube.ws.soap.oc4j.SOAPRequestProvider.processBPELMessage(SOAPRequestProvider.java:278)
    at com.collaxa.cube.ws.soap.oc4j.SOAPRequestProvider.processMessage(SOAPRequestProvider.java:129)
    at oracle.j2ee.ws.server.provider.ProviderProcessor.doEndpointProcessing(ProviderProcessor.java:869)
    at oracle.j2ee.ws.server.WebServiceProcessor.invokeEndpointImplementation(WebServiceProcessor.java:349)
    at oracle.j2ee.ws.server.provider.ProviderProcessor.doRequestProcessing(ProviderProcessor.java:460)
    at oracle.j2ee.ws.server.WebServiceProcessor.processRequest(WebServiceProcessor.java:114)
    at oracle.j2ee.ws.server.WebServiceProcessor.doService(WebServiceProcessor.java:96)
    at oracle.j2ee.ws.server.WebServiceServlet.doPost(WebServiceServlet.java:177)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
    at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
    at oracle.security.jazn.oc4j.JAZNFilter$1.run(JAZNFilter.java:396)
    at java.security.AccessController.doPrivileged(Native Method)
    at javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
    at oracle.security.jazn.oc4j.JAZNFilter.doFilter(JAZNFilter.java:410)
    at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621)
    at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:368)
    at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:866)
    at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:448)
    at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:216)
    at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:117)
    at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:110)
    at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
    at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239)
    at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34)
    THKS

    thnks Mark
    Although i set the audit level to "off", nothing changed. This exception occurs under opmn logs as i mentioned before.
    Also i send the fault as mentioned in first post.There is no problem to send fault(i see the fault in client side).
    My problem is seeing the following exception in log files.
    May be you can help me about the problem in that log files. Can you generate this according to my explanations-in first post.
    Also i can send you the case(a sample project to generate this) but i don t know how to attach it.
    thks again

  • Read BPEL process fault - JSP - Servlet

    Hi all,
    I created a simple BPEL process, a JSP and a servlet to access and run the process. This is the scenario:
    - The user enters "test" in JSP page. The servlet execute the BPEL process
    - BPEL process throws a fault. A error msg is assigned to ProcessFault element
    - BPEL process returns -1 in output variable
    ... and this is my problem:
    I want to read the error msg in ProcessFault element. I created a xml facade to access the ProcessFault element but it's empty. There is no error msg ...
    If I checked the process with the console. It's works fine. The processus returns -1 and assign a error msg.
    Do you have an idea?
    Have a great day,
    Cyryl

    Hi Cyryl ,
    If you can send me the Process and JSP or servlet where you are trying to catch fault [ProcessFault] , i will see if ther is anything you are missing something.
    Thanks,
    rakesh

  • My application while running in playback throws fault error report and it needs to be closed programmatically by killing the process.

    My application throws some fault error report and pops up a screen needing user response.
    I would like to kill that process once it is thrown. Is there a way I can do it programmatically
    this issue happens in the middle of start() and close() method

    Hi,
    Based on your description, I think that your issue and requirement is more related to programming rather than Visual Studio tests.
    Test Tools in Visual Studio 2010 and 2012 forum is used to resolve and discuss VS testing issues. I am afraid that your issue is out of the support range of this forum. I suggest consulting this issue on some development forums based on the
    type of your application.
    If you are working with Windows Forms app. please consult on Windows Forms Forum:http://social.msdn.microsoft.com/Forums/windows/en-US/home?category=windowsforms
    If you are working with WPF app, please consult on WPF forum:
    http://social.msdn.microsoft.com/Forums/vstudio/en-US/home?forum=wpf
    If you are working with ASP.NET Web Application, I suggest that you can consult your issue on ASP.NET forum:
    http://forums.asp.net/
     for better solution and support.
    Visual Studio Language Forums also may help you:
    http://social.msdn.microsoft.com/Forums/vstudio/en-US/home?category=vslanguages
    Best regards,
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • BPEL Dehydration/Memory question

    I’m using Oracle BPEL PM 10.1.2.0.2 running on Oracle Application Server 10.1.2.
    My scenario is simple, I’m using manual tasks in my flows that can be open for several days, and therefore it won’t be good if the processes stay in memory, consuming resources.
    My question is that when an Asynchronous process invokes a partner link, and waits for the corresponding reply, what happens to that process? Does it stay in memory until the response? Is it release from memory, staying persistently in the Dehydration DB? If not, Can we force the process to do so?
    Tks,
    Alex Costa

    Hi Clemens
    as you said, I am using a "wait" activity on a BPEL process just after the initial receive, in order to force dehydration in the start of the process. However, after the "wait" there is a "java:exec" activity which takes long time to finish (15 minutes), and the BPEL instance is not shown on the BPEL Console until the "java:exece" finishes...
    Am I confusing about dehydration and BPEL Instances?? I understand that when a BPEL suffers dehydration, it starts to apear on BPEL Console, or there is no relation between dehydration and instances on BPEL Console?
    Thanks.

  • Try-catch & throw Exception Question

    Method evenNumber can throw IOException, and the caller of method
    evenNumber (in this case, method evenNumberTest and method evenNumberTest2)
    should catch the IOException. Otherwise, it will have compile
    error as the one in method evenNumberTest2.
    My question is when I run the program, it will have output "catch evenNumberTest",
    but it doesn't output "throw testNumber" Why is that?
    I thought ""throw new IOException("throw testNumber");"" will print
    "throw testNumber" when it throws the IOException.
    So in what situation "throw testNumber" will print it out??
    Please advise. Thanks!!
    =======================================================
    import java.io.*;
    public class ExceptionTest
    private void evenNumberTest()
    {     try
         { evenNumber(2);
         catch(IOException e)
         { System.out.println("catch evenNumberTest");
    ExceptionTest.java:14: unreported exception java.io.IOException; must be caught
    or declared to be thrown
    {   evenNumber(2);
    ^
         private void evenNumberTest2()
    {     evenNumber(2);
    private void evenNumber(int x) throws IOException {
         if (x % 2 == 0)
         throw new IOException("throw testNumber");
    public static void main(String[] args)
    {     ExceptionTest e = new ExceptionTest();
         e.evenNumberTest();

    Exception messages aren't printed out when the
    Exceptions are thrown.
    They are only printed if you explicitly print them, or
    if you do not catch them.He is talking about this print statement within the catch block
    catch(IOException e)
    { System.out.println("catch evenNumberTest");

  • BPEL  remote fault ???   invalid  SOAP envelope:  body is empty

    Heres the clever bit, The invoke actually works calls the web interface which does what its meant to do. The web interface then passes back a correctly formed empty message (accepted by XMLSpy and soapUI ) in BPEL I get a remote fault
    <remoteFault xmlns="http://schemas.oracle.com/bpel/extension"><part name="summary"><summary>exception on JaxRpc invoke: invalid SOAP envelope: body is empty</summary>
    </part></remoteFault>

    Hi,
    Did any of you solve this issue? I'm having the same problem.
    Any help would be appreciated. Thanks in advance,
    Zaloa

  • BPEL Console - Fault Policy

    Hi,
    Can we use BPEL Console/Admin to edit fault policy file? I didn't find a way though.. I assume it should be possible using Console/Admin ...
    Please let me know ..
    Ranjith

    I believe it is not possible atleast in 10.1.3.3 version, Oracle might support this in later version.
    Have you seen the demo of Oracle CAB, I believe they wrote some JSP to view/edit these policies. (Not sure it may be just for ESB).
    Regards,
    Chintan

  • BPEL/ESB - Architecture question

    Folks,
    I would like to ask a simple architecture question;
    We have to invoke a partner web services which are rpc/encoded from SOA suite 10.1.3.3. Here the role of SOA suite is simply to facilitate communication between an internal application and partner services. As a result SOA suite doesn't have any processing logic. The flow is simply:
    1) Internal application invokes SOA suite service (wrapper around partner service) and result is processed.
    2) SOA suite translates the incoming message and communicates with partner service and returns response to internal application.
    Please note that at this point there is no plan to move all processing logic from internal application to SOA suite. Based on the above details I would like get some recommedation on what technology/solution from SOA suite is more efficient to facilate this communication.
    Thanks in advance,
    Ranjith

    You can go through the design pattern called Channel Adapter.
    Here is how you should design - Processing logic remains in the application.. however, you have to design and build a channel adapter as a BPEL process. The channel adapter does the transformation of your input into the web services specific format and invoke the endpoint. You need this channel adapter if your internal application doesn't have the capability to make webservice calls.
    Hope this helps.

  • PM's accesspoint and BPEL's WSDL question

    Hi all
    I am new to Oracle BPEL PM and JDev, and here are my questions:
    *. I have installed PM when i was connected in a local network, say my ip is 192.168.0.1. Every time i deploy a new process, it will automatically set the service's endpoint as http://192.168.0.1/blah..... After i changed my network area, every time i deploy a new service, its still at 192.168.0.1/.... so could anyone tell me how to change/set it accordingly?
    *. For JDev BPEL designer, automatic generated WSDL always include schema, how can i change this to define type schema directly in WSDL file otherwise the exposed service uses included schema which brings troubles when generating client stubs.
    *. JDev already provide asynchronism and synchronism patterns, but say syn for example, if i want to have multiple <receive> or <reply>, what can i do with the default pattern except creating a empty BPEL and add everything manually?
    Best Regard

    Hi,
    perhaps this helps for you first question:
    http://download-east.oracle.com/docs/cd/B32110_01/core.1013/b32196/host.htm#CHDGHFGE

  • HT1420 I have tried several times to pay and download one track as I have done many times before now iTunes keeps on refusing to let me buy blurred lines single keeps on throwing security questions at me why nothing has charged for them to do this

    Why nothing has changed let me buy this tune with the same ID and password that I have used to purchase other tracks with no problems,

    We are fellow users here on these forums, you're not talking to iTunes Support. The questions should only be asked on the first purchase on a new computer or device, but other people have also posted recently about them being asked when it isn't. If you are being asked them then you will need to answer them before you can purchase.
    If you can't remember their answers and you have a rescue email address (which is not the same thing as an alternate email address) set up on your account then go to https://appleid.apple.com/ and click 'Manage your Apple ID' on the right-hand side of that page and log into your account. Then click on 'Password and Security' on the left-hand side of that page and on the right-hand side you should see an option to send security question reset info to your rescue email address.
    If you don't have a rescue email address (you won't be able to add one until you can answer 2 of your questions) then you won't get the reset option - you will need to contact iTunes Support or Apple to get them reset.
    e.g. you can try contacting iTunes Support : http://www.apple.com/support/itunes/contact/ - click on Contact iTunes Store Support on the right-hand side of the page, then Account Management , and then 'Forgotten Apple ID security questions'
    or try ringing Apple in your country and ask to talk to the Accounts Security Team : http://support.apple.com/kb/HE57
    When they've been reset (and if you don't already have a rescue email address) you can then use the steps half-way down this page to add a rescue email address for potential future use : http://support.apple.com/kb/HT5312 . Or if it's available in your country you could change to 2-step verification : http://support.apple.com/kb/HT5570

Maybe you are looking for

  • Code View issue

    In Dreamweaver 8, when you place your cursor at any point in Design View, that area will be automatically selected in Code View. For some reason, this doesn't happen in Dreamweaver CS3. I hope it's just a bug and gets fixed soon. It's a very useful f

  • DOCUMENTATION  FOR WEB DYNPRO ON ABAP

    Hi all.   I am an abap developer.I am new to web dynpro. I want to learn this web dynpro. can any  body tell me the  documents for this web dynpro. how to read and how to down load the software on to my desk top from net. thanks in advance, regards,

  • Message Type IN_BAND_EXCEPTION

    Hello all, We get In_band_exception message type in our respnse messge from the remote TP. We are using b2b 11.1.1.3 version. The InstanceIdentifer in the service header of the response message has invalid characters, <messageTrackingID> <InstanceIde

  • BT on demand streaming prob.

    Having probs with BTvision on demand. The picture and sound freezes repeatedly unless i pause for a few mins and then start. Again 5mins later it will repeat process. This has been happening the last week and i have tried phoning helpdesk but **bleep

  • Plz help f.01 dump

    Hi , In transaction f.01 if i exicute after entering respective data   gives financial statement if i go o menu List -> export -> additional functions of SAP Query. it gives me dump.when I analyse that dump it is some selection error which in in turn