У нас есть услуга оси 2, которая вызывает еще одну услугу. Для одного вызова службы нам нужна защита валовой стороны. Мы сконфигурировали это в нашем axis2.xml. Однако в другом вызове службы я хочу исключить вал, поскольку никакая безопасность не требуется для этого вызова. Однако, поскольку есть только 1 axis2.xml, который является общим, поэтому он включает в себя вал в обоих вызовах. Как я могу исключить это.
Вы можете добавить модуль Rampart на уровне обслуживания или даже на уровне работы, например
<service name="name of the service" scope="name of the scope" class="full qualifide name the service lifecycle class" targetNamespace="target namespase for the service">
<Description> The description of the service </Description>
<module ref="rampart" />
<operation name="echoString" mep="operation MEP">
<actionMapping>Mapping to action</actionMapping>
<module ref="rampart" />
<messageReceiver class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
</operation>
</service>
Конфигурация Axis 2 http://axis.apache.org/axis2/java/core/docs/axis2config.html#Service_Configuration
Для клиентов
REPOSITORY_PATH должен иметь папку с именем 'modules', а rampart mar должен находиться внутри этой папки.
ConfigurationContext ctx = ConfigurationContextFactory.createConfigurationContextFromFileSystem(REPOSITORY_PATH, null);
SimpleServiceStub stub = new SimpleServiceStub(ctx, "http://sbswsvm1426ou:9091/axis2/services/SimpleService?wsdl");
stub._getServiceClient().engageModule("rampart");