Skip to main content
ExLibris

Knowledge Assistant

BETA
 
  • Subscribe by RSS
  • Back
    Primo

     

    Ex Libris Knowledge Center
    1. Search site
      Go back to previous article
      1. Sign in
        • Sign in
        • Forgot password
    1. Home
    2. Primo
    3. Knowledge Articles
    4. Pipe errors in NEP "String index out of range:"

    Pipe errors in NEP "String index out of range:"

    1. Last updated
    2. Save as PDF
    3. Share
      1. Share
      2. Tweet
      3. Share
    1. Question
    2. Answer
    • Product: Primo
    • Product Version: all
    • Relevant for Installation Type: Dedicated-Direct, Direct, Local, Total Care

     

    Question

    What might be the reason for errors such as "String index out of range:" in a Pipe NEP stage

     

    Error from the log:

    2016-06-06 13:00:27,372 ERROR [t-NEP-bulk-2.PersistRecords] [c-BulkContext] - Adding record to failed records, record id=hhs-alma217364270002062,error=java.lang.StringIndexOutOfBoundsException: String index out of range: -4
            at java.lang.String.substring(String.java:1967)
            at com.exlibris.primo.publish.platform.frbr.extractor.SaxFRBRSectionExtractor.createKeyPart(SaxFRBRSectionExtractor.java:155)
            at com.exlibris.primo.publish.platform.frbr.extractor.SaxFRBRSectionExtractor.parseElement(SaxFRBRSectionExtractor.java:142)
            at com.exlibris.primo.publish.platform.frbr.extractor.SaxFRBRSectionExtractor.endElement(SaxFRBRSectionExtractor.java:116)
            at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source)
            at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanEndElement(Unknown Source)
            at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
            at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
            at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
            at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
            at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
            at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
            at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
            at org.apache.xerces.jaxp.SAXParserImpl.parse(Unknown Source)
            at javax.xml.parsers.SAXParser.parse(SAXParser.java:195)
            at com.exlibris.primo.publish.platform.frbr.extractor.SaxFRBRSectionExtractor.extract(SaxFRBRSectionExtractor.java:69)
            at com.exlibris.primo.publish.platform.frbr.FrbrKeysBuilder.getPNXFRBRKeys_withKeys(FrbrKeysBuilder.java:222)
            at com.exlibris.primo.publish.platform.frbr.FrbrKeysBuilder.buildFrbrKeys_withKeys(FrbrKeysBuilder.java:181)
            at com.exlibris.primo.publish.platform.frbr.FrbrKeysBuilder.buildFrbrKeys(FrbrKeysBuilder.java:70)
            at com.exlibris.primo.publish.platform.nep.persistence.PersistenceTask.createFrbrKeys(PersistenceTask.java:514)
            at com.exlibris.primo.publish.platform.nep.persistence.PersistenceTask.insertAndUpdateRecords(PersistenceTask.java:258)
            at com.exlibris.primo.publish.platform.nep.persistence.PersistenceTask.execute(PersistenceTask.java:114)
            at com.exlibris.primo.publish.process.interceptor.NewSpringTransactionExecutionService$1.doInTransaction(NewSpringTransactionExecutionService.java:20)
            at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:130)
            at com.exlibris.primo.publish.process.interceptor.NewSpringTransactionExecutionService.execute(NewSpringTransactionExecutionService.java:17)
            at com.exlibris.primo.publish.process.interceptor.exception.AbstractExceptionHandlerInterceptor.execute(AbstractExceptionHandlerInterceptor.java:15)

     

    Answer

    The issue might be that the NR for FRBR k1 or k2 or k3 does not add the $$K & $$A/$$AT/$$ATO in all rules. 
    You can test the NR on one of the failed records and check if it creates a frbr k1/k2/k3 values, with or without the $$K & $$A/$$AT/$$ATO. 

    If that is the case please fix the NR. 


    • Article last edited: 09-Jun-2016
    View article in the Exlibris Knowledge Center
    1. Back to top
      • Pipe error: “com.exlibris.process.impl.exception.TaskNotFoundException: Can't find task for transition:end,in task runner:…”
      • Pipe fails with error: XML validation message
    • Was this article helpful?

    Recommended articles

    1. Article type
      Topic
      Community Content Type
      How To
      Content Type
      Knowledge Article
      Language
      English
      Product
      Primo
    2. Tags
      1. SaxFRBRSectionExtractor
      2. StringIndexOutOfBoundsException
    1. © Copyright 2025 Ex Libris Knowledge Center
    2. Powered by CXone Expert ®
    • Term of Use
    • Privacy Policy
    • Contact Us
    2025 Ex Libris. All rights reserved