Search code examples
javaoracle-ucm

RIDC Update against Oracle WCC 10G Server fails with Creation Date Invalid Error message


I have an application that performs an Update to a Content Item via RIDC. The Item is specified via Content ID. Since the UPDATE_DOCINFO service needs dID the DOC_INFO service is run first to get it.

DOC_INFO returns Information just fine. However, when UPDATE_DOCINFO is run, It always seems to return an error message indicating that Creation Date is invalid. The content Item updates without that error message via the Native Web UI. My code works when pointed at an Oracle WCC 11G server.

I've tried:

  1. Adding dID to a new DataBinder, without dCreateDate
  2. Adding dID to a new DataBinder, with dCreateDate

    • adding dCreateDate as a date Object (from DOC_INFO response I've tried)
      • via getDate()
      • manual conversion with DataObjectEncodingUtils.decodeDate() (w/ get())
    • adding as a string
      • converting with SimpleDateFormatter similar to How RIDC encodes (w/ getDate())
      • manual conversion with DataObjectEncodingUtils.encodeDate() (w/ getDate())
      • as ""
      • as null
      • get() instead of getDate()
  3. Directly using DOC_INFO's response Binder

  4. Using the 11G RIDC Library (3 above) 5 Using the 10G RIDC Library (1-3 above)

All the approaches listed have returned the same error message.


Solution

  • After Working With Oracle Support on the issue I found an answer.

    RIDC defaults to an ISO8601 formatted Date. However, my server is using a different date format.

    The solution was:

    1. Set a the UserDateFormat property on the RIDC Binder.
    2. Serialize all dates into the RIDC Binder with a matching format.