Y a-t-il un moyen d'exclure les propriétés primitive et d'objet dans un objet sérialisable à partir de la sérialisation GWT?
public class Provider implements Serializable{ public Provider() { } //Id like to exclude this property: private String password; // private String address1; private String address2; private String companyName; private String phone; }
4 Réponses :
Vous ne pouvez pas simplement le déclarer transitoire?
Ajoutez transitoire sur le champ p>
Si vous voulez vraiment éviter d'utiliser le mot-clé transitoire em>, vous voudrez peut-être examiner les sérialiseurs de champ personnalisés forts>. P>.
Sur mon dernier projet GWT, je les ai utilisés pour sérialiser des classes immuables, car GWT-RPC avait des limitations pour celles-ci. P>
C'est une fonctionnalité mal documentée et la meilleure explication que j'ai trouvée à l'époque n'était pas dans la documentation GWT, mais sur Cette excellente page wiki WOGWT . Vous pouvez également trouver quelques exemples dans GWT com.google.gwt.user.client.rpc.core package, puisque GWT utilise beaucoup de ceux-ci. P>
Veuillez noter que les fournisseurs personnalisés ont encore des problèmes, tels que numéro 2931 et numéro 3315 A >. En outre, je n'aime pas la façon dont ils sont définis: au lieu d'utiliser des méthodes statiques, il aurait été préférable de laisser les utilisateurs à mettre en place une interface Néanmoins, cela fonctionne, et il est bon de les avoir dans des cas spécifiques. P> personnalisée
J'espérais quelque chose comme Annotation spéciale P> blockQuote>
Je pense que ce que vous cherchez est
@gwttransient code> p>
@gwttransient code>, une annotation qui dit à GWT RPC de traiter un champ comme si Il a été marqué avec le Java transitoire Mot clé, même si ce n'est pas. P>
Cette annotation signifie la même chose comme mot-clé code> transitoire code> mais il est ignoré par toute sérialisation systèmes autres que GWT. Généralement le
transitoire code> mot-clé doit être utilisé dans préférence à cette annotation. Cependant, pour les types utilisés avec plusieurs Systèmes de sérialisation, il peut être utile. p> blockQuote>
Référence: @GwtTransient p>