2010-10-25 4 views
1

Je suis récemment arrivé dans une situation où envoyer un objet imbriqué de Java à Flex via un HashMap les objets étaient NULL. Plus précisément:Sérialisation BlazeDS avec des types complexes

final Map<Integer, List<String>> tempMap = new HashMap<Integer, List<String>>(); 

enverrait les clés sous forme d'entiers, mais les valeurs étaient toutes nulles.

Mais lors de l'envoi de la même avec les touches de chaîne:

final Map<String, List<String>> tempMap = new HashMap<String, List<String>>(); 

les objets sont venus à travers.

Existe-t-il des restrictions dans la sérialisation BlazeDS lors de l'utilisation de types complexes en tant que clés?

Répondre

1
  1. Allumez les erreurs de propriété dans votre services.config.xml:

    <channels> 
    <channel-definition id="YourChannel" class="mx.messaging.channels.AMFChannel"> 
    <endpoint url="http://{server.name}:{server.port}/{context.root}/messagebroker/amf" class="flex.messaging.endpoints.AMFEndpoint" /> 
    
    <properties> 
        <polling-enabled>false</polling-enabled> 
        <serialization> 
        <ignore-property-errors>false</ignore-property-errors> 
        <log-property-errors>true</log-property-errors> 
        </serialization> 
    </properties> 
    
    </channel-definition> 
    </channels> 
    
  2. Essayez de supprimer mot-clé final et l'essayer sans elle. J'ai eu des problèmes de sérialisation des champs finaux avec blazeds

Questions connexes