У нас есть довольно большое приложение с большим количеством объектов, проходящих между flex и java. В одном объекте, в частности, есть тонкая ошибка:Поля несовместимы при передаче объекта с Java на Flex, как его исправить?
Это простой старый объект Java, передаваемый на передний конец flex (с использованием blazeds maker/consumer messaging). POJO имеет два свойства строки, например:
myShirt.color = "brown";
myShirt.description = "winter shirt with 3 buttons";
, когда я получаю объект на веб-интерфейсе, в Flex, свойства объекта-значения меняются местами, как в:
myShirt.color = "winter shirt with 3 buttons";
myShirt.description = "brown";
Очевидно, что это какой-то тип путаницы, когда объекты сериализуются/десериализуются. Поскольку они оба являются Strings, кажется, что что-то путается при чтении/записи объектов.
Оба объекта точно отражают друг друга с помощью параметров и методов в том же порядке в файлах с одинаковыми именами.
Как исправить сериализацию, желательно без необходимости ее самостоятельной обработки?
Заранее благодарим за любые предложения.
Я сомневаюсь, что это простая ошибка, не связанная с сериализацией. Главным образом потому, что большинство наших объектов, подобных этим, заполняются из спящих запросов непосредственно перед отправкой по сети. Там мало места для опечаток. Тем не менее, я вернусь к этой проблеме в ближайшие несколько дней и буду молиться, чтобы вы были правы! В противном случае это потенциально неприятная ошибка для исправления. – gMale
оказалось, что мы оба правы. На самом деле это была действительно простая ошибка ... но это не было в нашем исходном коде, который слишком структурирован, чтобы оставить место для опечатки. Проблема? Человек, который загружает базу данных, переносил имена полей в сценарий, который они недавно писали, чтобы заполнить базу данных! Это была проблема с данными: вывоз мусора, вывоз мусора. – gMale
Ага ... рад слышать, что это сработало для вас. –