BlazeDS сериализация со сложными типами - PullRequest
1 голос
/ 25 октября 2010

Недавно я попал в ситуацию, когда при отправке вложенного объекта из Java во Flex через HashMap объекты были нулевыми. Точнее:

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

будет отправлять ключи как целые числа, но все значения будут нулевыми.

Но при отправке тоже самое с клавишами String:

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

объекты пришли через.

Существуют ли какие-либо ограничения в сериализации BlazeDS при использовании сложных типов в качестве ключей?

1 Ответ

1 голос
/ 25 октября 2010
  1. Включите в свой файл 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. Попробуйте удалить ключевое слово final и попробовать его без него.У меня были проблемы с сериализацией финальных полей с блэйзами

...