Я ищу подкласс RemoteObject. Вместо:
<mx:RemoteObject ... >
<mx:method ... />
<mx:method ... />
</mx:RemoteObject>
Я хочу сделать что-то вроде:
<remoting:CustomRemoteObject ...>
<mx:method ... />
<mx:method ... />
</remoting:CustomRemoteObject>
где CustomRemoteObject
расширяется mx.rpc.remoting.mxml.RemoteObject
примерно так:
package remoting
{
import mx.rpc.remoting.mxml.RemoteObject;
public class CustomRemoteObject extends RemoteObject
{
public function CustomRemoteObject(destination:String=null)
{
super(destination);
}
}
}
Однако при этом и объявлении CustomRemoteObject
в MXML, как указано выше, компилятор flex показывает ошибку:
Не удалось разрешить для реализации компонента
Сначала я подумал, что это как-то связано с CustomRemoteObject
неспособностью что-либо сделать, несмотря на то, что (или с тех пор) у него не было никаких изменений, кроме как в отношении названия. Итак, я скопировал исходный код из mx.rpc.remoting.mxml.RemoteObject
в CustomRemoteObject
и изменил его так, чтобы разница only была рефакторингом класса и имени пакета. Но все равно та же ошибка.
В отличие от многих компонентов MXML, я не могу cmd + щелкнуть <mx:method>
во FlashBuilder, чтобы открыть исходный код. Кроме того, я не нашел ссылку в mx.rpc.remoting.mxml.RemoteObject
, mx.rpc.remoting.RemoteObject
или mx.rpc.remoting.AbstractService
и не смог найти ее источник в Интернете.
Что приводит меня к вопросам в названии:
Что
точно является
<mx:method>
? (да, я знаю, что это объявление метода
RemoteObject
, и я знаю, как его использовать, но это необычно в отношении других компонентов)
Почему моя попытка подкласса
RemoteObject
провалилась, несмотря на то, что это фактически было переименованием? Возможно, корень, почему
mx.rpc.remoting.mxml.RemoteObject
в качестве объявления MXML может принимать
<mx:method>
дочерние теги, но источник указанного класса не может, когда рефакторинг только в имени?