If a user is processing an HL7 message that contains custom segments (e.g. Z segments), an NPE is thrown at line 288 in ExtractHL7Attributes.java upon encountering that segment. The call to segment.getNames() will return a list of Nulls from HAPI for this custom segment.
Added a check whereby, if the user is using the "Use Segment Names" option in the ExtractHL7Attributes processor and the HL7 message being processed contains custom user segments (e.g., Z Segments), the code will downgrade to returning the Segment Label as it does when this option is not used. Without this a null pointer is thrown at line 288.