http://www.jsonrpc.org/specification

not draft anymore...

mic

2013/3/1 Phyo Arkar <[email protected]>:
> I c , JSONRPC2 is still in draft right?
> we are not using JSONRPC2 yet so that gave us problem.
>
>
> On Sat, Mar 2, 2013 at 2:12 AM, Niphlod <[email protected]> wrote:
>>
>> yep, to support keyword arguments. It was an oversight of jsonrpc 1 vs 2
>> specs.
>>
>> trunk has it fixed, along with "specific" 1 vs 2 support (i.e. jsonrpc and
>> jsonrpc2 decorators)
>>
>>
>> On Friday, March 1, 2013 8:00:30 PM UTC+1, Phyo Arkar wrote:
>>>
>>> Any reason there for ** ?
>>>
>>> On Sat, Mar 2, 2013 at 12:40 AM, Phyo Arkar <[email protected]> wrote:
>>>>
>>>> The bug is at:
>>>>
>>>> gluon/tools.py
>>>>
>>>>             s = methods[method](**params)
>>>>
>>>> it should be
>>>>             s = methods[method](*params)
>>>>
>>>>
>>>> On Sat, Mar 2, 2013 at 12:16 AM, Phyo Arkar <[email protected]>
>>>> wrote:
>>>>>
>>>>> We got a problem when we upgrade to 2.3.2 in JSONRPC called via
>>>>> qooxdoo.
>>>>>
>>>>> "TypeError: testlogin() argument after ** must be a mapping, not list",
>>>>> "JSONRPCError"
>>>>>
>>>>>
>>>>> Which worked fine in 2.2.1
>>>>>
>>>>>
>>>>>
>>>>> Below is code for controller :
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> @service.jsonrpc
>>>>> def testlogin(username, password):
>>>>>     status = 0
>>>>>     authed = auth.login_bare(str(username), str(password))
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>     if authed:
>>>>>         status = 1
>>>>>     return dict(status=status)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> JSONRPC request code is :
>>>>>
>>>>> jsonrpc_login.callAsync(handler_login,
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>                      "testlogin",
>>>>>                      textbox_username.getValue(),
>>>>>                      textbox_password.getValue());
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> Full JS Code (qooxdoo) :
>>>>>
>>>>> qx.Class.define("logintest.login", {
>>>>>     extend: qx.ui.container.Composite,
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>     construct : function() {
>>>>>         this.base(arguments);
>>>>>         this.setLayout(new qx.ui.layout.VBox());
>>>>>         var center_hbox = new qx.ui.container.Composite(new
>>>>> qx.ui.layout.HBox());
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>         var loginform = new qx.ui.form.Form();
>>>>>         var textbox_username = new qx.ui.form.TextField();
>>>>>         var textbox_password = new qx.ui.form.PasswordField();
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>         var button_login = new qx.ui.form.Button("Login",
>>>>> "logintest/test.png");
>>>>>
>>>>>         loginform.add(textbox_username, "User Name");
>>>>>         loginform.add(textbox_password, "Password");
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>         loginform.addButton(button_login);
>>>>>
>>>>>         var jsonrpc_login = new
>>>>> qx.io.remote.Rpc("/auth_test/default/call/jsonrpc");
>>>>>
>>>>>         center_hbox.add(new qx.ui.core.Spacer(), {flex: 1});
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>         center_hbox.add(new qx.ui.form.renderer.Single(loginform));
>>>>>         center_hbox.add(new qx.ui.core.Spacer(), {flex: 1});
>>>>>
>>>>>         this.add(new qx.ui.core.Spacer(), {flex: 1});
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>         this.add(center_hbox);
>>>>>         this.add(new qx.ui.core.Spacer(), {flex: 1});
>>>>>
>>>>>         var handler_login = function(result, ex, id)
>>>>>         {
>>>>>             if (ex == null)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>             {
>>>>>                 alert(result.status);
>>>>>             } else {
>>>>>                 console.log("=Err=");
>>>>>                 console.log(ex);
>>>>>             }
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>         };
>>>>>
>>>>>         button_login.addListener("execute", function(e) {
>>>>>            jsonrpc_login.callAsync(handler_login,
>>>>>                      "testlogin",
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>                      textbox_username.getValue(),
>>>>>                      textbox_password.getValue());
>>>>>         });
>>>>>     },
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>     members : {
>>>>>
>>>>>     }
>>>>> });
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>
>> --
>>
>> ---
>> You received this message because you are subscribed to the Google Groups
>> "web2py-users" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> For more options, visit https://groups.google.com/groups/opt_out.
>>
>>
>
>
> --
>
> ---
> You received this message because you are subscribed to the Google Groups
> "web2py-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/groups/opt_out.
>
>

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to