Xstream / HTTP сервис - PullRequest
       27

Xstream / HTTP сервис

0 голосов
/ 27 января 2010

Мы работаем с несколькими веб-сайтами, которые используют один и тот же функциональный бэкэнд, работающий как библиотека. Бэкэнд состоит из нескольких компонентов с большим количеством объектов, разделяемых между ними. Теперь нам нужно разделить компонент выполнения правил без сохранения состояния в другой контейнер по соображениям безопасности. Было бы здорово, если бы у меня был доступ ко всем объектам бэкэнда без проблем в компоненте правил (вместо определения нового интерфейса и объектов / адаптеров).

Я бы хотел использовать механизм RPC, который будет беспрепятственно поддерживать передачу наших java pojos (некоторые из них - это hibernate bean) по проводам. Веб-сервисы, такие как JAXB, Axis и т. Д., Нуждаются в небольшом количестве платы и конфигурации для каждого объекта. Принимая во внимание, что те, кто использует сериализацию Java, кажутся простыми, но я обеспокоен проблемами обратной / прямой совместимости.

Мы используем Xstream для сериализации наших объектов в постоянное хранилище и довольны до сих пор. Но ни одна из популярных сред rpc / webservice, кажется, не использует xstream для сериализации. Можно ли использовать xstream и отправлять мои объекты по HTTP, используя мою собственную реализацию? ИЛИ будет ли работать Java-сериализация ИЛИ есть ли лучшие альтернативы?

Заранее спасибо за ваш совет.

1 Ответ

0 голосов
/ 27 января 2010

Хорошая вещь со стандартной сериализацией Java заключается в том, что она генерирует двоичный поток, который является немного более эффективным с точки зрения пространства и пропускной способности, чем любой из этих механизмов XML-сериализации. Но, как вы писали, XML может быть более совместимым с обратной / прямой совместимостью, и его легче анализировать и изменять вручную и / или скриптами, если возникает необходимость. Это компромисс; если вам требуется длительное хранение, то рекомендуется избегать простой сериализации.

Я счастливый пользователь XStream. Ноль проблем пока.

...