Exception thrown by RFC To be handled in BPM

Hi All ,
I am trying the scenario.
Http Client -> XI-->BPM -
> RFC
            <-   <--    <------- 
The whole communication is Synchronous.
So I  have
One Outbound  Synchronous Interface
One Inbound  Synchronous Interface.
Two Abstract  Synchronous Interface for  BPM.
And  4  Abstract Asynchronous Interfaces for the containers which is to used in BPM.
(Two for request and two for response )
For simple Request Response Messages from the RFC my Scenario is working perfectly.
But  I  Introduced  an Exception in RFC, So my Rfc is Throwing an Exception Message which needs to be returned back to Http Client.
Now my problem is only Synchronous interfaces have the option of  fault messages in which the  exception  message can be included. So how do I pass the Exception message to Http Client via BPM , Because Containers require Asynchronous Interfaces and they are not accepting fault messages.
Has Anyone tried this kind of exception handling in BPM,
Please Help Me.
Yomesh.

Hi Saravana,
first of all thanks for ur reply,
In my scenario there are two reciever systems(SAP and JDE) and call to both the systems is synchronous. I am merging the responses from both systems into one using BPM. Thats why I needed BPM.
Now About exception handling that is required because if response from one system is not there then also the BPM process should not terminate .It should give the output from other system and an error message for first one to the HTTP client.
I think now the scenario is clear for you,
Please see if you can help me with that.
Thanks,
Yomesh

