PRIDE-Utilities / ms-data-core-api

Open-source java library to handle different file format standards for proteomics. Specially ms-data-core-api is good for MetaData representation.
Apache License 2.0
12 stars 8 forks source link

issue reported by Massive team #32

Closed ypriverol closed 6 years ago

ypriverol commented 6 years ago

Reported by @jjcarver

We got the latest version of ms-data-core-api (2.0.21) working on our cluster, but it seems the issue we were having (way back with version 2.0.6) has not been resolved yet. Hopefully, this is caused by a bug that you or someone on your team can fix without much difficulty.

Specifically, all we're trying to do is convert a user-uploaded mzid file (found here) to mzTab. We use our own simple Java application to do this, though it doesn't do anything special; it just wraps basic ms-data-core-api code to convert in a standard way:

File mzIdFile = <some input file>;
File mzTabFile = <some output file>;
FileOutputStream output = new FileOutputStream(mzTabFile);
new MzIdentMLMzTabConverter(new MzIdentMLControllerImpl(mzIdFile)).getMZTabFile().printMZTab(output);

When running this simple code on the above mzid file, we get the following log output from ms-data-core-api (before it throws its final exception):

E|RawXMLListener                          |Error trying to instantiate reference resolver: uk.ac.ebi.jmzidml.xml.jaxb.resolver.PeptideEvidenceRefResolver
java.lang.NullPointerException: null
        at java.io.StringReader.<init>(StringReader.java:50)
        at uk.ac.ebi.jmzidml.xml.jaxb.resolver.AbstractReferenceResolver.unmarshal(AbstractReferenceResolver.java:89)
        at uk.ac.ebi.jmzidml.xml.jaxb.resolver.PeptideEvidenceRefResolver.updateObject(PeptideEvidenceRefResolver.java:24)
        at uk.ac.ebi.jmzidml.xml.jaxb.resolver.PeptideEvidenceRefResolver.afterUnmarshal(PeptideEvidenceRefResolver.java:39)
        at uk.ac.ebi.jmzidml.xml.jaxb.unmarshaller.listeners.RawXMLListener.referenceResolving(RawXMLListener.java:187)
        at uk.ac.ebi.jmzidml.xml.jaxb.unmarshaller.listeners.RawXMLListener.afterUnmarshal(RawXMLListener.java:52)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.Loader.fireAfterUnmarshal(Loader.java:221)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.StructureLoader.leaveElement(StructureLoader.java:265)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallingContext.endElement(UnmarshallingContext.java:585)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.SAXConnector.endElement(SAXConnector.java:165)
        at org.xml.sax.helpers.XMLFilterImpl.endElement(XMLFilterImpl.java:570)
        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:609)
        at com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(AbstractXMLDocumentParser.java:183)
        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:351)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2784)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:602)
        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:112)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:505)
        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:842)
        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:771)
        at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)
        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1213)
        at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:643)
        at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:357)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:243)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:221)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:273)
        at uk.ac.ebi.jmzidml.xml.jaxb.resolver.AbstractReferenceResolver.unmarshal(AbstractReferenceResolver.java:89)
        at uk.ac.ebi.jmzidml.xml.jaxb.resolver.SpectrumIdentificationItemRefRefResolver.updateObject(SpectrumIdentificationItemRefRefResolver.java:24)
        at uk.ac.ebi.jmzidml.xml.jaxb.resolver.SpectrumIdentificationItemRefRefResolver.afterUnmarshal(SpectrumIdentificationItemRefRefResolver.java:39)
        at uk.ac.ebi.jmzidml.xml.jaxb.unmarshaller.listeners.RawXMLListener.referenceResolving(RawXMLListener.java:187)
        at uk.ac.ebi.jmzidml.xml.jaxb.unmarshaller.listeners.RawXMLListener.afterUnmarshal(RawXMLListener.java:52)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.Loader.fireAfterUnmarshal(Loader.java:221)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.StructureLoader.leaveElement(StructureLoader.java:265)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallingContext.endElement(UnmarshallingContext.java:585)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.SAXConnector.endElement(SAXConnector.java:165)
        at org.xml.sax.helpers.XMLFilterImpl.endElement(XMLFilterImpl.java:570)
        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:609)
        at com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(AbstractXMLDocumentParser.java:183)
        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:351)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2784)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:602)
        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:112)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:505)
        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:842)
        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:771)
        at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)
        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1213)
        at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:643)
        at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:357)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:243)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:221)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:273)
        at uk.ac.ebi.jmzidml.xml.io.MzIdentMLUnmarshaller.generateObject(MzIdentMLUnmarshaller.java:323)
        at uk.ac.ebi.jmzidml.xml.io.MzIdentMLUnmarshaller.unmarshal(MzIdentMLUnmarshaller.java:255)
        at uk.ac.ebi.pride.utilities.data.io.file.MzIdentMLUnmarshallerAdaptor.getIdentificationById(MzIdentMLUnmarshallerAdaptor.java:164)
        at uk.ac.ebi.pride.utilities.data.controller.impl.ControllerImpl.MzIdentMLControllerImpl.getProteinById(MzIdentMLControllerImpl.java:518)
        at uk.ac.ebi.pride.utilities.data.controller.impl.ControllerImpl.CachedDataAccessController.getProteinById(CachedDataAccessController.java:235)
        at uk.ac.ebi.pride.utilities.data.exporters.AbstractMzTabConverter.loadSearchEngineScores(AbstractMzTabConverter.java:299)
        at uk.ac.ebi.pride.utilities.data.exporters.AbstractMzTabConverter.convertMetadata(AbstractMzTabConverter.java:109)
        at uk.ac.ebi.pride.utilities.data.exporters.MzIdentMLMzTabConverter.convertMetadata(MzIdentMLMzTabConverter.java:1056)
        at uk.ac.ebi.pride.jmztab.utils.convert.ConvertProvider.createArchitecture(ConvertProvider.java:53)
        at uk.ac.ebi.pride.jmztab.utils.convert.ConvertProvider.<init>(ConvertProvider.java:39)
        at uk.ac.ebi.pride.utilities.data.exporters.AbstractMzTabConverter.<init>(AbstractMzTabConverter.java:54)
        at uk.ac.ebi.pride.utilities.data.exporters.MzIdentMLMzTabConverter.<init>(MzIdentMLMzTabConverter.java:69)
