최근에 wso2 esb에서 해결할 수없는 문제가있었습니다 (어쩌면 버그 일 수 있습니다). 나는 그것을 가능한 한 명료하게 설명하려고 노력할 것이다.WS02 REST 프록시가 REST 대신 SOAP로 답장합니다.
프론트 엔드 응용 프로그램에서 백엔드 Rest 서비스로 통신하기 위해 나머지 프록시와 함께 wso2 ESB를 사용합니다.
는이 같은 엔드 포인트와 나머지 프록시를 정의하고 그것을 잘 작동 :<endpoint>
<address uri="http://127.0.0.1:8099/DummyRestServiceWSO2"/>
</endpoint>
그러나 우리의 목표는 openshift 환경 내부 용기에 WSO2 ESB를 통합하는 것이다. openshift에서 ip는 동적으로 설정되지만 시스템 환경 변수를 통해 액세스 할 수 있습니다. 그래서 난 내 엔드 포인트 동적 헤더 태그를 byusing 해결하기 위해 노력 :
HOST_IP는 다음과 같이 정의된다<endpoint>
<default/>
</endpoint>
<inSequence>
<script language="js">mc.setProperty("url",java.lang.System.getenv("HOST_IP"));</script>
<property name="service_url" expression="fn:concat(get-property(url),'/DummyRestServiceWSO2')"/>
<header name="To" expression="get-property('service_ep')"/>
<send/>
</inSequence>
:이 백엔드 나머지 서비스에 내 전화를 변경 했으니 http://127.0.0.1:8099
는 여전히 잘하지만 응답하고있다 호출자 (프론트 엔드)에게 현재 비누 형식으로되어 있습니다 (문제를 그리려고 시도했습니다, see attachment).
도와 주셔서 감사합니다 많이 나는 "REST"에 의해이 게시물 :
감사합니다. 실제로 그것은 도움이되지 않았지만 문제를 해결하는 방법을 찾을 수 있습니다. 태그 태그 헤더를 제거한 후 작동해야합니다. –