Quantcast
Channel: SmartClient Forums
Viewing all articles
Browse latest Browse all 4756

[9.1 -> 10.0] DataSourceField.length changed behavior

$
0
0
SmartClient Version: v10.0p_2014-09-30/EVAL Deployment (expires 2014.11.29_06.38.33) Licensed to: Isomorphic Software (#ISC_EVAL_NIGHTLY)

I've just found another difference in behavior from 9.1 to 10.0, regarding to DataSourceField.length
I've got a field definition like this:
Code:

        <field sqlType="varchar" sqlLength="1" name="SUPER_ADMIN" type="boolean" required="true"
 length="1" hidden="true" sqlStorageStrategy="singleCharTF"/>

And I'm trying to insert a record. The operationBinding for add is:
Code:

        <operationBinding operationType="add" serverMethod="add" requiresRole="ROLE_ADMIN,ROLE_USERADMIN">
            <values fieldName="ID_APP" value="$httpParameters.appID"/>
            <values fieldName="SUPER_ADMIN" value="false"/>
            <serverObject lookupStyle="spring" bean="gruppiDMI"/>
        </operationBinding>

The documentation says, about DataSourceField.length:
"Applicable only to fields of text type."

So I think that previously it was ignored, in my case.
Now I got a validation error:
Code:

2014-10-02 16:25:45,330 DEBUG RPCManager Request #1 (DSRequest) payload: {
    values:{
        NOME_GRUPPO:"dmk",
        DES_GRUPPO:"Marketing Director",
        DES_GRUPPO_EN:"Marketing Director"
    },
    operationConfig:{
        dataSource:"GRUPPI",
        operationType:"add",
        textMatchStyle:"exact"
    },
    componentId:"gestioneGruppi_Grid",
    appID:"builtinApplication",
    operation:"GRUPPI_add",
    oldValues:{
        NOME_GRUPPO:"dmk",
        DES_GRUPPO:"Marketing Director",
        DES_GRUPPO_EN:"Marketing Director"
    },
    criteria:{
    }
}
2014-10-02 16:25:45,330 INFO  IDACall Performing 1 operation(s)
2014-10-02 16:25:45,330 DEBUG DeclarativeSecurity Processing security checks for DataSource null, field null
2014-10-02 16:25:45,330 DEBUG DeclarativeSecurity DataSource GRUPPI is not in the pre-checked list, processing...
2014-10-02 16:25:45,334 DEBUG ValidationContext Adding validation errors at path '/GRUPPI/SUPER_ADMIN/SUPER_ADMIN': {errorMessage=Must be no more than 1 characters long}
2014-10-02 16:25:45,335 INFO  Validation Validation error: [
    {
        SUPER_ADMIN:{
            errorMessage:"Must be no more than 1 characters long"
        }
    }
]

obviously, removing the unnecessary length="1" fixes the problem.

Now my question: is it a permanent change, or is something you may return to previous behavior?

Viewing all articles
Browse latest Browse all 4756

Trending Articles