Skip to main content

Troubleshoot the Informatica importer

Import from Informatica… is not in the File menu​

Check that <hop>/plugins/misc/importers/importer-informatica/ exists, that you unzipped into the Hop folder and not into a sub-folder, and that you run Hop 2.19.0 or later: on 2.18 the importer fails with a NoClassDefFoundError.

Found 0 PowerCenter mappings​

  • The importer reads files ending in .xml, and files without an extension that start with an XML declaration or <POWERMART. A file with another extension (.txt, .exp) is skipped: rename it.
  • Hidden files and folders are skipped unless you pass --no-skip-hidden.
  • A file that holds only sources, targets or workflows, and no MAPPING, has nothing to convert.

Found 0 IICS task dirs​

The importer looks for task folders (*.DSS, *.DRS) with a dssTask.json or drsTask.json, and for the SYS folder with the connections. Unzip the IICS export and point the importer at the folder that holds both.

A pipeline is non-functional as converted​

The report lists the transforms that break it:

  • structural-stub-on-data-path: a placeholder Dummy sits where data flows. Its description says which transformation it replaces; rebuild that one in Hop. An Update Strategy is a deliberate pass-through and also shows up here: check the target it feeds instead.
  • A transform without hops that was connected in the mapping: a connector pointed at a transformation the importer did not create. Connect it, or remove it.

The log says: Could not connect … (transforms not found)​

A connector in the mapping points at an instance the importer did not create: usually a Mapplet or reusable transformation the export does not contain, such as a shortcut to another folder. Export that folder too and import both, or rebuild the missing logic. Until then the hop is missing in the pipeline.

A pipeline does not run​

  • Connection not found: create the connections the pipeline names; see Add connections and credentials.
  • ABORT: …: the mapping calls ABORT() in an expression, and the row it read met the condition. The message is the mapping's own. Check the input, and the values of the mapping parameters it tests.
  • Error initializing UserDefinedJavaClass: usually not the class itself. A transform before it failed to describe its fields, for example a Table input or Database join whose query does not run on that database; the log lines just above say which.
  • A Database join fails to prepare its statement: the lookup query runs on the database the Lookup's connection points at. Check that the table, or the override's SQL, exists there.
  • A Table input fails with a syntax error on (+), ^= or another Oracle form: the SQL override is run as written. It works on Oracle; on another database, rewrite it.
  • A variable is not replaced in a Table input: give the mapping parameter (${MAP_PP_NUM}) a value in your environment or as a pipeline parameter.