E|RawXMLListener                          |Error trying to instantiate reference resolver: uk.ac.ebi.jmzidml.xml.jaxb.resolver.SpectrumIdentificationItemRefRefResolver
java.lang.IllegalStateException: Could not instantiate reference resolver: uk.ac.ebi.jmzidml.xml.jaxb.resolver.PeptideEvidenceRefResolver
        at uk.ac.ebi.jmzidml.xml.jaxb.unmarshaller.listeners.RawXMLListener.referenceResolving(RawXMLListener.java:191)
        at uk.ac.ebi.jmzidml.xml.jaxb.unmarshaller.listeners.RawXMLListener.afterUnmarshal(RawXMLListener.java:52)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.Loader.fireAfterUnmarshal(Loader.java:221)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.StructureLoader.leaveElement(StructureLoader.java:265)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallingContext.endElement(UnmarshallingContext.java:585)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.SAXConnector.endElement(SAXConnector.java:165)
        at org.xml.sax.helpers.XMLFilterImpl.endElement(XMLFilterImpl.java:570)
        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:609)
        at com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(AbstractXMLDocumentParser.java:183)
        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:351)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2784)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:602)
        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:112)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:505)
        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:842)
        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:771)
        at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)
        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1213)
        at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:643)
        at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:357)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:243)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:221)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:273)
        at uk.ac.ebi.jmzidml.xml.jaxb.resolver.AbstractReferenceResolver.unmarshal(AbstractReferenceResolver.java:89)
        at uk.ac.ebi.jmzidml.xml.jaxb.resolver.SpectrumIdentificationItemRefRefResolver.updateObject(SpectrumIdentificationItemRefRefResolver.java:24)
        at uk.ac.ebi.jmzidml.xml.jaxb.resolver.SpectrumIdentificationItemRefRefResolver.afterUnmarshal(SpectrumIdentificationItemRefRefResolver.java:39)
        at uk.ac.ebi.jmzidml.xml.jaxb.unmarshaller.listeners.RawXMLListener.referenceResolving(RawXMLListener.java:187)
        at uk.ac.ebi.jmzidml.xml.jaxb.unmarshaller.listeners.RawXMLListener.afterUnmarshal(RawXMLListener.java:52)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.Loader.fireAfterUnmarshal(Loader.java:221)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.StructureLoader.leaveElement(StructureLoader.java:265)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallingContext.endElement(UnmarshallingContext.java:585)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.SAXConnector.endElement(SAXConnector.java:165)
        at org.xml.sax.helpers.XMLFilterImpl.endElement(XMLFilterImpl.java:570)
        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:609)
        at com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(AbstractXMLDocumentParser.java:183)
        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:351)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2784)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:602)
        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:112)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:505)
        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:842)
        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:771)
        at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)
        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1213)
        at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:643)
        at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:357)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:243)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:221)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:273)
        at uk.ac.ebi.jmzidml.xml.io.MzIdentMLUnmarshaller.generateObject(MzIdentMLUnmarshaller.java:323)
        at uk.ac.ebi.jmzidml.xml.io.MzIdentMLUnmarshaller.unmarshal(MzIdentMLUnmarshaller.java:255)
        at uk.ac.ebi.pride.utilities.data.io.file.MzIdentMLUnmarshallerAdaptor.getIdentificationById(MzIdentMLUnmarshallerAdaptor.java:164)
        at uk.ac.ebi.pride.utilities.data.controller.impl.ControllerImpl.MzIdentMLControllerImpl.getProteinById(MzIdentMLControllerImpl.java:518)
        at uk.ac.ebi.pride.utilities.data.controller.impl.ControllerImpl.CachedDataAccessController.getProteinById(CachedDataAccessController.java:235)
        at uk.ac.ebi.pride.utilities.data.exporters.AbstractMzTabConverter.loadSearchEngineScores(AbstractMzTabConverter.java:299)
        at uk.ac.ebi.pride.utilities.data.exporters.AbstractMzTabConverter.convertMetadata(AbstractMzTabConverter.java:109)
        at uk.ac.ebi.pride.utilities.data.exporters.MzIdentMLMzTabConverter.convertMetadata(MzIdentMLMzTabConverter.java:1056)
        at uk.ac.ebi.pride.jmztab.utils.convert.ConvertProvider.createArchitecture(ConvertProvider.java:53)
        at uk.ac.ebi.pride.jmztab.utils.convert.ConvertProvider.<init>(ConvertProvider.java:39)
        at uk.ac.ebi.pride.utilities.data.exporters.AbstractMzTabConverter.<init>(AbstractMzTabConverter.java:54)
        at uk.ac.ebi.pride.utilities.data.exporters.MzIdentMLMzTabConverter.<init>(MzIdentMLMzTabConverter.java:69)
