Announcement

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

    update error when field does not exist in dataSource

    SmartClient Version: v11.1p_2019-02-26/Enterprise Deployment (built 2019-02-26)

    Hello, I've got this error in an update operation, before the execution of an associated DMI:

    Code:
    2019-02-26 12:31:28,345 DEBUG RPCManager Request #1 (DSRequest) payload: {
        criteria:{
        },
        values:{
            PREZZO_LORDO_Intero:100
        },
        operationConfig:{
            dataSource:"JTK_TARIFFE",
            repo:null,
            operationType:"update",
            textMatchStyle:"exact"
        },
        componentId:"gestioneTariffeGrid",
        appID:"builtinApplication",
        operation:"updateTariffePivot",
        oldValues:{
            ID_SETTORE_VENDITA_FK:36586,
            SETTORE:"Tribuna Ovest Laterale 2°",
            ID_LISTINO_FK:4315448,
            _embeddedComponents_gestioneTariffeGrid:null
        }
    } 
    2019-02-26 12:31:28,345 INFO  IDACall Performing 1 operation(s) 
    2019-02-26 12:31:28,346 DEBUG DeclarativeSecurity Processing security checks for DataSource null, field null 
    2019-02-26 12:31:28,346 DEBUG DeclarativeSecurity DataSource JTK_TARIFFE is not in the pre-checked list, processing... 
    2019-02-26 12:31:28,346 DEBUG BasicDataSource Validating 1 'JTK_TARIFFE's at path '' 
    2019-02-26 12:31:28,346 DEBUG BasicDataSource Validating a 'JTK_TARIFFE' at path '' 
    2019-02-26 12:31:28,346 DEBUG DSRequest About to free up resources for request of type update on DataSource JTK_TARIFFE 
    2019-02-26 12:31:28,346 DEBUG DSRequest Ignoring freeResources call because this is not a primary request! 
    2019-02-26 12:31:28,346 WARN  RequestContext dsRequest.execute() failed:  
    java.lang.NullPointerException
        at com.isomorphic.datasource.BasicDataSource.toRecord(BasicDataSource.java:1512)
        at com.isomorphic.datasource.BasicDataSource.toRecords(BasicDataSource.java:1446)
        at com.isomorphic.datasource.BasicDataSource.toRecords(BasicDataSource.java:1407)
        at com.isomorphic.datasource.DataSource.validateDSRequest(DataSource.java:3807)
        at com.isomorphic.datasource.DataSource.validateDSRequest(DataSource.java:3752)
        at com.isomorphic.datasource.DataSourceDMI.execute(DataSourceDMI.java:171)
        at com.isomorphic.datasource.DataSourceDMI.execute(DataSourceDMI.java:64)
        at com.isomorphic.datasource.DSRequest.execute(DSRequest.java:2811)
        at com.isomorphic.servlet.IDACall.handleDSRequest(IDACall.java:230)
        at com.isomorphic.servlet.IDACall.processRPCTransaction(IDACall.java:187)
        at com.isomorphic.servlet.IDACall.processRequest(IDACall.java:152)
        at com.isomorphic.servlet.IDACall._processRequest(IDACall.java:119)
        at com.isomorphic.servlet.IDACall.doPost(IDACall.java:79)
    The problem is related to the fact that the (only) value field PREZZO_LORDO_Intero does not exist in the dataSource definition, as actually is a 'dynamic' field in a grid.

    I.E. the user can create many fields of the form NAME+'_'+suffix and the value will be saved (added or updated) in the field NAME, while the suffix will be saved in another column.

    This was working with previous releases, the latest working release I could find is:

    SmartClient Version: v11.1p_2019-01-12/Enterprise Deployment (built 2019-01-12)

    Is it a bug? Or am I doing something invalid?

    Please let me know if you need more details.

    #2
    This was a bug, introduced in mid-January as part of a fix for an unrelated issue. We have now fixed this - please try your use case with tomorrow's build (builds dated February 28 or later) and let us know if you still see the problem.

    Thanks for the bug report.

    Isomorphic Software Support

    Comment


      #3
      I can confirm it's fixed, thank you very much

      Comment

      Working...
      X