2017-10-20 4 views
1

IBM Content Collector 4.0.1 SP5와 IBM Filenet P8 Content Engine 5.2.1을 사용하는 현재 프로젝트에서 파일 시스템에서 파일을 수집하여 특정 P8의 오브젝트 저장소에 추가해야합니다.외부 웹 서비스 호출

서버에서 업로드를 수행하거나 오류가 발생하면 데이터베이스에 쓸 데이터를 제출하기 위해 WS Call Web Service Task를 삽입했습니다.

구성은 다음과 같다 : IBM에서 제공하는 WS Call Web Service task description page의 요청에 따라
enter image description here

웹 서비스가 준수 REST이다, 코드 발췌를 다음과

@RequestMapping(value = "/filenet/notificaArchiviazione", method = { RequestMethod.GET, 
         RequestMethod.POST }, consumes = { MediaType.APPLICATION_FORM_URLENCODED_VALUE, 
            MediaType.APPLICATION_JSON_VALUE, MediaType.APPLICATION_XML_VALUE }, produces = { 
                MediaType.APPLICATION_JSON_VALUE, MediaType.APPLICATION_XML_VALUE }) 
     @ResponseBody 
     String notificaArchiviazione(@RequestParam("fileName") String fileName, @RequestParam("esito") String esito) { 

ICC는 WS를 호출하려고 다음과 같은 HTTP/1.1 400 잘못된 요청 오류가 발생합니다.

2017-10-20T13 : 47 : 10.394Z FINEST [47] d : webservice : { "e : \ report \ amm_000001_00001 \ 2017 \ 10 \ 201710_amm_000001_00001_qxn_report_00_errato.pdf": { "esito": "KO", "fileName": "Prova"}, "e : \ report \ amm_000001_00001 \ 2017 \ 10 \ 201710_amm_000001_00001_qxn_report_00_errato.xml "{"esito ":"KO " 'FILENAME": "PROVA"}}
[com.ibm.afu.connector.webservice.task.InvokeServiceTask getInputHttpEntity] CTMS-task- 12dc 44] 2017-10-20T13 : 47 : 10.456Z FINEST [48] 구성 : http://192.168.8.29:8080/sirfAcq/filenet/notificaArchiviazione fileName에
esito
[com.ibm.afu.connector.webservice.task.InvokeServiceTask 실행] [CTMS 태스크 -12dc 44] 2017-10-20T13 : 47 : 10.830Z FINEST [49] 웹 호출 비 스 URI : http://192.168.8.29:8080/sirfAcq/filenet/notificaArchiviazione
[com.ibm.afu.connector.webservice.task.InvokeServiceTask 실행] [CTMS 태스크 12dc-44]이 2017-10-20T13 : 47 : 13.763Z FINEST는 [50]가 호출 걸린 (ms) : 2933
[CTMS-task-12dc 44] 2017-10-20T13 : 47 : 13.763Z SEVERE [51] 호출에 실패했습니다. webservice : HTTP/1.1 400 불량 요청
[com.ibm.afu.connector.webservice.task.InvokeServiceTask execute] [CTMS-task-12dc 44] 2017-10-20T13 : 47 : 13.841Z FINEST [52] [ctms-native] 2017-10-20T13 : 47 : 13Z Trace2 0x12dc 호출 s uccessfull, 작업 완료 ...

내가 뭘 잘못하고 있니?

답변

0

마지막으로 필자는 주석에서 consumes 매개 변수를 제거하는 작업을했습니다. 이렇게하면 WS가 GET 또는 POST 메서드를 통해 제공된 모든 종류의 가능한 메시지를 받아들이게됩니다.

당신의 웹 서버가 가 ICC에서 전송되고 있음을 요청을 이해하지 않는 것 같습니다 :

는 또한 내가 제안 hint by a IBM ICC and eDM L2 support을 받았다.

는 요청이 ICC에서 전송되는 (로그에서 제공하는 당신에게 스 니펫) :

{ "E : \ 보고서를 \ amm_000001_00001 2017 \ 10 \ 201710_amm_000001_00001_qxn_report_00_errato.pdf \": { "esito" " KO ","fileName ":"Prova "},"e : \ report \ amm_000001_00001 \ 2017 \ 10 \ 201710_amm_000001_00001_qxn_report_00_errato.xml ": {"esito ","fileName ":"Prova "}}

위의 데이터를 구문 분석 할 수 있는지 코드를 확인하십시오.