Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
Clear All
new posts

    exception during DMI crashes Tomcat

    We have found one particular issue that is causing Smartgwt to throw an uncaught exception and that causes tomcat to crash. We fixed the issue but we are not convinced that this is the end of it.

    We have a DMI:
    Code:
    public class RapidCharge {
    
    	public DSResponse room(DSRequest req) throws Exception {  
    		DSResponse response = new DSResponse();  
    		response.setData("Just plain text");
    		//response.setDate(new LinkedList<Map<String,Object>());
    		return response;  
    	} 
    }
    In the DSResponse, if we dont set the data or we set it with text or we set it with an empty list and we have our Operation Binding configured, like so:

    Code:
    <operationBinding operationType="fetch" operationId="rapidRoomSearch" serverMethod="room" outputs="ID,IDINVOICE,IDRESERVATION,Property,Status,NameFirstName,NameLastname,ConWorkTelephone,ConCellNumber">  
                <serverObject   
                    lookupStyle="new"   
                    className="hti.nova.server.DMI.operations.RapidCharge"   
                />  
            </operationBinding>	
    	</operationBindings>
    This causes smartgwt to throw an uncaught exception, which crashes everything. If we remove the outputs columns, like so:

    Code:
    <operationBinding operationType="fetch" operationId="rapidRoomSearch" serverMethod="room">  
                <serverObject   
                    lookupStyle="new"   
                    className="hti.nova.server.DMI.operations.RapidCharge"   
                />  
            </operationBinding>
    Then it works. I have made a fix and upgraded this morning, it still continued with the same issue, not sure if something similar is happening else where

    #2
    This was totally unrelated to thread you posted in, where the user is claiming an intermittent Tomcat issue that is neither an exception nor crashes Tomcat, so we moved it to it's own thread.

    The code you've shown is very typical usage, well-covered by automated tests.

    The first step would be to post a log of the exception you're seeing (we're very surprised you would omit this!).

    You've also forgotten to post what version you're using - don't forget to post your *full* version.

    Comment


      #3
      Please read my post from the start, the last bit of code regarding the DMI, setting no data in the dsResponse and having specific outputs in the operation binding is very much related to my first post.

      The DMI code, when initiated by the user (intermittently and at completely random times) from the client side causes smartgwt to throw a severe uncaught exception. This exception causes smartgwt to become unresponsive, causes tomcat to fall over and then redeploys, ultimately causing serious validation issues. The only way to get smartgwt to react normally is to restart tomcat. The app is then fine till the user performs the same action.

      In my development environment I can also now recreate this very scenario time and time again, as soon as I perform the DMI task smartgwt starts with validation issues. Only restarting causes it to function again.

      Versions:

      gwt 2.5.1
      smartgwtpower-5.0p

      Here is the errors in my dev environment
      Code:
      [ERROR] [nova] - 19:46:33.132:XRP5:WARN:Log:TypeError: newData is null
      Stack from error.stack:
          isc.A.fetchRemoteDataReply() @ nova/sc/modules/ISC_DataBinding.js:1858
          [c]Class.fireCallback() @ nova/sc/modules/ISC_Core.js:290
          [c]Class.fireCallback() @ nova/sc/modules/ISC_Core.js:358
          DataSource.fireResponseCallbacks() @ nova/sc/modules/ISC_DataBinding.js:731
          DataSource._completeResponseProcessing() @ nova/sc/modules/ISC_DataBinding.js:728
          DataSource._handleSCServerReply() @ nova/sc/modules/ISC_DataBinding.js:2470
          [c]Class.fireCallback() @ nova/sc/modules/ISC_Core.js:290
          [c]Class.fireCallback() @ nova/sc/modules/ISC_Core.js:358
          anonymous() @ nova/sc/modules/ISC_DataBinding.js:1679
          $wnd.isc.RPCManager.fireReplyCallback() @ :263
          [c]RPCManager.fireReplyCallbacks() @ nova/sc/modules/ISC_DataBinding.js:1686
          [c]RPCManager.performOperationReply() @ nova/sc/modules/ISC_DataBinding.js:1677
          RPCManager._performTransactionReply() @ nova/sc/modules/ISC_DataBinding.js:1657
          [c]RPCManager.performTransactionReply() @ nova/sc/modules/ISC_DataBinding.js:1572
          anonymous() @ nova/sc/modules/ISC_Core.js:76
          [c]Class.fireCallback() @ nova/sc/modules/ISC_Core.js:290
          [c]Comm.performXmlTransactionReply() @ nova/sc/modules/ISC_Core.js:1263
          anonymous() @ nova/sc/modules/ISC_Core.js:76
          [c]Class.fireCallback() @ nova/sc/modules/ISC_Core.js:290
          Comm._fireXMLCallback() @ nova/sc/modules/ISC_Core.js:1243
          Comm.sendXmlHttpRequest/_13() @ nova/sc/modules/ISC_Core.js:1250

      Comment


        #4
        Unfortunately, now that we see you really *did* mean to post in that other thread, your post makes even less sense.

        You're claiming that SmartGWT throws a "severe uncaught exception" that affects Tomcat.

        Unfortunately what you've posted is a stack trace for a JavaScript error, which happened inside the browser, and cannot possibly cause Tomcat to suddenly crash; in fact Tomcat cannot even be directly aware of this exception happening in the user's browser.

        If you think there really is a *server-side* exception being thrown by SmartGWT, then show the stack trace for that exception.

        Comment

        Working...
        X