----------

Then ms-data-core-api throws this exception, which our application catches:
----------
uk.ac.ebi.pride.utilities.data.controller.DataAccessException: Failed to retrieve protein identification: PROTEINDETECTIONHYPOTHESIS_IGHG4_HUMAN
        at uk.ac.ebi.pride.utilities.data.controller.impl.ControllerImpl.MzIdentMLControllerImpl.getProteinById(MzIdentMLControllerImpl.java:555)
        at uk.ac.ebi.pride.utilities.data.controller.impl.ControllerImpl.CachedDataAccessController.getProteinById(CachedDataAccessController.java:235)
        at uk.ac.ebi.pride.utilities.data.exporters.AbstractMzTabConverter.loadSearchEngineScores(AbstractMzTabConverter.java:299)
        at uk.ac.ebi.pride.utilities.data.exporters.AbstractMzTabConverter.convertMetadata(AbstractMzTabConverter.java:109)
        at uk.ac.ebi.pride.utilities.data.exporters.MzIdentMLMzTabConverter.convertMetadata(MzIdentMLMzTabConverter.java:1056)
        at uk.ac.ebi.pride.jmztab.utils.convert.ConvertProvider.createArchitecture(ConvertProvider.java:53)
        at uk.ac.ebi.pride.jmztab.utils.convert.ConvertProvider.<init>(ConvertProvider.java:39)
        at uk.ac.ebi.pride.utilities.data.exporters.AbstractMzTabConverter.<init>(AbstractMzTabConverter.java:54)
        at uk.ac.ebi.pride.utilities.data.exporters.MzIdentMLMzTabConverter.<init>(MzIdentMLMzTabConverter.java:69)
