2

In my current project using IBM Content Collector 4.0.1 SP5 with IBM Filenet P8 Content Engine 5.2.1 I need to collect files from file system and add them to a certain P8's object store.

This issue is related and comes after this one.

The WS response must conform to a custom metadata source called Esito which contains two metadata properties called resultCode and message.

The call seems correct but when getting the response I can read this message in the log and the file is not uploaded into P8 Content Manager:

2017-11-10T08:54:05.708Z FINEST [52] [ctms-native] 2017-11-10T08:54:05Z Trace2 0x15a4 Feeding JavaTask with 1 TaskInputs ufibridge.dll:0x114ac [com.ibm.afu.ufibridge.logging.LoggingAdapter log] [CTMS-task-15a4 45] 2017-11-10T08:54:05.708Z FINEST [53] Prepared content to send to webservice:{"e:\report\amm_000001_00001\2017\11\201711_amm_000001_00001_qxn_report_00.pdf":{"esito":"KO","fileName":"201711_AMM_000001_00001_QXN_REPORT_00(1)(2)(3).pdf"},"e:\report\amm_000001_00001\2017\11\201711_amm_000001_00001_qxn_report_00.xml":{"esito":"KO","fileName":"201711_AMM_000001_00001_QXN_REPORT_00(1)(2)(3).xml"}} [com.ibm.afu.connector.webservice.task.InvokeServiceTask getInputHttpEntity] [CTMS-task-15a4 45] 2017-11-10T08:54:05.708Z FINEST [54] Configuration:

property name="message" type="STRING" displayName="message"
property name="resultCode" type="STRING" displayName="resultCode"
http://192.168.8.29:8080/sirfAcq/filenet/notificaArchiviazione

fileName esito [com.ibm.afu.connector.webservice.task.InvokeServiceTask execute] [CTMS-task-15a4 45] 2017-11-10T08:54:05.708Z FINEST [55] Invoking webservice URI:http://192.168.8.29:8080/sirfAcq/filenet/notificaArchiviazione [com.ibm.afu.connector.webservice.task.InvokeServiceTask execute] [CTMS-task-15a4 45] 2017-11-10T08:54:05.739Z FINEST [56] Invocation took time (ms): 31 [com.ibm.afu.connector.webservice.task.InvokeServiceTask execute] [CTMS-task-15a4 45] 2017-11-10T08:54:05.739Z SEVERE [57] java.lang.String incompatible with com.ibm.json.java.JSONObject [com.ibm.afu.connector.webservice.task.InvokeServiceTask execute] [CTMS-task-15a4 45]Exception [java.lang.ClassCastException]: java.lang.String incompatible with com.ibm.json.java.JSONObject com.ibm.afu.connector.webservice.task.InvokeServiceTask.processResponse(InvokeServiceTask.java:140) com.ibm.afu.connector.webservice.task.InvokeServiceTask.execute(InvokeServiceTask.java:112)

Could someone please explain me the correct format of the WS response JSON?
Could it be possible to use the One-Way mode instead of the Request-Response mode?

abarisone
  • 3,707
  • 11
  • 35
  • 54

1 Answers1

0

This issue seems to happen because of the incompatibility between the produce and the response body definition, based on the code snippet I had for your first post, your problem should be here:

   produces = {MediaType.APPLICATION_JSON_VALUE, MediaType.APPLICATION_XML_VALUE })

   @ResponseBody
   String notificaArchiviazione(@RequestParam("fileName") String fileName, @RequestParam("esito") String esito)

The first parameter in produce is sat as JSONMediaType.APPLICATION_JSON_VALUE while in the response body you expect a string @RequestParam("fileName") String fileName

WiredCoder
  • 916
  • 1
  • 11
  • 39