2014-04-07 2 views
0

나는 RESTFul 웹 서비스를 라우팅하기 위해 낙타와 낙타 - restlet 구성 요소를 사용하고 있습니다. 카멜 - 레스 렛과 관련된 문제

restlet:/camel/my/path/{param1}/{param2}?restletMethods=PUT 
restlet:/camel/my/path/param1/{param2}?restletMethods=GET 

전화가 GET: /my/path/param1/foo 온다

은으로 Restlet 첫 번째 라우터에이 요청을 라우팅하고 요청에 실패 : 나는 같은 일부 입력 경로 구성이

<from uri="restlet:/camel/my/path/{param1}/{param2}?restletMethods=PUT&throwExceptionOnFailure=false" /> 
<loadBalance inheritErrorHandler="false"> 
    <failover roundRobin="true" maximumFailoverAttempts="2"> 
    <exception>java.io.IOException</exception> 
    </failover> 
    <to uri="http://server1:8080/my/path/${header.param1}/${header.param2}?bridgeEndpoint=true&throwExceptionOnFailure=false" /> 
    <to uri="http://server2:8080/my/path/${header.param1}/${header.param2}?bridgeEndpoint=true&throwExceptionOnFailure=false" /> 
</loadBalance> 

:처럼 내 경로 구성이 보인다 404.이 요청을 두 번째 라우터로 라우팅하려면 restlet을 기다리고 있습니다.
나는 restlet-routing-nightmare이라는 게시물을 보냈지 만, 필자가 낙타로 라우팅 부분을 수행하고 있으며 기본 서비스의 URI를 제어 할 수 없어 URI를 변경할 수 없습니다. 기본 서비스는 Jersey 프레임 워크에 있으며 이러한 유형의 URL 패턴에는 문제가 없습니다.

누구나 restlet/camel에서이 문제에 대한 해결책을 제안 할 수 있습니까?

답변

0

부하 분산 장치의 URL에 throwExceptionOnFailure=true이 있어야하므로 장애 조치 부하 분산 장치가 예외에 대응할 수 있습니다. 그렇지 않으면 프로세스가 성공했다고 가정합니다.

+0

감사합니다. 클로스가 추가 할 것입니다. 라우팅 문제에 대한 모든 제안/해결책? – Joewyn