Flex Responder onResult, onFault - PullRequest
       2

Flex Responder onResult, onFault

0 голосов
/ 27 ноября 2011

Я хочу создать класс, получить ответ от служб amfphp.

Вот мой код.

public class remoteReporting
{
    var myService:NetConnection;
    var RES;

    public function remoteReporting()
        {
            myService = new NetConnection();
            myService.objectEncoding = ObjectEncoding.AMF0;
            myService.connect("../../Amfphp/");
        }
    public function call(fonction:String,parameters)
        {   
            myService.call(fonction,new Responder(RESULT),parameters);
        }

    private function RESULT(res:Object):void{
                    RES=res;
        Alert(String(res));
    } 

    public function get()
        {
            Alert.show(String(RES));
        }
}

Когда я пишу:

Remote = new remoteReporting();
Remote.call("ExampleService.returnOneParam","var1");

Здесь Alert функции Result, покажите сообщение ок, Но оповещение функции get не показывает ничего.

Я не знаю почему! ты можешь мне помочь !!

Ответы [ 2 ]

1 голос
/ 28 ноября 2011

Я вижу несколько вопросов.Во-первых, разве не получается зарезервированное слово своего рода?Он используется для создания получающей половины свойств получателя / установщика для вашего компонента.

Когда вы делаете это:

public function get()
{
    Alert.show(String(RES));
}

Мне это кажется неполным.Обычно мы делаем что-то вроде этого:

public function get myProperty():Object
{
    Alert.show(String(RES));
}

секунда, переменная RES не является полным определением переменной:

var RES;

Вы не определили тип.Попробуйте что-то вроде этого:

var RES : Object

Я подозреваю, что первое - это ваша проблема;но я также подозреваю, что у вас либо есть код, который не компилируется, либо вы вырезали слишком много кода перед публикацией здесь.

Вы должны рассмотреть вопрос о переименовании функции, чтобы увидеть, дает ли она вам разрешение.Если нет, вам следует подумать о том, чтобы поместить в ваш код оператор отладки и убедиться, что метод действительно выполняется.Для меня не очевидно, исходя из предоставленного вами кода, что метод 'get ()' когда-либо вызывался явным образом, поэтому я не уверен, почему он вообще запустится.

0 голосов
/ 27 ноября 2011

Я не уверен, как у вас настроен amfphp, но вам нужно подключиться к файлу gateway.php в amfphp.

myService.connect("../../Amfphp/gateway.php");

Это предполагает, что вы используете имена файлов по умолчанию и amfphp и.htaccess - ваши настройки могут отличаться.

Также ваша функция RESULT вызывает неверный вызов оповещения - это должен быть Alert.show (String (res)), а не Alert (String (res));

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...