Re: NullPointerException with toMMCIF method
Jose Duarte <[email protected]> Mon, 13 Apr 2026 09:31:17 -0700
| Newsgroups | gmane.comp.java.bio.general |
|---|---|
| Message-ID | <CAHhO=JFE=2Hc8XEhUpSB_SvxXFjNwm+7iJD=u0kRGD1FuCr14A@mail.gmail.com> |
--===============9217636167674770209== Content-Type: multipart/alternative; boundary="000000000000b41543064f5a0355" --000000000000b41543064f5a0355 Content-Type: text/plain; charset="UTF-8" Thanks for reporting. It looks like this was introduced recently with the fix for this issue: https://github.com/biojava/biojava/issues/1116 I can submit a patch soon, it should be an easy fix. Jose On Mon, 13 Apr 2026 at 07:38, Enrico Morelli <[email protected]> wrote: > Dear all, > > I'm having trouble with a CIF that give me a NullPointerException using > toMMCIF method: > > public static void main(String[] args) throws StructureException, > IOException { > Structure structure = StructureIO.getStructure("2G10"); > System.out.println(StructureTools.getNrAtoms(structure)); > System.out.println(structure.toMMCIF()); > } > > > Exception in thread "main" java.lang.NullPointerException: Cannot invoke > "org.biojava.nbio.structure.EntityInfo.getType()" because the return value > of "org.biojava.nbio.structure.Chain.getEntityInfo()" is null > at org.biojava.nbio.structure.io > .cif.AbstractCifFileSupplier$AtomSiteCollector.accept(AbstractCifFileSupplier.java:312) > at > java.base/java.util.stream.ReduceOps$3ReducingSink.accept(ReduceOps.java:169) > at > java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1709) > at > java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:556) > at > java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:546) > at > java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921) > at > java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:265) > at > java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:702) > at org.biojava.nbio.structure.io > .cif.AbstractCifFileSupplier.getInternal(AbstractCifFileSupplier.java:39) > at org.biojava.nbio.structure.io > .cif.CifStructureSupplierImpl.get(CifStructureSupplierImpl.java:17) > at org.biojava.nbio.structure.io > .cif.CifStructureConverter.toCifFile(CifStructureConverter.java:230) > at org.biojava.nbio.structure.io > .cif.CifStructureConverter.toText(CifStructureConverter.java:205) > at org.biojava.nbio.structure.io > .FileConvert.toMMCIF(FileConvert.java:599) > at > org.biojava.nbio.structure.StructureImpl.toMMCIF(StructureImpl.java:697) > at BioJavaTest.main(BioJavaTest.java:15) > > Is there a reason for that? > > Thanks > > -- > ----------------------------------------------------------- > Enrico Morelli > System Administrator | Programmer | Web Developer > > CERM - Polo Scientifico > via Sacconi, 6 - 50019 Sesto Fiorentino (FI) - ITALY > ------------------------------------------------------------ > _______________________________________________ > Biojava-l mailing list - [email protected] > https://mailman.open-bio.org/mailman/listinfo/biojava-l > --000000000000b41543064f5a0355 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr">Thanks for reporting. It looks like this was introduced re= cently with the fix for this issue:=C2=A0<a href=3D"https://github.com/bioj= ava/biojava/issues/1116">https://github.com/biojava/biojava/issues/1116</a>= <div><br></div><div>I can submit a patch soon, it should be an easy fix.</d= iv><div><br></div><div>Jose</div></div><br><div class=3D"gmail_quote gmail_= quote_container"><div dir=3D"ltr" class=3D"gmail_attr">On Mon, 13 Apr 2026 = at 07:38, Enrico Morelli <<a href=3D"mailto:[email protected]">morel= [email protected]</a>> wrote:<br></div><blockquote class=3D"gmail_quote" = style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);pa= dding-left:1ex">Dear all,<br> <br> I'm having trouble with a CIF that give me a NullPointerException using= toMMCIF method:<br> <br> =C2=A0public static void main(String[] args) throws StructureException, IOE= xception {<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 Structure structure =3D StructureIO.getStructur= e("2G10");<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 System.out.println(StructureTools.getNrAtoms(st= ructure));<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 System.out.println(structure.toMMCIF());<br> }<br> <br> <br> Exception in thread "main" java.lang.NullPointerException: Cannot= invoke "org.biojava.nbio.structure.EntityInfo.getType()" because= the return value of "org.biojava.nbio.structure.Chain.getEntityInfo()= " is null<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 at <a href=3D"http://org.biojava.nbio.structure= .io" target=3D"_blank">org.biojava.nbio.structure.io</a>.cif.AbstractCifFil= eSupplier$AtomSiteCollector.accept(AbstractCifFileSupplier.java:312)<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 at java.base/java.util.stream.ReduceOps$3Reduci= ngSink.accept(ReduceOps.java:169)<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 at java.base/java.util.ArrayList$ArrayListSplit= erator.forEachRemaining(ArrayList.java:1709)<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 at java.base/java.util.stream.AbstractPipeline.= copyInto(AbstractPipeline.java:556)<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 at java.base/java.util.stream.AbstractPipeline.= wrapAndCopyInto(AbstractPipeline.java:546)<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 at java.base/java.util.stream.ReduceOps$ReduceO= p.evaluateSequential(ReduceOps.java:921)<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 at java.base/java.util.stream.AbstractPipeline.= evaluate(AbstractPipeline.java:265)<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 at java.base/java.util.stream.ReferencePipeline= .collect(ReferencePipeline.java:702)<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 at <a href=3D"http://org.biojava.nbio.structure= .io" target=3D"_blank">org.biojava.nbio.structure.io</a>.cif.AbstractCifFil= eSupplier.getInternal(AbstractCifFileSupplier.java:39)<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 at <a href=3D"http://org.biojava.nbio.structure= .io" target=3D"_blank">org.biojava.nbio.structure.io</a>.cif.CifStructureSu= pplierImpl.get(CifStructureSupplierImpl.java:17)<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 at <a href=3D"http://org.biojava.nbio.structure= .io" target=3D"_blank">org.biojava.nbio.structure.io</a>.cif.CifStructureCo= nverter.toCifFile(CifStructureConverter.java:230)<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 at <a href=3D"http://org.biojava.nbio.structure= .io" target=3D"_blank">org.biojava.nbio.structure.io</a>.cif.CifStructureCo= nverter.toText(CifStructureConverter.java:205)<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 at <a href=3D"http://org.biojava.nbio.structure= .io" target=3D"_blank">org.biojava.nbio.structure.io</a>.FileConvert.toMMCI= F(FileConvert.java:599)<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 at org.biojava.nbio.structure.StructureImpl.toM= MCIF(StructureImpl.java:697)<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 at BioJavaTest.main(BioJavaTest.java:15)<br> <br> Is there a reason for that?<br> <br> Thanks<br> <br> -- <br> -----------------------------------------------------------<br> =C2=A0 Enrico Morelli<br> =C2=A0 System Administrator | Programmer | Web Developer<br> <br> =C2=A0 CERM - Polo Scientifico<br> =C2=A0 via Sacconi, 6 - 50019 Sesto Fiorentino (FI) - ITALY<br> ------------------------------------------------------------<br> _______________________________________________<br> Biojava-l mailing list=C2=A0 -=C2=A0 <a href=3D"mailto:[email protected]= g" target=3D"_blank">[email protected]</a><br> <a href=3D"https://mailman.open-bio.org/mailman/listinfo/biojava-l" rel=3D"= noreferrer" target=3D"_blank">https://mailman.open-bio.org/mailman/listinfo= /biojava-l</a><br> </blockquote></div> --000000000000b41543064f5a0355-- --===============9217636167674770209== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Biojava-l mailing list - [email protected] https://mailman.open-bio.org/mailman/listinfo/biojava-l --===============9217636167674770209==--