-- Marco <[EMAIL PROTECTED]> wrote
(on Wednesday, 27 August 2008, 04:03 PM +0200):
> We have just come across the same issue.. it appears only when using a Rest
> call with a single parameter. For example
> 
>     /**
>      * Say Hello
>      *
>      * @param string $who
>      * @return string
>      */
>     function sayHello($who)
>         {
>         return "Hello $who, Good Day";
>         }
> 
> doesn't work whilst
> 
>     /**
>      * Say Hello
>      *
>      * @param string $who
>      * @param string $day
>       * @return string
>      */
>     function sayHello2($who, $day)
>         {
>         return "Hello $who, Good $day";
>         }
> 
> does work.
> 
> I've done some tracing and have narrowed it down to the client class. Applying
> the following change
> 
> Index: Rest/Client.php
> ===================================================================
> --- Rest/Client.php    (revision 11081)
> +++ Rest/Client.php    (working copy)
> @@ -237,7 +237,7 @@
>          } else {
>              // More than one arg means it's definitely a Zend_Rest_Server
>              if (sizeof($args) == 1) {
> -                $this->_data[$method] = $args[0];
> +                $this->_data['method'] = $method;
>                  $this->_data['arg1']  = $args[0];
>              } else {
>                  $this->_data['method'] = $method;
> 
> 
> Seems to get it working again but i'm unsure if this will break anything else.
> If you could confirm I will raise a bug in the issue tracker and will submit a
> patch

Yes -- please create the issue and post the patch.

-- 
Matthew Weier O'Phinney
Software Architect       | [EMAIL PROTECTED]
Zend Framework           | http://framework.zend.com/

Reply via email to