chilts / awssum

(deprecated: use aws-sdk) Node.js modules for talking to lots of Web Service APIs.
Other
462 stars 57 forks source link

missing target and body for 'RegisterActivityType' #41

Closed pierreg256 closed 12 years ago

pierreg256 commented 12 years ago

Hi Andy, me again... the RegisterActivityType in the lib/amazon/swf-config.js file was missing the following entries :

I modified the entry to look like that :

    RegisterActivityType : {
        defaults : {
            'Target' : 'RegisterActivityType',
            },
        args : {
            'Target' : {
                'required' : true,
                'type'     : 'special',
            },
            DefaultTaskHeartbeatTimeout : {
                'name'     : 'defaultTaskHeartbeatTimeout',
                'required' : false,
                'type'     : 'json',
            },
            DefaultTaskList : {
                'name'     : 'defaultTaskList',
                'required' : false,
                'type'     : 'json',
            },
            DefaultTaskScheduleToCloseTimeout : {
                'name'     : 'defaultTaskScheduleToCloseTimeout',
                'required' : false,
                'type'     : 'json',
            },
            DefaultTaskScheduleToStartTimeout : {
                'name'     : 'defaultTaskScheduleToStartTimeout',
                'required' : false,
                'type'     : 'json',
            },
            DefaultTaskStartToCloseTimeout : {
                'name'     : 'defaultTaskStartToCloseTimeout',
                'required' : false,
                'type'     : 'json',
            },
            Description : {
                'name'     : 'description',
                'required' : false,
                'type'     : 'json',
            },
            'Domain' : {
                'name'     : 'domain',
                'required' : true,
                'type'     : 'json',
            },
            'Name' : {
                'name'     : 'name',
                'required' : true,
                'type'     : 'json',
            },
            'Version' : {
                'name'     : 'version',
                'required' : true,
                'type'     : 'json',
            }
        },
        body : bodyJson
    },

pls tell me if this is the right way to use that file :-)

Also, it seems that the call to RegisterDomain and RegisterActivityType (maybe others too?) are trying to parse the aws result as XML (instead of JSON) when the answer is not 200. As a consequence, the error message is always "Non-whitespace before first tag"... even though it's possible to infere the real problem with the actual Body attribute of the error object. Unfortunately I wasnt able to identify the exact place in the library where the parse was done --> unable to help here, sorry...

BTW sorry to bother with these tickets, but this library really rocks!!! So I'm willing to use it extensively :-)

Cheers, Pierre.

chilts commented 12 years ago

Hi Pierre,

Wow, you're awesome (no pun intended). I'm really sorry about that, it's a terrible mistake regarding RegisterActivityType but I guess my brain and/or fingers went funny when I added all those operations to each service. :)

As for the XML v JSON thing, I've fixed that in this commit too. I'd set XML as a default in the SWF class so I've taken that out so that it uses the service's preferred format which is JSON in this case. (As an aside, Amazon do some weird things sometimes which is reply with JSON when OK but XML in error, at least in SWF they have been consistent.)

Many many thanks for opening these reports, it's exactly these ones I need when someone uses the library in anger and finds all the mistakes but more importantly the corner cases. :) Keep rocking.

Cheers, Andy

pierreg256 commented 12 years ago

Cool :-)

I am currently working on a small mockup using swf - I'm an amazon architect and most of my time is dedicated to writing code or designing architectures for my beloved customers. When I discovered your library (couple days ago) it just resolved many of my problems in integrating AWS services with modern languages like node!

Thanks for what you do and keep on producing cool software :-)

See you on github ;-)

Cheers, Pierre.


Pierre Gilot

Le 30 juil. 2012 à 21:39, Andrew Chiltonreply@reply.github.com a écrit :

Hi Pierre,

Wow, you're awesome (no pun intended). I'm really sorry about that, it's a terrible mistake regarding RegisterActivityType but I guess my brain and/or fingers went funny when I added all those operations to each service. :)

As for the XML v JSON thing, I've fixed that in this commit too. I'd set XML as a default in the SWF class so I've taken that out so that it uses the service's preferred format which is JSON in this case. (As an aside, Amazon do some weird things sometimes which is reply with JSON when OK but XML in error, at least in SWF they have been consistent.)

Many many thanks for opening these reports, it's exactly these ones I need when someone uses the library in anger and finds all the mistakes but more importantly the corner cases. :) Keep rocking.

Cheers, Andy


Reply to this email directly or view it on GitHub: https://github.com/appsattic/node-awssum/issues/41#issuecomment-7379486