CXF несколько разработчиков для одного адреса - PullRequest
1 голос
/ 11 июля 2011

возможно ли иметь несколько разработчиков с одним адресом? Так что-то вроде:

<jaxws:endpoint id="ws1" implementor="#ws1" address="/ws" />
<jaxws:endpoint id="ws2" implementor="#ws2" address="/ws" />

Спасибо --MB

1 Ответ

0 голосов
/ 11 июля 2011

Полагаю, у вас огромная конечная точка с множеством операций.Если вы выполняете контракт сначала разработки, CXF создаст один класс для каждой конечной точки, содержащий один метод для каждой операции.Я считаю, что это единственный способ.Однако вы можете использовать этот класс конечных точек только как фасад, делегируя нескольким специализированным классам (по одной строке на операцию, вот и все).

Конечно, вы всегда можете реорганизовать свой WSDL, чтобы иметь несколько конечных точек, но, вероятно, этоне вариант для вас.Насколько я знаю, нет способа разделить реализацию на несколько классов, класс должен полностью реализовать интерфейс WS.

В Spring WS, однако, любой метод может обработать SOAP-запрос, пометив его как @PayloadRoot внутри класса.отмечены @Endpoint.Это выглядит как отличная функция в вашем случае, поскольку вы можете охватить реализацию столько классов, сколько хотите (даже один класс на операцию SOAP!)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...