2012-05-02 3 views
0

라우팅의 개념은 이론적으로는 좋지만 실제로는 약간 혼란 스럽습니다. 내 웹 서비스의 CXF 방법이아파치 낙타 요청 응답 및 다음 변 환기로 연결하는 방법

public Response someMethod(Request r) { 
} 

내가 무엇을 얻을 수없는 것은 내가 지금 난 정말 어떻게해야 해요 경로에 몇 가지 더 노드로 요청을 필요로하고있는 자바 코드 또는 인터페이스를 생성 낙타합니다 (잘하면 비동기) 그 노드를 일부 변압기에 연결하여 몇 가지 저장소 및 전달 등의 다음 노드 유효성 검사기로 연결 한 다음 저장소에서 요청을받은 소켓에서 보낸 응답을 저장하고 전달합니다. 원래.

위의 메서드에서는 해당 메서드에서 클라이언트에 응답을 반환해야합니다. 그렇습니까?

코드를 webservices 메서드에 넣으 려한다면, 내가 호출해야하는 낙타 컨텍스트가 있습니까?

또한 SOAP 메서드 호출의 "RAW"매개 변수를 원하고 SOAP 헤더를 처리하고 싶지 않고 String을 받아들이는 일부 REST API도 노출해야합니다.

EDIT : 아래의 답변에서 프록시 예제는 내가 본 것 중 가장 가까운 것이지만, 바로 가기를 원할 경우 파이프 라인의 이전 노드에서 실제 웹 서비스를 호출하지 않을 수도 있습니다. 우리가 어떤 webservice 코드를 가지고 있지 않기 때문에 원하지 않는 end webservice 코드를 호출해야 할 것 같다. 우리는 webservice 호출에서 기존 pojos를 통해 실행하려고합니다. 유효성 검사 노드에 오류가 발생하면 응답을 반환하고 요청을 다른 노드로 전달하려는 경우 해당 노드가 실패 할 경우 응답을 반환하거나 성공하면 요청을 전달합니다. 이게 아무것도없는 것 같습니까 ??? 또한 이것은 나에게 꽤 전형적인 경우처럼 보입니다. 그래서 나는 놀랍습니다. 또는이 ESB 프레임 워크 (노새, 낙타)를 가지고 뭔가를 얻지 못하고 있습니다.

덕분에, 딘

답변

0

해결되지 않은 경우, 우리는 낙하산을 떨어 뜨렸습니다.

+0

동일한 작업을 고려하십시오. 카멜은 사소한 일을 셋업하는 것이 불가능 해 보입니다. 웹 사이트의 예조차도 작동하지 않습니다. –

+0

Guice DI를 사용해보세요. 구성 요소를 다시 작성하고 모든 구성 요소가 직접 연결되도록하는 케이크를 만들어 주며, 구성 요소를 직접 재사용 할 수있는 프레임 워크가 없기 때문에 간단합니다. 기본적으로 다음과 같습니다. 당신을 위해 가능한 한 조금 (그리고 나는 스프링과는 다른 바인딩 물건이 xml이 아닌 자바로 어떻게 처리되는지를 좋아한다). –

+0

이전에 Guice를 사용해 봤는데 실제로 Spring을 선호합니다 (Java 만 사용하여 바인딩 할 수도 있음). 하지만 그건 내 문제가 아니에요, 제 문제는 낙타입니다. 마침내 문제가 해결되었지만 문서가 잘못되었거나 불완전하거나 오래 되었기 때문에 매우 어려웠습니다. 그리고 아주 흩어져 있습니다. –

0

Look at this official Example, it'll show how to do this Or this Cxf proxy example if you want the RAW request

이미 스프링 MVC 웹 애플리케이션에있는 경우 - 당신은 아마도 봄 WS 및 JAXB와 좀 더 쉽게이 작업을 수행 할 수 있습니다. 그러나 그것은 맛의 문제입니다. Example code here

+0

죄송합니다. 예제를 통해 예제를 살펴 보았습니다. 예제 중 5 월은 끝점이되고 라우팅을 통해 다음 노드로 작업을 전달하는 대신 실제 작업을 수행하는 비누 인터페이스를 노출합니다. 나와 나 팀원 중 큰 사람이 누락되었거나이 예가이 시나리오에 맞지 않습니다. 위의 질문에 더 많은 정보를 추가하십시오. –

관련 문제