2017-10-20 5 views
1

In meinem aktuellen Projekt mit IBM Content Collector 4.0.1 SP5 mit IBM Filenet P8 Content Engine 5.2.1 muss ich Dateien aus dem Dateisystem sammeln und sie einem bestimmten P8-Objektspeicher hinzufügen.IBM Content Collector-Fehler beim Aufruf des externen Webdienstes

Nach dem Upload auf dem Server oder im Falle eines Fehlers habe ich einen WS Call Web Service Task eingefügt, um einige Daten in eine Datenbank zu schreiben.

Die Konfiguration ist folgende:
enter image description here

Der Webservice ist REST konformer, wie in den von IBM zur Verfügung gestellt WS Call Web Service task description page angefordert wird, folgt einen Codeauszug:

@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) { 

Wenn ICC versucht, den WS anrufen Ich bekomme einen HTTP/1.1 400 Bad Request Fehler wie folgt:

2017-10-20T13: 47: 10.394Z FINEST [47] Vorbereiteten Inhalt zu sen d bis webservice: {"e: \ Bericht \ amm_000001_00001 \ 2017 \ 10 \ 201710_amm_000001_00001_qxn_report_00_errato.pdf": {"esito": "KO", "Dateiname": "Prova"}, "e: \ report \ amm_000001_00001 \ 2017 \ 10 \ 201710_amm_000001_00001_qxn_report_00_errato.xml ": {" Esito ":" KO“, "Dateiname": "Prova"}}
[com.ibm.afu.connector.webservice.task.InvokeServiceTask getInputHttpEntity] [CTMS-Task- 12DC 44] 2017-10-20T13: 47: 10.456Z FINEST [48] Konfiguration: http://192.168.8.29:8080/sirfAcq/filenet/notificaArchiviazione filename
Esito
[com.ibm.afu.connector.webservice.task.InvokeServiceTask ausführen] [CTMS-Aufgabe -12dc 44] 2017-10-20T13: 47: 10.830Z FINEST [49] Aufrufen von Bahnen ervice URI: http://192.168.8.29:8080/sirfAcq/filenet/notificaArchiviazione
[com.ibm.afu.connector.webservice.task.InvokeServiceTask Ausführen] [CTMS-task-12DC 44] 2017-10-20T13: 47: 13.763Z FINEST [50] Invocation Zeit nahm (ms): 2933
[com.ibm.afu.connector.webservice.task.InvokeServiceTask ausführen] [CTMS-task-12dc 44] 2017-10-20T13: 47: 13.763Z SEVERE [51] Fehler beim aufrufen webservice: HTTP/1.1 400 Ungültige Anforderung [com.ibm.afu.connector.webservice.task.InvokeServiceTask ausführen] [CTMS-task-12dc 44] 2017-10-20T13: 47: 13.841Z FINEST [52] [ctms-native] 2017-10-20T13: 47: 13Z Trace2 0x12dc Aufruf s fertig, Aufgabe beendet ...

Was mache ich falsch?

Antwort

0

Endlich habe ich es geschafft, die Parameter aus der Annotation zu beseitigen; Dadurch wird die WS gezwungen, jede mögliche Nachricht zu akzeptieren, vorausgesetzt, sie wird über eine GET- oder POST-Methode übergeben.

Zusätzlich erhielt ich ein hint by a IBM ICC and eDM L2 support, der vorschlug:

Es scheint, dass Ihr Webserver nicht verstehen, die Anforderung, dass von ICC gesendet wird.

Dies wird die Anforderung von ICC gesendet werden (aus dem Protokoll Snippet Sie zur Verfügung gestellt):

{ "e: \ Bericht \ amm_000001_00001 \ 2017 \ 10 \ 201710_amm_000001_00001_qxn_report_00_errato.pdf": { "esito":“ KO "," Dateiname ":" Prova "}," e: \ Bericht \ amm_000001_00001 \ 2017 \ 10 \ 201710_amm_000001_00001_qxn_report_00_errato.xml ": {" esito ":" KO "," Dateiname ":" Prova "}}

Überprüfen Sie Ihren Code, ob er die obigen Daten parsen kann.

Verwandte Themen