우리는/WEB-INF/services에 axis2 webservices를 사용하여 WAR를 압축합니다.Axis 1.6.2/Rampart 1.6.2에서 Axis 1.7.2/Rampart 1.7.0으로 업그레이드 할 때 암호 처리기가 호출되지 않음
Axis 1.5.1을 사용하여 개발 한 다음 몇 년 전에 Axis 1.6.2/Rampart 1.6.2로 업그레이드했습니다. 이제 Axis 1.7.2/rampart 1.7.0으로 업그레이드해야합니다.
웹 서비스에 사용자 이름 보안을 추가합니다. 우리는 또한 예제 webservices 클라이언트 응용 프로그램을 패키지화합니다. 모든 것이 잘 작동했습니다. 그러나 일단 Axis 1.7.2/Rampart 1.7.0으로 업그레이드하면 PasswordCallBackHandler.handle 메소드가 호출되지 않습니다. 이와 같이 우리의 웹 서비스 클라이언트는 고장났습니다. 이것은 요청 SOAP에 username/pwd를 추가하기 위해 암호 콜백 client.axis2.xml을 추가하는 방법입니다.
<axisconfig name="AxisJava2.0">
<module ref="rampart"/>
<parameter name="OutflowSecurity">
<action>
<items>UsernameToken</items>
<user>system</user>
<passwordCallbackClass>com.web.ws.connector.CSPWCBHandler</passwordCallbackClass>
<passwordType>PasswordText</passwordType>
</action>
내 services.xml 파일은 다음과 같습니다 :
<service name="labware_weblims_listFunctions" targetNamespace="http://www.labware.com/webservice">
<description>Service description for labware_weblims_listFunctions</description>
<schema schemaNamespace="http://www.labware.com/webservice"/>
<parameter name="ServiceClass">com.web.ws.service.ListService</parameter>
<parameter name="disasbleREST">true</parameter>
<operation name="listMethods">
<messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
</operation>
<module ref="soapmonitor"/>
<module ref="rampart"/>
<parameter name="InflowSecurity">
<action>
<items>UsernameToken</items>
<passwordCallbackClass>com.web.ws.control.PWCBHandler</passwordCallbackClass>
</action>
</parameter>
</service>
가 나는 1.7.2 일 휴식 축으로 업그레이드합니다. PasswordCallBackHandlers가 호출되지 않습니다.
Services.xml dtd를 찾았지만 찾지 못했습니다. CallBackHandlers를 RampartConfig로 추가해야 할 것입니다. 문제를 해결할 다른 방법이 있습니까? 어떤 도움을 주시면 감사하겠습니다.
안녕하세요 @Vishwanath 저는 wso2와 함께 ws-trust에서 작업 할 때 문제가 있습니다. http://stackoverflow.com/questions/43471342/axisfault-missing-wssesecurity-header-in-request –