2014-09-22 4 views
0

프로덕션 환경에서 실행중인 기존 웹 서비스, 비누 서비스 및 휴식 서비스가 두 개 있습니다. 이제 SOAP와 REST (GET/PUT/POST/DELETE) 서비스에 대한 모든 들어오는 요청을 처리 할 새로운 프록시 서비스 (Tomcat에 별도로 배포)를 작성해야하며 일부 논리에 따라 수정하고 경로를 지정합니다 REST 서비스에 대한 요청 그러나 SOAP 웹 서비스의 경우 요청을 기존 SOAP 서비스로 맹목적으로 터널링해야합니다. 이 전체 구현의 유일한 단점은이 새 프록시 서비스를 호출하는 클라이언트 응용 프로그램이 요청을 내부적으로 리디렉션하고 있음을 알 수 없다는 것입니다.302를 클라이언트에 보내지 않고 다른 SOAP 서비스로 비누 요청 리디렉션

  • 사용하기 때문에 작동하지 않습니다 Tuckey URLRewrite 필터 -

    나는 최고의 SAOP 서비스 요청에 대한 터널링을 구현하고, 지금까지 내가 탐구 한 옵션입니다하는 방법을 잘 모르겠어요 그것은 클라이언트에게 302를 보낼 것입니다.

  • 클라이언트로부터의 리다이렉트를 숨길 각 요청마다 새로운 연결을 열 수있는 내 서블릿을 작성하십시오. 이것은 효과가 있지만 깨끗하고 확장 가능한 접근 방식처럼 보이지 않습니다. 이 서비스를 추정하는 데는 많은 부담이 따릅니다.

더 좋은 방법이 있습니까? 유용한 정보를 알려 주시면 감사하겠습니다.

답변

0

클라이언트가 응답 메시지를 처리하는 방법에 의존한다고 생각합니다. camel-cxf endpint를 사용하여 SOAP 요청을 프록시하는 경우 CXF 클라이언트가 즉시 처리 할 수 ​​있으므로 302 응답에 대해 걱정할 필요가 없다고 생각합니다.

+0

늦게 응답 해 주셔서 죄송합니다. 여행 중이 었습니다. 불행히도 고객은 우리가 작성한 것이 아니며 제 3 자 구현이므로 낙타 -CXF에 의존 할 수 있다고 생각하지 않습니다. 작동 할 수있는 유일한 옵션은 제 질문에서 언급 한 두 번째 옵션입니다. 계속 진행할 계획입니다. – theksquare