[Flow] Error in JSON RPC request

Zedd zedd at akii.de
Sun Feb 22 10:17:30 CET 2015


Hi,

how about implementing a SenchaJsonRpcRequest?

Greetings,

Philipp

> On 21 Feb 2015, at 17:18, toco at aimeos.org wrote:
> 
> Hi all
> 
> For the administration interface, there's a data exchange using JSON RPC via Sencha ExtDirect. It sends messages to the server like this:
> 
> [{"jsonrpc":"2.0","method":"Product_Type.searchItems","params":{"site":"default"},"id":2},{"jsonrpc":"2.0","method":"Service_Type.searchItems","params":{"site":"default"},"id":3},...]
> 
> Unfortunately, I get a HTTP 500 back because the following error occurs:
> 
> #1210858767: Invalid argument name (must be a non-empty string).
> TYPO3\Flow\Mvc\Exception\InvalidArgumentNameException thrown in file
> /Aimeos/src/flow/Data/Temporary/Development/Cache/Code/Flow_Object_Classes/TYPO3_Flow_Mvc_ActionRequest.php in line 448.
> 
> After digging a little bit around I've found out that the JSON payload is decoded by Flow and the error is caused by the numerical indexes of the resulting array:
> 
> 00526: error_log( print_r( $arguments, true ) );
> 00527:   foreach ($arguments as $key => $value) {
> 00528:    $this->setArgument($key, $value);
> 00529:   }
> 00530:  }
> 
> Array
> (
>    [0] => Array
>        (
>            [jsonrpc] => 2.0
>            [method] => Product_Type.searchItems
>            [params] => Array
>                (
>                    [site] => default
>                )
> 
>            [id] => 2
>        )
> 
>    [1] => Array
>        (
>            [jsonrpc] => 2.0
>            [method] => Service_Type.searchItems
>            [params] => Array
>                (
>                    [site] => default
>                )
> 
>            [id] => 3
>        )
> )
> 
> My route for the action is like this:
> 
> -
>  name: 'Admin JSON RPC request'
>  uriPattern: 'admin/do'
>  defaults:
>    '@package':    'Aimeos.Shop'
>    '@controller': 'Admin'
>    '@action': 'do'
>    '@format': 'html'
> 
> How can I circumvent decoding the paylod? I've tried with '@format': 'json' too but without difference.
> 
> Any help is appreciated
> 
> 
> Toco
> 
> _______________________________________________
> Flow mailing list
> Flow at lists.typo3.org
> http://lists.typo3.org/cgi-bin/mailman/listinfo/flow



More information about the Flow mailing list