Comment [RemoteClass] fonctionne-t-il dans Flex Actionscript puis-je l'utiliser pour la liaison de données personnalisée?
Actionscript prend en charge un [RemoteClass] balise de métadonnées qui est utilisé dans BlazeDS de fournir des données de liaison de conseils pour mobiliser l'AMF objets binaires de Java à BlazeDS.
Par exemple:
Java:
package échantillon;
public class UserInfo
{
private String userName;
public String getUserName()
{
return userName;
}
public void setUserName(String value)
{
userName = value;
}
}
Actionscript:
[Bindable]
[RemoteClass(alias="sample.UserInfo")]
public class UserInfo
{
public var userName:String=”";
}
Comment exactement est l' [RemoteClass] mis en œuvre dans le BlazeDS cadre et pourriez-vous remplacer ce comportement et de fournir une coutume de liaison de données services d'accès à distance (par exemple, un JSON de la transmission de message système), vous pouvez lier le code Actionscript [Bindable], [RemoteClass] classe?
source d'informationauteur Dougnukem
Vous devez vous connecter pour publier un commentaire.
[RemoteClass(alias="com.exemple.Maclasse")] est un Flex un raccourci pour appeler flash.net.registerClassAlias() :
Pour accéder à ceux enregistrés alias classes au moment de l'exécution (pour écrire un JSON personnalisé de sérialisation de données-cadre), vous pouvez appeler le:
getClassByAlias(aliasName:String):Classe
Recherche une classe qui, auparavant, avait un alias a été enregistré par le biais d'un appel à la registerClassAlias() la méthode.
Pour les sortants de l'encodage à partir de Java, vous devez récupérer un alias de nom de la classe, vous pouvez le faire en appelant flash.utils.describeType() et de l'utilisation de "réflexion" sur votre Actionscript classe de l'objet d'attributs de requête, de propriétés, de méthodes de l'objet.
Par exemple l'extrait de code suivant pour ObjectCodec.comme semble récupérer l'attribut alias à l'aide de "@":
[RemoteClass] est utilisée uniquement sur le Flex côté. Tout cela n'a vraiment est l'appel de la flash.net.registerClassAlias() fonction pour configurer un mappage entre un objet et une télécommande nom de la classe.
Vous pouvez utiliser le
-keep-generated-actionscript
argument de compilateur pour voir ce code est généré et comment cela fonctionne exactement.