java.util.List를 포함하는 응답을 처리하는 동안 Camel 경로에서 ClassCastException 받기

Sanjbh

CXF 웹 서비스로 노출 된 Camel 경로가 있습니다. 이것은 상향식 웹 서비스이며 다음과 같은 작업이 있습니다.

List<Book> getBooks();

CXF 끝점은 다음과 같이 정의됩니다.

<cxf:cxfEndpoint id="bookService" 
                 address="http://localhost:9045/bookservice" 
                 serviceClass="org.test.cxfws.service.BookDBService">        
</cxf:cxfEndpoint>

이 작업은 도서 목록을 쿼리하여 호출자에게 반환합니다. 낙타 경로는 다음과 같습니다.

<camel:camelContext xmlns="http://camel.apache.org/schema/spring">
    <route>
        <from uri="cxf:bean:bookService"/>
        <choice>                
            <when>                    
                <simple>${header.operationName} == 'getBooks'</simple>                    
                <to uri="bean:wsImplBean?method=getBooks"/>
            </when>
            <to uri="log:outboundSoapResponse"/>
         <choice>
     </route>
</camel:camelContext>

경로를 실행 한 후 다음 예외가 발생합니다.

org.apache.cxf.interceptor.Fault : org.test.cxfws.service.Book은 org.apache.cxf.jaxws.interceptors.WrapperClassOutInterceptor.handleMessage (WrapperClassOutInterceptor.java:117)에서 java.util.List로 캐스팅 할 수 없습니다 . org.apache.cxf.phase.PhaseInterceptorChain.doIntercept (PhaseInterceptorChain.java:272) at org.apache.cxf.interceptor.OutgoingChainInterceptor.handleMessage (OutgoingChainInterceptor.java:77) at org.apache (cxf.phase.PhaseInterceptorChain. PhaseInterceptorChain.java:272) ...

원인 : java.lang.ClassCastException : org.test.cxfws.service.Book은 org.apache.cxf의 org.test.cxfws.service.GetBooksResponse_WrapperTypeHelper1.createWrapperObject (Unknown Source)에서 java.util.List로 캐스트 될 수 없습니다 . jaxws.interceptors.WrapperClassOutInterceptor.handleMessage (WrapperClassOutInterceptor.java:101)

wsImpBean 빈에서 getBooks 메소드가 실행되고 라우트 내의 선택 블록 끝에 결과가 반환되는 것을 볼 수 있습니다 .

[qtp1653072092-14] outboundSoapResponse INFO 교환 [ExchangePattern : InOut, BodyType : java.util.ArrayList, Body : [org.test.cxfws.service.Book@63f1858b, org.test.cxfws.service.Book@5769bf0, org. test.cxfws.service.Book@2df7ac5d, org.test.cxfws.service.Book@5f55253e, org.test.cxfws.service.Book@4f003a57]]

누군가가 ClassCastException이 발생한 이유를 이해하도록 도울 수 있습니까?

감사.

빌렘 장

camel-cxf는 InOut 매개 변수를 처리하기위한 응답을 보유하기 위해 list를 사용합니다. 응답 결과를 메시지 본문에 설정하면 다음과 같이 결과를 List로 래핑해야합니다.

List<Book> books ... 
List<Object> resultList = new ArrayList<Object>(); 
resultList.add(books); 
exchange.getOut().setBody(resultList); 

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Camel : 다른 경로에서 한 경로를 호출하고 동 기적으로 응답을받습니다.

분류에서Dev

PHPMailer를 사용하여 ionic에서 이메일을 보내는 동안 오류 응답 받기

분류에서Dev

HttpURLConnection으로 POST 요청을 수행하는 동안 JSON 응답 받기

분류에서Dev

컴파일하는 동안 예외 java.util.NoSuchElementException 받기

분류에서Dev

ImgurAPI를 사용하는 동안 "Permission Denied"응답 받기

분류에서Dev

jQuery Ajax 메서드와 함께 사용하는 동안 Php 스크립트에서 응답을 받고 처리하는 방법

분류에서Dev

Java에서 등호 ( "=") 기호를 포함하는 쿠키 처리

분류에서Dev

frisbyJS를 통해 서비스를 호출하는 동안 응답을받을 수 없습니다.

분류에서Dev

백엔드에서 처리를 기다리는 동안 응답 적으로 프런트 엔드에서 UI 작업을 처리하는 방법은 무엇입니까?

분류에서Dev

PHP를 사용하여 sendgrid를 통해 메일을 보내는 동안 응답 받기

분류에서Dev

응답을받는 동안 내 웹 서비스를 다루고 있습니다-서버 측에서 응답을받는 방법은 무엇입니까?

분류에서Dev

응답을받는 동안 내 웹 서비스를 다루고 있습니다-서버 측에서 응답을받는 방법은 무엇입니까?

분류에서Dev

원격 웹 서비스에 SOAP 요청을 보내고 Apache Camel을 사용하여 응답 받기

분류에서Dev

내 XHR 호출이 서로 응답을 받기를 기다리는 이유

분류에서Dev

요청 후 API를 호출하는 동안 500 개의 응답 받기

분류에서Dev

