Разница во времени между JAX-RPC и JAX-WS

Я перевожу веб-сервис с jax-rpc на jax-ws (для Websphere AppServer), где я обнаружил следующую разницу для поля с типом данных календаря

JAX-RPC:

2019-01-21T09: 15: 14.633Z (UTC)

JAX-WS:

2019-01-21T16: 12: 37 + 07: 00 (часовой пояс сервера)

Я заметил, что когда jax-b используется с JAX-WS, тип данных Calendar преобразуется в XMLGregorianCalendar, который ожидается в jax-ws. Но разница в часовом поясе наблюдается с этой миграцией, где часовой пояс не был нормализован к UTC.

Также ниже приведены ссылки, в которых говорится, что типы данных XSD 1.1 dataTime сохраняют информацию о часовом поясе сервера в отличие от преобразования в UTC в XSD 1.0.

  1. https://www.w3.org/TR/xmlschema11-2/
  2. https://www.w3.org/TR/xmlschema-2/

Я пытаюсь сгенерировать wsdl, используя специальный wsgen-инструмент Websphere с версией xsd 1.0. Мне любопытно узнать, почему тип данных dateSime XSD 1.0 сохраняет часовой пояс сервера.

Чтобы проверить, поддерживают ли инструменты Websphere XSD 1.1, я попытался скомпилировать схему, содержащую типы данных xsd 1.1, что привело к ошибке. https://blogs.oracle.com/rammenon/xml-schema-11-ndash-what-you-need-to-know

Может кто-нибудь подсказать по этому поводу? Это различие специфично для Websphere?

0 ответов

Другие вопросы по тегам