SOAP Web-сервисы: алиасинг объектов в ответ? - PullRequest
0 голосов
/ 21 июня 2010

Если веб-служба возвращает граф объектов, где несколько объектов появляются несколько раз, обязательно ли будут дублироваться данные об этих объектах в транспортном формате?

Иными словами: при сериализации Java записывается состояние каждого объектатолько один раз, и последующие ссылки на этот объект являются простыми указателями в потоке сериализации.Существует ли (предпочтительно переносимый, т.е. совместимый с WI-Basic-Profile) способ добиться того же самого при (не) маршалинге запроса или ответа веб-службы?

Пример: данные классы

class Project {
    Task[] tasks;
}

class Task {
    User assignee;
}

class User {
    // some data
}

Предполагается, что веб-сервис вернет Project, и я хотел бы отправлять каждый User не более одного раза, независимо от того, сколько задач ему назначено в проекте.

1 Ответ

0 голосов
/ 29 июня 2010

Похоже, что SOAP может сериализовать графы объектов с помощью encodingStyle, но использование encodingStyle противоречит базовому профилю WS-I 1.1. (источник)

...