Similar Messages

  • Exceptions Thrown for RFC

    Hi All,
    Our scenario is like this: RFC -> XI -> Web Service. It's synchronous. When the web service throws an exception, XI need to send as much as information back to RFC. So I created a fault mapping. In the fault mapping, the target RFC exception structure is like this:
    +Root.Exception
    ++Name
    ++Text
    ++Message
    ++++ID
    ++++Number
    ++Attributes
    ++++V1
    ++++V2
    ++++V3
    ++++V4
    Can anybody tell me how to get the info contained by this exception structure from RFC caller side (ABAP program)?
    Thanks, Jerome

    Hi Jerome,
    If you can catch the XML response code from Web service, you can divert the message tag with Exception or Fault tags to RFC fields.
    This is just an idea strike, it may useful in your case.
    Regards,
    sri

  • How to properly handle Exception thrown in a .tag file?

    I've got a .jsp file that makes use of some custom tags, each defined in their own .tag file, and located in WEB-INF/tags. I'm having a lot of trouble with the scenario of cleanly dealing with an exception raised by scriptlets in either a .jsp file, and a .tag file. I'm using both Java and Tomcat 6....
    Originally, I wanted to use .tag files in order to componentize common elements that were present in .jsp pages, as well as move ugly scriptlets out of .jsp pages, and isolate them in tag files with their associated page elements.
    Things started getting hairy when I started exploring what happens when an exception is thrown (bought not handled) in a scriptlet in a .tag file. Basically, my app is a servlet that forwards the user to various .jsp pages based on given request parameters. The forwarding to the relevant .jsp page is done by calls to the following method:
    servletContext.getRequestDispatcher("/" + pageName).forward(request, response);
    Where 'pageName' is a String with the name of the .jsp I want to go to...
    Calls to this method are enclosed in a try block, as it throws both a ServletException, and IOException...
    When either my .jsp, or .tag throw an exception in a scriptlet, the exception is wrapped in a JSPException, which is then wrapped in a ServletException.
    I can catch this exception in my servlet... but then what? I want to forward to an error page, however, in the catch block, I can't forward in response to this exception, as that results in an IllegalStateException, as the response has already been committed. So what do I do? How do I get from this point, to my "error.jsp" page?
    It was suggested to me that I use the <% @ page isErrorPage="true" %> directive in my error.jsp,
    and the in my real .jsp, use <%page errorPage="/error.jsp" %>.
    This works great when the exception is thrown in my .jsp.... But when the exception is thrown in the .tag file... not so much...
    My .jsp page was rendered up until the point where the <my:mytag/> (the tag with the offending raised exception) was encountered. Then, instead of forwarding to the error page when the error in the tag is encountered, the error page is rendered as the CONTENT of of my TAG. The rest of the .jsp is then NEVER rendered. I checked the page source, and there is no markup from the original .jsp that lay below the my tag. So this doesn't work at all. I don't want to render the error page WITHIN the half of the .jsp that did render... Why doesn't it take me away from the .jsp with the offending tag altogether and bring me to the error.jsp?
    Then it was suggested to me that I get rid of those page directives, and instead define error handling in the web.xml using the following construct:
    <error-page>
    <exception-type>java.lang.Exception</exception-type>
    <location>/error</location>
    </error-page>
    <error-page>
    <error-code>404</error-code>
    <location>/error</location>
    </error-page>
    For this, I created a new servlet called ErrorServlet, and mapped it to /error
    Now I could mangle the end of the URL, which causes a 404, and I get redirected to the ErrorServlet. Yay.
    However, exceptions being thrown in either a .jsp or .tag still don't direct me to the ErrorServlet. Apparently this error handling mechanism doesn't work for .jsp pages reached via servletContext.getRequestDispatcher("/" + pageName).forward(request, response) ????
    So I'm just at a total loss now. I know the short answer is "don't throw exceptions in a .jsp or .tag" but frankly, that seems a pretty weak answer that doesn't really address my problem... I mean, it would really be nice to have some kind of exception handler for runtime exceptions thrown in a scriptlet in .tag file, that allows me to forward to a page with detailed stacktrace output, etc, if anything for debugging purposes during development...
    If anyone has a few cents to spare on this, I'd be ever so grateful..
    Thanks!!
    Jeff

    What causes the exception?
    What sort of exception are you raising from the tag files?
    Have you got an example of a tag file that you can share, and a jsp that invokes it so people can duplicate the issue without thinking too much / spending too much time?
    My first instinct would be that the buffer is being flushed, and response committed before your Exception is raised.
    What you describe is pretty much standard functionality for Tomcat in such cases.

  • Handling exception thrown by parseEscapedXML function

    Hi,
    I am using parseEscapedXML function to parse an xml string in the below format .
    <parameters><item id="" value=""/><item id="" value=""/></parameters>
    The exception thrown when input is in incorrect xml format is not caught using catchAll.
    Kindly check if anyone have any idea about this.

    Hi,
    Ideally your BAPI shouldn't raise exceptions - it is much better to use the RETURN table from your BAPI with any relevant messages - have a look at the majority of standard SAP BAPI's in transaction BAPI.
    This way, the only exceptions your try... catch block needs to handle are those related to the actual calling of your BAPI, not it's functionality.
    Also, if you can successfully run the BAPI in SE37 but it fails when called from your WD application, try using the FBGENDAT functionality to capture what data is being passed to SAP from your Web Dynpro application.  All it takes is a simple mistake in setting up your contexts or logic and you won't be calling your BAPI correctly.
    Hope this helps,
    Gareth.

  • How to handle exceptions thrown by event

    Hi all,
    i have this slight problem, i'm trying to handle accessing a databse from a button click, i'm trying to simulate somebody logging on to a network. the code is as follows;
    *@author James Taylor
    *@version 30-11-2003
    *Logon gui
    import java.awt.*;
    import javax.swing.*;
    import java.awt.event.*;
    import java.sql.*;
    public class LogonUI extends JFrame {
         //instance variables
         private JLabel userNameL;
         private JPasswordField password;
         private JButton logon;
         ButtonHandler handler;
         Connection con;
         Statement stmt;
          *Constructor initialises and creates UI, adds functionality to the button.
         public LogonUI() throws SQLException, ClassNotFoundException, IllegalAccessException, InstantiationException{
              super("Employee Logon");
              Container c = getContentPane();
              c.setLayout(new FlowLayout() );
              //handles what happens when user presses the button
               handler = new ButtonHandler();
              userNameL = new JLabel("Please Enter Password:");
              c.add(userNameL);
              password = new JPasswordField(15);
              c.add(password);
              logon = new JButton( "Logon" );
              //anonymous inner class that is created once the button is pressed.
              //it connects to database to validate user
              logon.addActionListener( handler );
              c.add(logon);
              c.setBackground( Color.pink );
              setDefaultCloseOperation(DISPOSE_ON_CLOSE);
              setSize(250,150);
              setVisible(true);
          *class that opens connection to validate user
         private class ButtonHandler implements ActionListener {
              public void actionPerformed(ActionEvent ae)throws SQLException, ClassNotFoundException, IllegalAccessException, InstantiationException{
                   try{
                        boolean isValidUser = false;
                        //Load mysql driver
                         Class.forName("com.mysql.jdbc.Driver").newInstance();
                         //make a connection
                        String url = "jdbc:mysql://localhost/flight";
                        con = DriverManager.getConnection(url)
                        //Create and instantiate a statement obj
                        stmt = con.createStatement();
                        //get a result set
                        ResultSet rs = stmt.executeQuery("SELECT Password FROM employees");
                        //Iterate through the result set
                        while ( rs.next() ){     
                             String savedPassword = rs.getString("Password");
                             if (password.getText().equals(savedPassword) ){
                                  isValidUser = true;
                                  JOptionPane.showMessageDialog(null,"Yipeeeee");
                        if (isValidUser == false){
                             JOptionPane.showMessageDialog(null,"Invalid Password");     
                        stmt.close();
                        con.close();
                   }catch(Exception e){ e.printStackTrace();}
              public static void main (String[] args) throws SQLException, ClassNotFoundException, IllegalAccessException, InstantiationException{
              LogonUI testAirApp = new LogonUI();
    }When the user presses the button the app tries to validate the user.
    I have not been able to test the code due to SQL Exceptions thrown in the handler class, and when i try and throw them up from here i get;
    LogonUI.java:52: actionPerformed(java.awt.event.ActionEvent) in LogonUI.ButtonHandler cannot implement actionPerformed(java.awt.event.ActionEvent) in java.awt.event.ActionListener; overridden method does not throw java.lang.InstantiationExceptionAny ideas on my code and how to handle these exceptions will be very appreciated. Regards, James

    Turn your checked exceptions into unchecked exceptions and retrieve the cause later:
    RuntimeException unchecked = new RuntimeException(checked);
    Throwable t = unchecked.getCause();Stephen

  • Client side handling of exceptions thrown by a webservice

    I have a webservice that is deployed in Tomcat 5.5 running on Windows XP, Java version is 1.5, using jwsdp 1.5. My client, when run as an applet in a browser (have tried IE 6 and FireFox 1), seems to be unable to parse any exception thrown from the webservice. Instead the following exception is caught by the client:
    ==========================================================
    Checking the security service exception that occurred [Runtime exception; nested exception is:
    XML parsing error: com.sun.xml.rpc.sp.ParseException:1: Document root element is missing]
    com.irista.security.services.data.SecurityServiceException: Runtime exception; nested exception is:
    XML parsing error: com.sun.xml.rpc.sp.ParseException:1: Document root element is missing
    at com.irista.security.services.webclient.SecurityServiceProxy.removeAuthenticatio nProfile(SecurityServiceProxy.java:1276)
    at com.irista.security.ui.applet.AuthenticationProfilesListPanel.deleteAction(Auth enticationProfilesListPanel.java:131)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.irista.ui.webapp.framework.WebAppletPane.performAction(WebAppletPane.java:1 80)
    at com.irista.ui.webapp.framework.WebAppletPane.performAction(WebAppletPane.java:1 51)
    at com.irista.ui.webapp.framework.WebAppToolbar$ButtonActionListener.actionPerform ed(WebAppToolbar.java:368)
    at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
    at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
    at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
    at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
    at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
    at java.awt.Component.processMouseEvent(Unknown Source)
    at javax.swing.JComponent.processMouseEvent(Unknown Source)
    at java.awt.Component.processEvent(Unknown Source)
    at java.awt.Container.processEvent(Unknown Source)
    at java.awt.Component.dispatchEventImpl(Unknown Source)
    at java.awt.Container.dispatchEventImpl(Unknown Source)
    at java.awt.Component.dispatchEvent(Unknown Source)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
    at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
    at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
    at java.awt.Container.dispatchEventImpl(Unknown Source)
    at java.awt.Component.dispatchEvent(Unknown Source)
    at java.awt.EventQueue.dispatchEvent(Unknown Source)
    at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.run(Unknown Source)
    ==========================================================
    If I run the client outside of a browser it catches the exception that is actually thrown by the webservice.
    Is there possibly a problem with the java 5 plugin handling exceptions thrown by webservices?
    I have not found any bug reports or forumn posts regarding this so any assistance would be greatly appreciated.
    thanks,
    scott

    Thanks for the reply, here is what the printStackTrace() output:
    java.rmi.RemoteException: Runtime exception; nested exception is:
         XML parsing error: com.sun.xml.rpc.sp.ParseException:1: Document root element is missing
         at com.sun.xml.rpc.client.StreamingSender._handleRuntimeExceptionInSend(StreamingSender.java:318)
         at com.sun.xml.rpc.client.StreamingSender._send(StreamingSender.java:300)
         at com.irista.security.services.webservice.SecurityServiceIF_Stub.removeAuthenticationProfile(SecurityServiceIF_Stub.java:1963)
         at com.irista.security.services.webclient.SecurityServiceProxy.removeAuthenticationProfile(SecurityServiceProxy.java:1266)
         at com.irista.security.ui.applet.AuthenticationProfilesListPanel.deleteAction(AuthenticationProfilesListPanel.java:131)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
         at java.lang.reflect.Method.invoke(Unknown Source)
         at com.irista.ui.webapp.framework.WebAppletPane.performAction(WebAppletPane.java:180)
         at com.irista.ui.webapp.framework.WebAppletPane.performAction(WebAppletPane.java:151)
         at com.irista.ui.webapp.framework.WebAppToolbar$ButtonActionListener.actionPerformed(WebAppToolbar.java:368)
         at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
         at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
         at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
         at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
         at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
         at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
         at java.awt.Component.processMouseEvent(Unknown Source)
         at javax.swing.JComponent.processMouseEvent(Unknown Source)
         at java.awt.Component.processEvent(Unknown Source)
         at java.awt.Container.processEvent(Unknown Source)
         at java.awt.Component.dispatchEventImpl(Unknown Source)
         at java.awt.Container.dispatchEventImpl(Unknown Source)
         at java.awt.Component.dispatchEvent(Unknown Source)
         at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
         at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
         at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
         at java.awt.Container.dispatchEventImpl(Unknown Source)
         at java.awt.Component.dispatchEvent(Unknown Source)
         at java.awt.EventQueue.dispatchEvent(Unknown Source)
         at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
         at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
         at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
         at java.awt.EventDispatchThread.run(Unknown Source)
    Caused by: XML parsing error: com.sun.xml.rpc.sp.ParseException:1: Document root element is missing
         at com.sun.xml.rpc.streaming.XMLReaderImpl.next(XMLReaderImpl.java:120)
         at com.sun.xml.rpc.streaming.XMLReaderBase.nextContent(XMLReaderBase.java:23)
         at com.sun.xml.rpc.streaming.XMLReaderBase.nextElementContent(XMLReaderBase.java:41)
         at com.sun.xml.rpc.client.StreamingSender._send(StreamingSender.java:123)
         ... 34 more

  • Handling Exceptions thrown by EDT Thread?

    Hi,
    How to handle exceptions thrown by EDT Thread?. If anybody can give any link or any example, then it really helpful.
    Thanks

    System.setProperty( "sun.awt.exception.handler", EventThreadExceptionHandler.class.getName() );

  • How to handle exception thrown in standard bo method in the workflow design

    Hi Experts
        how to handle exception thrown from standard bo method in the workflow design. For example, bo BUS2032, METHOD confirm. If the user cancel it, it will throw exception. In the workflow, how to catch this exception and add corresponding steps in the workflow.

    @jrockman li
    Try to implement the logic that what ever you are performing in the BO mehtod in a FM and in the FM you have tab with name EXECPTIONS define the execption in that tab.Now in the BO method you call this FM  and if the exception occurs by using RAISE you can raise the exception in the FM and based on the number of exceptions your sy-subrc value will be set
    so when sys-subrc is not eq 0 then pass a value back t the workflow container., I think this will work.
    a sample Snippet for understanding purpose
    CALL FUNCTION 'GUI_DOWNLOAD'
      EXPORTING
        filename         = <path>
        filetype         = 'ASC'
      IMPORTING
        filelength       = lv_len
      TABLES
        data_tab         = l_txt_tab
      EXCEPTIONS
        file_write_error = 1          " If this Exception occurs
        invalid_type     = 2
        no_authority     = 3
        unknown_error    = 4
        OTHERS           = 10.
    CASE sy-subrc.
      WHEN 1. " SY-SUBRC value will be 1 then,
          " Pass or set the value back to the workflow conatiner element
    ENDCASE.

  • Additional uncaught exception thrown while handling exception.

    Hello all! I am *trying* to surf around the internet and do a little online shopping. I keep getting this error though and it is really bugging me/ruining my night. I am about ready to through my computer at a wall.
    Here is the error:
    Additional uncaught exception thrown while handling exception.
    Here is the full error as it appears on my screen:
    Additional uncaught exception thrown while handling exception.
    Original
    RedisException: Redis server went away in Redis->setOption() (line 23 of /home/www/usa.hunter-boot.com/htdocs/drupalroot/sites/all/modules/contrib/redis /lib/Redis/Client/PhpRedis.php).
    Additional
    RedisException: Redis server went away in Redis->setOption() (line 23 of /home/www/usa.hunter-boot.com/htdocs/drupalroot/sites/all/modules/contrib/redis /lib/Redis/Client/PhpRedis.php).
    It is REALLY bugging me. I don't know that much about computers other then the basics. I only use mine to write papers and go on the internet so if someone is nice enough to try and help me fix this issue then please don't use fancy tech lingo (dumb it down for me). Thank you!

    That's a problem on the web server, not on your computer.

  • Possible to determine exception thrown in a finally block?

    I believe the answer to this is 'no', but I thought I would ask just to confirm.
    If an exception is thrown in a try block, is there a way in the finally block to determine what exception was thrown? I tried using Throwable#fillinStackTrace and Thread#getStackTrace and did not get anywhere. I did see other methods like Thread#getAllStackTraces and perhaps going up to a parent ThreadGroup and inspecting other child Thread instances, but at least in my debugger, I did not see anything useful.
    The basic idea I am trying to achieve is to detect if an exception is thrown in the try, if yes, chain any exception thrown in the finally block to the original exception. I know I can do this on a case-by-case basis by storing the exception caught and then manually chaining it in the finally block. I was looking for something more generic/applicable to all finally blocks.
    Thanks.
    - Saish

    Thanks JSchell, have done that many times in the past.
    I was looking for a more generic (not generics) solution to the problem. So that an error handler could be written to automatically chain exceptions thrown in the finally clause (granted, one still needs to invoke the error handler). My hope was the stack in the finally clause would look different if an exception was thrown in the try block versus none at all.
    - Saish

  • Java exception appear during file adapter to handle large xml

    Hi,Guys,
    I am using file adapter to poll one folder of my local.one get input.xml,then do something,then write out output.xml.
    input.xml format is :
    <mes:DataRequestIns xmlns:mes="http://xml.netbeans.org/schema/MessageDefined">
    <!--1 or more repetitions:-->
         <mes:DataIns>
              <mes:address>Ang Mo Kio 5,63 street</mes:address>
              <mes:birthday>14/12/1970</mes:birthday>
              <mes:firstName>Sing1</mes:firstName>
              <mes:gender>0</mes:gender>
              <mes:ID>1001</mes:ID>
              <mes:lastName>NorthMan</mes:lastName>
              <mes:postcode>2002</mes:postcode>
              <mes:telephone>6665222</mes:telephone>
              <mes:surname>Sur</mes:surname>
              <mes:status>single</mes:status>
              <mes:location>sgp</mes:location>
              <mes:HP1>11111</mes:HP1>
              <mes:HP2>22222</mes:HP2>
              <mes:passport>123456878</mes:passport>
              <mes:company>ST</mes:company>
              <mes:department>TO</mes:department>
              <mes:occupation>engineer</mes:occupation>
              <mes:experience>10</mes:experience>
              <mes:level>2</mes:level>
              <mes:certificate>high</mes:certificate>
              <mes:specialisation>computer</mes:specialisation>
              <mes:staffNumber>1020</mes:staffNumber>
              <mes:fax>00200</mes:fax>
              <mes:email>[email protected]</mes:email>
              <mes:national1>sgp</mes:national1>
              <mes:national2>sgp</mes:national2>
              <mes:interestingField>bpel</mes:interestingField>
              <mes:national>earth</mes:national>
              <mes:oversea>yes</mes:oversea>
         </mes:DataIns>
    <mes:DataIns>
    </mes:DataIns>
    </mes:DataRequestIns>
    if my input.xml contain less than 1000 records,then it's working,once greater than 1000,then appear exception.for normal case ,must have more than 10000 records need to handle,and file size is 11.2MB.
    so,Does any other way or how to use file adapter to handle it ?
    thank you
    exception :
    SEVERE: An error occured while scanning for the next trigger to fire.
    org.quartz.JobPersistenceException: Failed to obtain DB connection from data sou
    rce 'soaNonManagedDS': java.sql.SQLException: Could not retrieve datasource via
    JNDI url 'jdbc/SOALocalTxDataSource' weblogic.jdbc.extensions.ConnectionDeadSQLE
    xception: weblogic.common.resourcepool.ResourceDeadException: 0:weblogic.common.
    ResourceException: Could not create pool connection. The DBMS driver exception w
    *as: Socket read timed out [See nested exception: java.sql.SQLException: Could no*
    *t retrieve datasource via JNDI url 'jdbc/SOALocalTxDataSource' weblogic.jdbc.ext*
    *ensions.ConnectionDeadSQLException: weblogic.common.resourcepool.ResourceDeadExc*
    *eption: 0:weblogic.common.ResourceException: Could not create pool connection. T*
    *he DBMS driver exception was: Socket read timed out]*
    at org.quartz.impl.jdbcjobstore.JobStoreCMT.getNonManagedTXConnection(Jo
    bStoreCMT.java:167)
    at org.quartz.impl.jdbcjobstore.JobStoreSupport.executeInNonManagedTXLoc
    k(JobStoreSupport.java:3652)
    at org.quartz.impl.jdbcjobstore.JobStoreSupport.acquireNextTrigger(JobSt
    oreSupport.java:2654)
    at org.quartz.core.QuartzSchedulerThread.run(QuartzSchedulerThread.java:
    *235)*
    Caused by: java.sql.SQLException: Could not retrieve datasource via JNDI url 'jd
    bc/SOALocalTxDataSource' weblogic.jdbc.extensions.ConnectionDeadSQLException: we
    blogic.common.resourcepool.ResourceDeadException: 0:weblogic.common.ResourceExce
    ption: Could not create pool connection. The DBMS driver exception was: Socket r
    ead timed out
    another exception:
    Message handle error.
    error while attempting to process the message "com.collaxa.cube.engine.dispatch.
    message.invoke.InvokeInstanceMessage"; the reported exception is: Transaction Ro
    lledback.: weblogic.transaction.internal.TimedOutException: Transaction timed ou
    t after 302 seconds
    BEA1-3468FC5E3C698D2A82F7
    at weblogic.transaction.internal.ServerTransactionImpl.wakeUp(ServerTran
    sactionImpl.java:1742)
    at weblogic.transaction.internal.ServerTransactionManagerImpl.processTim
    edOutTransactions(ServerTransactionManagerImpl.java:1609)
    at weblogic.transaction.internal.TransactionManagerImpl.wakeUp(Transacti
    onManagerImpl.java:1885)
    at weblogic.transaction.internal.ServerTransactionManagerImpl.wakeUp(Ser
    verTransactionManagerImpl.java:1519)
    at weblogic.transaction.internal.WLSTimer.timerExpired(WLSTimer.java:35)
    at weblogic.timers.internal.TimerImpl.run(TimerImpl.java:273)
    at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTunin
    gWorkManagerImpl.java:516)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    *; nested exception is: weblogic.transaction.internal.TimedOutException: Transact*
    ion timed out after 302 seconds
    BEA1-3468FC5E3C698D2A82F7
    This error contained an exception thrown by the message handler.
    Edited by: aris yu on Dec 27, 2009 11:55 PM

    Hi,
    we have to explicitly mention batch while configuaring file adapter.
    i.e. in step 5 : Check file contains multiple messages and mention how many messages u want to process in a batch.
    i.e. if you have 10000 msgs in ur file mention the size as 500. Then it will read 10000 records in 20 batches.
    Now while writing to a file use Append=true property.
    U have to add this property to fileadapter.wsdl (in jca:operation tag) which will be created when u complete the configuaration of file adapter with write operation.
    Regards
    PavanKumar.M

  • Catching an exception thrown from another thread

    I have a SocketServer that creates new threads to handle incoming clients. If one of the threads throw a SQLException is it possible to catch that exception in the SocketServer that created that thread.
    I tried implementing this code and I cannot get the server to catch an exception thrown in the thread. Are my assumptions correct?
    I was reading something about Thread Groups and implementing an uncoughtException() method, but this looked like overkill.
    Thanks for your time!
    Some Example code would be the following where the ClientThread will do a database query which could cause an SQLException. I'd like to catch that exception in my Socket Server
          try
                 new ClientThread( socketServer.accept() , host, connection ).start();
          catch( SQLException e )
                 System.out.println( "DataSource Connection Problem" );
                  e.printStackTrace();
          }

    hehe, why?
    The server's job is to listen for an incoming message from a client and pass it off to a thread to handle the client. Otherwise the server will have to block on that incoming port untill it has finished handling the client and usually there are many incoming clients continuously.
    The reason I would want to catch an exception in the server based on the SQLException thrown in the thread is because the SQLException is usually going to be due to the fact the datasource connection has become unavalable, or needs to be refreshed. This datasource connection is a private variable stored in the socket server. The SocketServer now needs to know that it has to refresh that datasource connection. I would normally try to use somesort of flag to set the variable but to throw another wrench into my dilemma, the SocketServer is actually its own thread. So I can't make any of these variables static, which means I can't have the thread call a method on teh socket server to change the status flag. :)
    I guess I need implement some sort of Listener that the thread can notify when a datasource connection goes down?
    Thanks for the help so far, I figured java would not want one thread to catch another thread's exceptions, but I just wanted to make sure.

  • How to use the exceptions in a RFC ?

    I can use XI (through BPM) to call a RFC and get response from the "Export" of a RFC. But could I get the exception from the "exception" of a RFC ?
    I tried to write a RFC which will generate a exception and I found it in the XI monitor, but how to use it ? i.e. sometimes I need to get the "export", but sometimes I need to get "exception". Is there any documents or examples for it ? thanks.

    Hi,
    <i>But for fault message, I don't know how to send it to a receiver.</i>
    There is no other configurations that you need to do with respect to fault messages.
    If the rfc returns an exception, this message, is passed on to the receiver instead of the response message.
    The receiver of the fault message will be the system that sent the request.
    <i>(If I can use a transformation to mapping it to other message, I think it's ok too.)</i>
    You need not use a BPM, for this, in case you are using it only for fault message handling.
    All you need to do is, create a message mapping, with source and target message types as RFC exceptions and carry out a one to one mapping.This would display the exception coming from the RFC as the fault response st the sender.
    In case, the exception returned from the RFC is not self-explanatory, you could map constants to the target message type(in message mapping) which would explain the reason for the fault.
    Regards,
    Smitha.

  • CORE4007: Internal error: Unexpected Java exception thrown (java.lang.NullP

    Hi,
    Currently we have a custom devoloped Java application deployed in oracle iplanet webserver 7 with JDK 1.6. I am receiving the below errors. The application is not stable. It gives a 500 internal error sometimes when browsing. When i checked the error log. Below is the message.
    CORE4007: Internal error: Unexpected Java exception thrown (java.lang.NullPointerException, no description), stack: java.lang.NullPointerException
    Could you please throw some light on this.

    You need to fix your custom developed app since it is causing the errors and instability. Tell the developers to properly verify the input data and improve their exception handling so you get better error messages that tells you what went wrong.

  • SOAP Runtime: Exception message: Unallowed RFC-XML Tag (SOAP_EINVALDOC)

    Hi,
    Curretly I am trying to test a Webservice on ECC 5.0, Oracle, Windows.
    Below is the error that I am facing.
    SOAP Runtime: SOAP Runtime exception: 111 occurred in method XP_READ_TAG of class CL_SOAP_XP at position 1
    SOAP Runtime: Exception message: Unallowed RFC-XML Tag (SOAP_EINVALDOC)
    In dev_rfc0:
    ERROR 03:20:57: SOAP HTTP Binding CL_SOAP_HTTP_TPBND_ROOT->HANDLE
    STATUSCODE() Received return code 404 ( Not found )
    ERROR 03:20:57: SOAP Message CL_SOAP_MESSAGE->IF_SOAP_MESSAGE
    PART~INITFOR_DESERIALIZE() A SOAP Runtime Core Exception
    occurred in method XP_READ_TAG of class CL_SOAP_XP at position id
    1 with internal error id 111 and error text Unallowed RFC-XML Tag
    (SOAP_EINVALDOC) (fault location is 1 ).
    I have looked up on sdn, and also looked at note 919886.
    I have read several posts regarding creation of RFC Destination in sm59 of Type G, to get over this issue.
    But RFC Destination of type G is not available in ECC 5.0
    Is the error because of incorrect URL mentioned in logical port,
    I am unable to ping the host name mentioned in URL, looks like that machine is not in the network.
    does it mean the wsdl is not located at that particular host.
    Any suggestions would be greatly appreciated.
    Regards,
    Vishnu.

    Hi Anton,
    The complete error message in dev_rfc0:
    INFO 02:15:12: SOAP Transport Binding CL_SOAP_HTTP_TPBND_ROOT
    ->IF_SOAP_TRANSPORT_BINDING~SEND() Try to send message ( DEST =
    ,PATH = ,URL = http://hostname:portno/ ,SOAP Action =
    "ROI_R3_DF.roiSAPCreateOrder" )
    INFO 02:15:12: SOAP Transport Binding CL_SOAP_HTTP_TPBND_ROOT
    ->IF_SOAP_TRANSPORT_BINDING~SEND() Message sent
    INFO 02:15:12: SOAP Transport binding CL_SOAP_HTTP_TPBND_ROOT
    ->IF_SOAP_TRANSPORT_BINDING~RECEIVE() Try to receive message
    ERROR 02:15:12: SOAP HTTP Binding CL_SOAP_HTTP_TPBND_ROOT->HANDLE
    STATUSCODE() Received return code 404 ( Not found )
    ERROR 02:15:12: SOAP Message CL_SOAP_MESSAGE->IF_SOAP_MESSAGE
    PART~INITFOR_DESERIALIZE() A SOAP Runtime Core Exception
    occurred in method XP_READ_TAG of class CL_SOAP_XP at position id
    1 with internal error id 111 and error text Unallowed RFC-XML Tag
    (SOAP_EINVALDOC) (fault location is 1 ).
    After reading your post about the return code 404, I am in a dilemma whether, services in icman are unavailable or
    the services at the location of the wsdl in the other server.
    If you could clarify, it would be great.
    Thanks a lot.
    Vishnu.

Maybe you are looking for

  • Message in BEx Query Designer Formula

    Hi Experts, I need to display message based on the value of the formula result. For Example: If K.F1 =<2.5 Then <Message: ODD> ElseIF K.F1 >2.5 Then <Message: Even> Else <Message: Determine the value> EndIF Thease above messages would be build in the

  • Deletion of Attachmet in Web UI

    Hi All, I  have a requirement where in i need to delete an attachment linked to Service ticket.. in the attachment view..there is no delete button..is there any way how to get the delete button.. Thanks for the inputs. Regards, Udaza

  • Burn DVD on Mac OS 10.7.5, Windows Vista no longer able to read it.

    I burn a DVD today (DVD with 4.7G capacity) using the Finder which I normally do, it finish fine no error, and I was able to read on my Mac 10.7.5, but when I put it to my other laptop with Windows Vista it won't read it.  Please note, I have been bu

  • Pixelation and Banding

    Help - just today most of the photos appear on my display (iMac 24) as severely pixelated and banded in the darker areas. They still print okay. I am using 1.5.6 and Leopard. It is not the calibration on my display as I've imported several photos to

  • SQL Developer SDK wiki(for extensions development) link broken

    Hi, I would like to develop an extension for Oracle SQL Developer. I searched around the web for extension development API but couldn't find any working links. The link http://wiki.oracle.com/page/SQL+Dev+SDK+Getting+Started in the forum sticky as we