Using the Loader package error reporter

The Loader and ID Resolver use an error reporter that generates an exception document if there is an error.

By default, the exception document is written to the following directory:

To specify the directory to which the exception document is written, use the Java property com.ibm.wcm.ErrorReporterDir. An example for the Loader in a Windows environment would begin as follows:

  java -Dcom.ibm.wcm.ErrorReporterDir=d:\massloaderrors\ 
  com.ibm.wca.MassLoader.MassLoad -dbname . . . 

Note: The user should have permission to write to the specified directory.

The following is a sample DTD (store-all-error.dtd) for the error reporter:

  <!ENTITY % TABLE "calrule | catentry">
  <!ELEMENT store-asset (error, (%TABLE;)*)>
  <!ELEMENT message (#PCDATA) >
  <!ELEMENT error ( message ) >
  <!ATTLIST error
    locus             CDATA     #REQUIRED
    id                CDATA     #REQUIRED
  >
  <!ELEMENT calrule (error)>
  <!ATTLIST calrule
    identifier        CDATA     #REQUIRED
    calrule_id        CDATA     #REQUIRED
    calcode_id        CDATA     #REQUIRED
    startdate         CDATA     #IMPLIED
    taxcgry_id        CDATA     #IMPLIED
    enddate           CDATA     #IMPLIED
    sequence          CDATA     #REQUIRED
    combination       CDATA     #REQUIRED
    calmethod_id      CDATA     #REQUIRED
    calmethod_id_qfy  CDATA     #REQUIRED
    flags             CDATA     #REQUIRED
    field1            CDATA     #IMPLIED
    field2            CDATA     #IMPLIED
  >
  <!ELEMENT catentry (error)>
  <!ATTLIST catentry
    catentry_id       CDATA     #REQUIRED
    member_id         CDATA     #REQUIRED
    catenttype_id     CDATA     #REQUIRED
    partnumber        CDATA     #IMPLIED
    mfpartnumber      CDATA     #IMPLIED
    mfname            CDATA     #IMPLIED
    markfordelete     CDATA     #REQUIRED
    url               CDATA     #IMPLIED
    field1            CDATA     #IMPLIED
    field2            CDATA     #IMPLIED
    lastupdate        CDATA     #IMPLIED
    field3            CDATA     #IMPLIED
    onspecial         CDATA     #IMPLIED
    onauction         CDATA     #IMPLIED
    field4            CDATA     #IMPLIED
    field5            CDATA     #IMPLIED
    buyable           CDATA     #IMPLIED
  >

The following is a sample error-report document from the Loader:

 <?xml version="1.0"?>
  <!DOCTYPE store-asset SYSTEM "store-all-error.dtd">
  <store-asset>
   <error 
      locus="Parser"
      id="SAXParseFatalError" >
      <message>
         Error The string "--" is not permitted within comments. : 155 : 18
      </message>
   </error>
   <calrule
      calcode_id="30"
      enddate="2100-01 10:20:30.000000"
      calmethod_id="-47"
      identifier="7"
      taxcgry_id="9"
      calmethod_id_qfy="-46"
      startdate="1900-01-01-00.00.00.000000"
      flags="1"
      combination="2"
      calrule_id="44"
      sequence="9.0E+1">
      <error 
         locus="Writer"
         id="SQLException" >
         <message>
            A SQL Exception was received [IBM][CLI Driver][DB2/NT] SQL0530N  
            The insert or update value of the FOREIGN KEY 
            "JANTONY.CALRULE.F_CALRULE4" is not equal to any value of the 
            parent key of the parent table.  SQLSTATE=23503
         </message>
      </error>
   </calrule>
   <catentry
      catentry_id="10118"
      member_id="-2001"
      partnumber="1254"
      mfpartnumber="sku-163"
      mfname="B2B direct"
      markfordelete="0"
      buyable="1"
      field1="abc" >
      <error 
         locus="Formatter"
         id="FormattingError" >
         <message>
            Error when formatting value for CATENTRY.FIELD1 : abc with error 
            [class java.lang.NumberFormatException(abc)].
         </message>
      </error>
     </catentry>
  </store-asset>

Feedback