CXF 기반 SOAP 웹 서비스가 있으며 SOAP UI에서 이러한 서비스를 아무런 문제없이 수행하고 있습니다. 이 서비스 중 하나를 사용하여 barebone WSO2 ESB 4.6.0에 ProxyService를 설치했습니다. 프록시 서비스가 관리 콘솔의 "Try it"옵션을 사용하는 것 같습니다. SOAPUI에서 액세스하려고하면 WSO2 ESB가 불평하기 시작합니다WSO2 프록시 서비스 URL이 SOAPUI와 작동하지 않음
"작업에 대한 엔드 포인트 참조 (EPR)는/services/HelloWorldProxyService 및 WSA Action =입니다.이 EPR에 이전에 도달 할 수 있었다면 서버 관리자에게 문의하십시오. "
이제 SOAPUI에서 끝점 URL을 http : // hostname : 8280/services/service-name.port-name/operation-name으로 변경하면 모든 작업이 시작됩니다.
누구든지이 문제를 해결하는 방법을 알고 있습니까? WSO2 ESB에서 기존 SOAPUI를 사용할 수 있도록 WSO2 ESB에 구성 옵션이 있습니까?
이렇게하면 문제가 해결됩니다. 그러나 우리는 모든 SOAPUI 스크립트를 변경하여 SOAP 봉투에서 파생 될 수있는 헤더를 추가해야합니다. WSO2가 SOAP 봉투에서이 정보를 직접 파생시킬 수있는 방법이 있습니까? – user1431708
귀하의 요청이 어떻게 보이는지 확실하지 않습니다. 일반적으로 axis2 구성에서는 여러 수준의 디스패처를 정의합니다. axis2 configuartion 파일에서이를 확인할 수 있습니다. "Inflow"디스패치 단계에서는 URIBasedDispatcher, SOAPActionBasedDispatcher, RequestURIOperationDispatcher, SOAPMessageBodyBasedDispatcher가 표시됩니다. 이것들은 메시지를 corrcet 엔드 포인트에 발송하는 데 사용됩니다. "soapaction"서버가 디스패치하도록 서버를 정의하고, 그렇지 않은 경우 URI에서 작업을 정의하면 사용됩니다. 그렇지 않으면 messagebode 기반 디스패치. 아무 것도 제시되지 않으면 메시지가 실패합니다. – Ratha
분명히 SOAPUI 요청에 어떤 서비스 및 어떤 작업을 호출해야하는지에 대한 정보가 있습니다. 앱 서버에 직접 연결하면 앱 서버의 CXF 엔진이 어떤 클래스를 호출하는지 파악합니다. WSO2 내부의 AXIS2 ESB가 SOAP 요청에서 연산을 파악할 수없는 것 같습니다. 이름을 지정하는 Dispatcher 목록에서 SoapMessageBodyBasedDispatcher가이 작업을 수행해야하지만 어떻게 든 처리하지 않아야합니다. – user1431708