Пределы сообщений JAXB или StAX

В настоящее время я разрабатываю WebService в среде Bea Websphere 6.1 с реализацией Axis 2, я пытаюсь соблюдать текущие стандарты для веб-служб (JAXB, JAXWS, StAX ...).

Как долго может быть сообщение XML на этой платформе?

Я искал, но не нашел ничего, связанного с этой темой.

Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
1
0
1 705
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Не очень много знаю об ограничениях вашей платформы, но в целом жестких ограничений нет. Использование Axis со стандартным стеком SOAP возьмет конверт SOAP и создаст его представление в памяти (например, dom или dom), что сделает ваш размер кучи ограничением. В случае использования очень больших XML-файлов лучшим способом было бы использовать STaX, который представляет собой библиотеку парсера потоковой передачи XML. Это снимет все ограничения на размер XML, который вы можете использовать или создать.

Да, из-за способа работы Jax-ws и SOAP вся полезная нагрузка привязывается: либо к дереву (более высокое использование памяти), либо к POJO / beans (немного меньшее использование памяти). В любом случае использование памяти будет пропорционально размеру сообщения.

Хотя теоретически возможно создать потоковый / фрагментированный интерфейс для обработки Soap, его нетривиально реализовать, и в настоящее время ни один стек не делает этого.

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