Java SpringBoot에서 REST API를 사용하는 동안 잘못된 요청 받기

분류에서Dev

$ .post를 사용하여 완료 및 실패 함수와 함께 데이터를 PHP로 보내고받는 동안 JSON 응답을 읽는 방법

분류에서Dev

위치를 가져 오기 위해 서비스 클래스에 권한을 추가하는 동안 java.lang.ClassCastException이 발생했습니다.

분류에서Dev

응답 처리기를 설정하지 않고 socket.emit 요청에서 응답을받을 수 있습니까?

분류에서Dev

비동기 통신 관리 : 다른 스레드에서받은 응답을 검사하는 방법

분류에서Dev

IE에서 '°'기호로 KML을 파싱하는 동안 리소스를 처리하는 동안 오류가 발생했습니다.

분류에서Dev

서버에서 응답을 기다리는 안드로이드

분류에서Dev

JavaRDD를 매핑하는 동안 java.io.NotSerializableException 받기

분류에서Dev

비동기 혼란. 하는 API 응답을 처리하고이 코드에 무슨 일이 일어나고 있는지에 대한 나의 이해를 잃고

분류에서Dev

Gremlin : gremlin-driver를 사용하여 Java에서 json 응답 받기

분류에서Dev

다른 메서드를 처리하는 동안 직렬 포트 값 읽기

분류에서Dev

Apache Camel로 장기 실행 작업을 처리하는 방법

분류에서Dev

OSError 받기 : while 루프에서 트리오 소켓을 사용하는 함수를 실행하는 동안 (이미 사용중인 주소)

분류에서Dev

HttpWebRequest 콜백 메서드가 응답을받을 때까지 동기식으로 기다리는 방법

Related 관련 기사

  1. 1

    Camel : 다른 경로에서 한 경로를 호출하고 동 기적으로 응답을받습니다.

  2. 2

    PHPMailer를 사용하여 ionic에서 이메일을 보내는 동안 오류 응답 받기

  3. 3

    HttpURLConnection으로 POST 요청을 수행하는 동안 JSON 응답 받기

  4. 4

    컴파일하는 동안 예외 java.util.NoSuchElementException 받기

  5. 5

    ImgurAPI를 사용하는 동안 "Permission Denied"응답 받기

  6. 6

    jQuery Ajax 메서드와 함께 사용하는 동안 Php 스크립트에서 응답을 받고 처리하는 방법

  7. 7

    Java에서 등호 ( "=") 기호를 포함하는 쿠키 처리

  8. 8

    frisbyJS를 통해 서비스를 호출하는 동안 응답을받을 수 없습니다.

  9. 9

    백엔드에서 처리를 기다리는 동안 응답 적으로 프런트 엔드에서 UI 작업을 처리하는 방법은 무엇입니까?

  10. 10

    PHP를 사용하여 sendgrid를 통해 메일을 보내는 동안 응답 받기

  11. 11

    응답을받는 동안 내 웹 서비스를 다루고 있습니다-서버 측에서 응답을받는 방법은 무엇입니까?

  12. 12

    응답을받는 동안 내 웹 서비스를 다루고 있습니다-서버 측에서 응답을받는 방법은 무엇입니까?

  13. 13

    원격 웹 서비스에 SOAP 요청을 보내고 Apache Camel을 사용하여 응답 받기

  14. 14

    내 XHR 호출이 서로 응답을 받기를 기다리는 이유

  15. 15

    요청 후 API를 호출하는 동안 500 개의 응답 받기

  16. 16

    Java SpringBoot에서 REST API를 사용하는 동안 잘못된 요청 받기

  17. 17

    $ .post를 사용하여 완료 및 실패 함수와 함께 데이터를 PHP로 보내고받는 동안 JSON 응답을 읽는 방법

  18. 18

    위치를 가져 오기 위해 서비스 클래스에 권한을 추가하는 동안 java.lang.ClassCastException이 발생했습니다.

  19. 19

    응답 처리기를 설정하지 않고 socket.emit 요청에서 응답을받을 수 있습니까?

  20. 20

    비동기 통신 관리 : 다른 스레드에서받은 응답을 검사하는 방법

  21. 21

    IE에서 '°'기호로 KML을 파싱하는 동안 리소스를 처리하는 동안 오류가 발생했습니다.

  22. 22

    서버에서 응답을 기다리는 안드로이드

  23. 23

    JavaRDD를 매핑하는 동안 java.io.NotSerializableException 받기

  24. 24

    비동기 혼란. 하는 API 응답을 처리하고이 코드에 무슨 일이 일어나고 있는지에 대한 나의 이해를 잃고

  25. 25

    Gremlin : gremlin-driver를 사용하여 Java에서 json 응답 받기

  26. 26

    다른 메서드를 처리하는 동안 직렬 포트 값 읽기

  27. 27

    Apache Camel로 장기 실행 작업을 처리하는 방법

  28. 28

    OSError 받기 : while 루프에서 트리오 소켓을 사용하는 함수를 실행하는 동안 (이미 사용중인 주소)

  29. 29

    HttpWebRequest 콜백 메서드가 응답을받을 때까지 동기식으로 기다리는 방법

뜨겁다태그

보관