Caused by: java.lang.IllegalStateException: Could not instantiate reference resolver: uk.ac.ebi.jmzidml.xml.jaxb.resolver.SpectrumIdentificationItemRefRefResolver
        at uk.ac.ebi.jmzidml.xml.jaxb.unmarshaller.listeners.RawXMLListener.referenceResolving(RawXMLListener.java:191)
        at uk.ac.ebi.jmzidml.xml.jaxb.unmarshaller.listeners.RawXMLListener.afterUnmarshal(RawXMLListener.java:52)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.Loader.fireAfterUnmarshal(Loader.java:221)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.StructureLoader.leaveElement(StructureLoader.java:265)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallingContext.endElement(UnmarshallingContext.java:585)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.SAXConnector.endElement(SAXConnector.java:165)
        at org.xml.sax.helpers.XMLFilterImpl.endElement(XMLFilterImpl.java:570)
        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:609)
        at com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(AbstractXMLDocumentParser.java:183)
        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:351)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2784)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:602)
        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:112)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:505)
        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:842)
        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:771)
        at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)
        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1213)
        at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:643)
        at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:357)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:243)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:221)
        at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:273)
        at uk.ac.ebi.jmzidml.xml.io.MzIdentMLUnmarshaller.generateObject(MzIdentMLUnmarshaller.java:323)
        at uk.ac.ebi.jmzidml.xml.io.MzIdentMLUnmarshaller.unmarshal(MzIdentMLUnmarshaller.java:255)
        at uk.ac.ebi.pride.utilities.data.io.file.MzIdentMLUnmarshallerAdaptor.getIdentificationById(MzIdentMLUnmarshallerAdaptor.java:164)
        at uk.ac.ebi.pride.utilities.data.controller.impl.ControllerImpl.MzIdentMLControllerImpl.getProteinById(MzIdentMLControllerImpl.java:518)
        ... 11 more

I have no idea what these errors mean, so hopefully you can help us with this. This is a standard user-uploaded mzid file which should not pose any problem converting to mzTab.

Thanks, Jeremy

sureshhewabi commented 6 years ago

Requested input files for investigation

http://proteomics.ucsd.edu/Software/temp/ms-data-core-api-test-files/ATA_eluates_SUBJ-4_peptides_1_1_0.mzid

sureshhewabi commented 6 years ago

I cannot replicate this issue with ms-data-core-api (2.0.21) and mzIdentML file get converted into mzTab correctly.

sureshhewabi commented 6 years ago

I have send the instructions and a dummy sample project via email explaining how to do this conversion properly. Jeremy confirmed that this is not a bug and also he has solved the issue he had.

Thanks for all your help. After some testing with the code you gave me, I determined that my problem was caused by unpacking our application's dependency jars (including ms-data-core-api), rather than just including the jars themselves. Apparently this makes a difference. When the dependency resolution was changed to simply include the jars, the problem was resolved.

Thanks again.

Jeremy