Description

This page gives solution to the problem where the PeopleSoft extraction fails with the below error:

An error has occurred during command processing
java.lang.NullPointerException:
        at com.castsoftware.extractor.decoders.PeopleSoftCodeDecoder.setCodeId(PeopleSoftCodeDecoder.java:204)
        at com.castsoftware.extractor.decoders.PeopleSoftCodeIndexRecorder.record(PeopleSoftCodeIndexRecorder.java:21)
        at com.castsoftware.extractor.decoders.PeopleSoftCodeIndexRecorder.record(PeopleSoftCodeIndexRecorder.java:1)
        at com.castsoftware.extractor.decoders.AbstractRecorder.decode(AbstractRecorder.java:47)
        at com.castsoftware.extractor.exporter.IdentificationGroupExporter.exportType
Error : 2001

Observed in CAST AIP
Release
Yes/No
8.3.x(tick)
Observed on RDBMS
RDBMS
Yes/No
CSS(tick) 
Step by Step Scenario
  1. Connect to peoplesoft schema via DMT

  2. Click on package

Impact of the problem on Analysis Results and Dashboard

Analysis - You will not be able to run the analysis since you are blocked during extraction
Dashboard - You will not be able to generate snapshot

Action Plan

Perform the below actions:

  1. From the extraction log file Identify the type of object for which the extractor has produced empty string

    1. Open the extractor log file - refer to CAST Management Studio - Information - How to find logs to locate the correct log file.

    2. Check the type of object that was being extracted just before the error has occurred.

      Example

      2015-08-28 17:22:46.409 DETAIL 2015-08-28 11:22:46.365 - Extracting: People Soft Identifiers...
      2015-08-28 17:24:01.063 ERROR An error has occurred during command processing
      java.lang.NullPointerException:
      at com.castsoftware.extractor.decoders.PeopleSoftCodeDecoder.setCodeId(PeopleSoftCodeDecoder.java:204)
      at com.castsoftware.extractor.decoders.PeopleSoftCodeIndexRecorder.record(PeopleSoftCodeIndexRecorder.java:21)

       In this example, you can see that the object type which was getting extracting just before the error is People Soft Identifiers

  2. Check if the object type for which the error that you are encountering is already fixed.
  3. Apply the appropriate solution given in this page.
    1. Solution if Null Pointer exception has occurred for object type - People Soft Identifiers. This is a bug which is fixed in PeopleSoft package version 5.0.2. If this is a blocking issue for you then please contactCAST Technical Support.
      1. Follow the below steps in order to resolve this issue
      2. Goto <Deliver_folder>\plugins\
      3. Delete the folder dmtcastpeoplesoftoracleextractor-1.0
      4. Place the zip file dmtcastpeoplesoftoracleextractor-1.0 dmtplugin attached in the folder <Deliver_folder>\plugins\ and unzip the file to have below folder structure -

        <Deliver_folder>\plugins\dmtcastpeoplesoftoracleextractor-1.0\CAST-Extractor-PeopleSoftOracle.mda
        <Deliver_folder>\plugins\dmtcastpeoplesoftoracleextractor-1.0\CASTPeopleSoft_orcl.config
      5. Launch the DMT and re-do the extraction/packaging
  4. If the object type for which you are receiving the error is not listed in the above solution section then contact CAST Technical Support with Relevant input
  5. For CAST Technical Support only Identify the query used by extractor that is causing NullPointerException
    1. Open the file CASTPeopleSoft_orcl.config using any text editor such as NotePad++ located in PeopleSoft_LanguagePack5.X.X_forCAST_AIP\ToBeInstalledInSCDFPlugins\dmtcastpeoplesoftoracleextractor-1.0\
    2. Search for the object type for which the error has occurred.

      Example

      2015-08-28 17:22:46.409 DETAIL 2015-08-28 11:22:46.365 - Extracting: People Soft Identifiers...
      2015-08-28 17:24:01.063 ERROR An error has occurred during command processing
      java.lang.NullPointerException:
      at com.castsoftware.extractor.decoders.PeopleSoftCodeDecoder.setCodeId(PeopleSoftCodeDecoder.java:204)
      at com.castsoftware.extractor.decoders.PeopleSoftCodeIndexRecorder.record(PeopleSoftCodeIndexRecorder.java:21)

      In this example the we need to search for type People Soft Identifiers in the file CASTPeopleSoft_orcl.config 

      Identified Query
       <type name="PSoft_Identifiers" description="People Soft Identifiers"
       fields="PeopleSoftCodeIndex:CodeIndex,PeopleSoftIndex:IdentifierIndex,PeopleSoftIdentifier:Identifier"
       disableInjection="true" isMandatory="true">
       select case 
       when OBJECTID1=1 and OBJECTID2=2 and OBJECTID3=12 then
       ........
       END
       from %SCHEMA%.PSPCMNAME
       order by 1,2
       </type>

Relevant input

  1. CAST Support Tool (CST) - alias Sherlock output.
  2. Screenshot of the DMT showing the problem
Notes/comments
 Ticket # 3134
Related Pages