2014-12-02 3 views
2

wso2 esb 4.8.1, 끝점 경고를 처리하고 싶습니다. Tomcat 서버에서 CXF 서비스에 충돌하려고합니다. 바람둥이에서 잘못된 동작 (조작/방법) 이름 또는 서비스 이름으로 테스트하는 경우. SOAP에서이 메시지가 나타납니다.wso2esb의 끝점 경고 처리 방법

<html> 
    <body>No service was found.</body> 
</html> 

내 wso2esb에서와 같이 오류가 발생하지 않고 해당 끝점에서이 메시지가 표시되지 않습니다.

[2014-11-24 16:57:57,931] WARN - LoadbalanceEndpoint Endpoint [ServiceLEP] Detect a Failure in a child endpoint : Endpoint [EP3] 

나는 나는이 메시지를 처리 ​​할 방법 wso2esb이를 처리하고 클라이언트에 적절한 오류 응답을 전송하고자하는 CXF를 알 수 없기 때문에. 누구든지 나를 도울 수 있습니까? 미리 감사드립니다.

답변

0

중재자를 사용하는 경우에는 응답을 inSequence에서 사용할 수 있습니다. 조정자 뒤에 다음과 같은 코드로 해당 응답을 기록 할 수 있습니다.

<enrich> 
    <source type="body"/> 
    <target type="property" action="child" property="response_body"/> 
</enrich> 
<log level="custom"> 
    <property name="The Response" expression="get-property('response_body')"/> 
</log> 

시나리오에 해당되는지 확인하십시오.

+0

중재자를 보낸 후 위의 코드를 사용하면 어떻게됩니까?이 코드를 보관하면 요청 오류가 발생하지 않습니다. 따라서 OutSequence에서 계속 유지하지만 프린트하지 않는 경우 흐름은 전송 후 dicarding됩니다. – Faisal

0

엔드 포인트가 일시 중단 된 경우 기본적으로 WSO2가 오류 시퀀스를 시작하고 사용자 정의 메시지를 오류 시퀀스에 정의한 다음 원하는대로 클라이언트에 다시 보낼 수 있습니다. WSO2에서 로그 또는 스위치 조정자의 ERROR_CODE 및 ERROR_MESSAGE 속성을 확인할 수 있습니다. 로그에서 u는 다음과 같이 작업을 수행 할 수 있습니다

<log level="full" separator="**********Fault Sequence File Processor***********"> 
     <property name="ErrorCode" expression="get-property('ERROR_CODE')"></property> 
     <property name="ErrorMessage" expression="get-property('ERROR_MESSAGE')"></property> 
     <property name="ErrorDetail" expression="get-property('ERROR_DETAIL')"></property> 
     <property name="ErrrorException" expression="get-property('ERROR_EXCEPTION')"></property> 
    </log> 

당신은 스위치 중재자에 ERROR_CODE 속성 또는 ERROR_MESSAGE 속성에 대한 검사를 할 수 있습니다 다음 페이로드 중재자의 도움으로 u는 사용자 지정 오류 메시지를 정의 할 수 있습니다.