I actually just ran into this backtrace myself.

The cause is due to changes made in scala-xml 2.2.0, which based on the backtrace looks like is what you are using. We have a pull request to upgrade scala-xml to 2.2.0 in Daffodil and fix this, but it is still waiting on another review:

  https://github.com/apache/daffodil/pull/1060

However, that should not affect Daffodil 3.5.0 since it still depends on scala-xml 2.1.0, which does not have this problem as far as I know. Have you manually upgraded to 2.2.0 yourself? I think downgrading scala-xml should fix this for you.

- Steve

On 2023-08-01 05:16 PM, Lara Blatchford wrote:
Hello – In attempting to upgrade from Daffodil 3.3.0 to 3.5.0 I’m running into the issue that compilation of any DFDL schema causes the exception below.  What could cause this?

Example code:

   public void compile( String schema ) throws IOException

   {

     Compiler compiler = Daffodil.compiler( );

     ProcessorFactory pf = compiler.compileFile( new File( schema ) );

     if ( pf.isError( ) )

     {

      System.err.println( "Failed to load schema: " + schema + ", " + asString( pf.getDiagnostics( ) ) );

     }

}

Exception:

java.util.NoSuchElementException: None.get

         at scala.None$.get(Option.scala:529)

         at scala.None$.get(Option.scala:527)

        at scala.xml.parsing.FactoryAdapter.liftedTree1$1(FactoryAdapter.scala:225)

        at scala.xml.parsing.FactoryAdapter.endDocument(FactoryAdapter.scala:224)

        at org.apache.xerces.parsers.AbstractSAXParser.endDocument(Unknown Source)

        at org.apache.xerces.impl.xs.XMLSchemaValidator.endDocument(Unknown Source)

        at org.apache.xerces.impl.xs.XMLSchemaValidator.endDocument(Unknown Source)

        at org.apache.xerces.impl.XMLDocumentScannerImpl.endEntity(Unknown Source)

        at org.apache.xerces.impl.XMLEntityManager.endEntity(Unknown Source)

         at org.apache.xerces.impl.XMLEntityScanner.load(Unknown Source)

        at org.apache.xerces.impl.XMLEntityScanner.skipSpaces(Unknown Source)

        at org.apache.xerces.impl.XMLDocumentScannerImpl$TrailingMiscDispatcher.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.daffodil.lib.xml.DaffodilXMLLoader.$anonfun$load$1(DaffodilXMLLoader.scala:691)

        at org.apache.daffodil.lib.xml.DaffodilXMLLoader.$anonfun$load$1$adapted(DaffodilXMLLoader.scala:671)

         at scala.Option.foreach(Option.scala:407)

        at org.apache.daffodil.lib.xml.DaffodilXMLLoader.load(DaffodilXMLLoader.scala:671)

        at org.apache.daffodil.lib.xml.DaffodilXMLLoader.load(DaffodilXMLLoader.scala:647)

        at org.apache.daffodil.lib.xml.DaffodilXMLLoader.validateAsDFDLSchema(DaffodilXMLLoader.scala:529)

        at org.apache.daffodil.core.dsom.DFDLSchemaFile.$anonfun$iiXMLSchemaDocument$1(DFDLSchemaFile.scala:197)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValueBase.liftedTree1$1(OOLAG.scala:693)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValueBase.valueAsAny$lzycompute(OOLAG.scala:691)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValueBase.valueAsAny(OOLAG.scala:688)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValue.value$lzycompute(OOLAG.scala:739)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValue.value(OOLAG.scala:739)

        at org.apache.daffodil.core.dsom.DFDLSchemaFile.iiXMLSchemaDocument$lzycompute(DFDLSchemaFile.scala:189)

        at org.apache.daffodil.core.dsom.DFDLSchemaFile.iiXMLSchemaDocument(DFDLSchemaFile.scala:189)

        at org.apache.daffodil.core.dsom.Import.$anonfun$mapPair$3(Import.scala:67)

         at scala.Option.getOrElse(Option.scala:189)

        at org.apache.daffodil.core.dsom.Import.$anonfun$mapPair$1(Import.scala:46)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValueBase.liftedTree1$1(OOLAG.scala:693)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValueBase.valueAsAny$lzycompute(OOLAG.scala:691)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValueBase.valueAsAny(OOLAG.scala:688)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValue.value$lzycompute(OOLAG.scala:739)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValue.value(OOLAG.scala:739)

        at org.apache.daffodil.core.dsom.Import.mapPair$lzycompute(Import.scala:44)

         at org.apache.daffodil.core.dsom.Import.mapPair(Import.scala:44)

        at org.apache.daffodil.core.dsom.IIBase.$anonfun$notSeenThisBefore$1(IIBase.scala:149)

        at scala.runtime.java8.JFunction0$mcZ$sp.apply(JFunction0$mcZ$sp.java:23)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValueBase.liftedTree1$1(OOLAG.scala:693)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValueBase.valueAsAny$lzycompute(OOLAG.scala:691)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValueBase.valueAsAny(OOLAG.scala:688)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValue.value$lzycompute(OOLAG.scala:739)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValue.value(OOLAG.scala:739)

        at org.apache.daffodil.core.dsom.IIBase.notSeenThisBefore$lzycompute(IIBase.scala:148)

        at org.apache.daffodil.core.dsom.IIBase.notSeenThisBefore(IIBase.scala:148)

        at org.apache.daffodil.core.dsom.IIBase.$anonfun$iiSchemaFileMaybe$1(IIBase.scala:278)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValueBase.liftedTree1$1(OOLAG.scala:693)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValueBase.valueAsAny$lzycompute(OOLAG.scala:691)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValueBase.valueAsAny(OOLAG.scala:688)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValue.value$lzycompute(OOLAG.scala:739)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValue.value(OOLAG.scala:739)

        at org.apache.daffodil.core.dsom.IIBase.iiSchemaFileMaybe$lzycompute(IIBase.scala:277)

        at org.apache.daffodil.core.dsom.IIBase.iiSchemaFileMaybe(IIBase.scala:277)

        at org.apache.daffodil.core.dsom.IIBase.$anonfun$seenAfter$1(IIBase.scala:178)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValueBase.liftedTree1$1(OOLAG.scala:693)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValueBase.valueAsAny$lzycompute(OOLAG.scala:691)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValueBase.valueAsAny(OOLAG.scala:688)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValue.value$lzycompute(OOLAG.scala:739)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValue.value(OOLAG.scala:739)

        at org.apache.daffodil.core.dsom.IIBase.seenAfter$lzycompute(IIBase.scala:177)

         at org.apache.daffodil.core.dsom.IIBase.seenAfter(IIBase.scala:177)

        at org.apache.daffodil.core.dsom.SchemaDocIncludesAndImportsMixin.$anonfun$getImportsOrIncludes$1(SchemaDocIncludesAndImportsMixin.scala:170)

        at scala.collection.TraversableOnce$folder$1.apply(TraversableOnce.scala:196)

        at scala.collection.TraversableOnce$folder$1.apply(TraversableOnce.scala:194)

         at scala.collection.Iterator.foreach(Iterator.scala:943)

         at scala.collection.Iterator.foreach$(Iterator.scala:943)

         at scala.collection.AbstractIterator.foreach(Iterator.scala:1431)

         at scala.collection.IterableLike.foreach(IterableLike.scala:74)

         at scala.collection.IterableLike.foreach$(IterableLike.scala:73)

         at scala.collection.AbstractIterable.foreach(Iterable.scala:56)

        at scala.collection.TraversableOnce.foldLeft(TraversableOnce.scala:199)

        at scala.collection.TraversableOnce.foldLeft$(TraversableOnce.scala:192)

        at scala.collection.AbstractTraversable.foldLeft(Traversable.scala:108)

        at org.apache.daffodil.core.dsom.SchemaDocIncludesAndImportsMixin.getImportsOrIncludes(SchemaDocIncludesAndImportsMixin.scala:167)

        at org.apache.daffodil.core.dsom.SchemaDocIncludesAndImportsMixin.getImportsOrIncludes$(SchemaDocIncludesAndImportsMixin.scala:162)

        at org.apache.daffodil.core.dsom.XMLSchemaDocument.getImportsOrIncludes(SchemaDocument.scala:68)

        at org.apache.daffodil.core.dsom.SchemaDocIncludesAndImportsMixin.$anonfun$ismli_$1(SchemaDocIncludesAndImportsMixin.scala:181)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValueBase.liftedTree1$1(OOLAG.scala:693)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValueBase.valueAsAny$lzycompute(OOLAG.scala:691)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValueBase.valueAsAny(OOLAG.scala:688)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValue.value$lzycompute(OOLAG.scala:739)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValue.value(OOLAG.scala:739)

        at org.apache.daffodil.core.dsom.SchemaDocIncludesAndImportsMixin.org$apache$daffodil$core$dsom$SchemaDocIncludesAndImportsMixin$$ismli_(SchemaDocIncludesAndImportsMixin.scala:180)

        at org.apache.daffodil.core.dsom.SchemaDocIncludesAndImportsMixin.org$apache$daffodil$core$dsom$SchemaDocIncludesAndImportsMixin$$ismli_$(SchemaDocIncludesAndImportsMixin.scala:180)

        at org.apache.daffodil.core.dsom.XMLSchemaDocument.org$apache$daffodil$core$dsom$SchemaDocIncludesAndImportsMixin$$ismli_$lzycompute(SchemaDocument.scala:68)

        at org.apache.daffodil.core.dsom.XMLSchemaDocument.org$apache$daffodil$core$dsom$SchemaDocIncludesAndImportsMixin$$ismli_(SchemaDocument.scala:68)

        at org.apache.daffodil.core.dsom.SchemaDocIncludesAndImportsMixin.importStatementsMap(SchemaDocIncludesAndImportsMixin.scala:178)

        at org.apache.daffodil.core.dsom.SchemaDocIncludesAndImportsMixin.importStatementsMap$(SchemaDocIncludesAndImportsMixin.scala:178)

        at org.apache.daffodil.core.dsom.XMLSchemaDocument.importStatementsMap(SchemaDocument.scala:68)

        at org.apache.daffodil.core.dsom.SchemaDocIncludesAndImportsMixin.$anonfun$sali_$1(SchemaDocIncludesAndImportsMixin.scala:188)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValueBase.liftedTree1$1(OOLAG.scala:693)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValueBase.valueAsAny$lzycompute(OOLAG.scala:691)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValueBase.valueAsAny(OOLAG.scala:688)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValue.value$lzycompute(OOLAG.scala:739)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValue.value(OOLAG.scala:739)

        at org.apache.daffodil.core.dsom.SchemaDocIncludesAndImportsMixin.org$apache$daffodil$core$dsom$SchemaDocIncludesAndImportsMixin$$sali_(SchemaDocIncludesAndImportsMixin.scala:187)

        at org.apache.daffodil.core.dsom.SchemaDocIncludesAndImportsMixin.org$apache$daffodil$core$dsom$SchemaDocIncludesAndImportsMixin$$sali_$(SchemaDocIncludesAndImportsMixin.scala:187)

        at org.apache.daffodil.core.dsom.XMLSchemaDocument.org$apache$daffodil$core$dsom$SchemaDocIncludesAndImportsMixin$$sali_$lzycompute(SchemaDocument.scala:68)

        at org.apache.daffodil.core.dsom.XMLSchemaDocument.org$apache$daffodil$core$dsom$SchemaDocIncludesAndImportsMixin$$sali_(SchemaDocument.scala:68)

        at org.apache.daffodil.core.dsom.SchemaDocIncludesAndImportsMixin.seenAfter(SchemaDocIncludesAndImportsMixin.scala:185)

        at org.apache.daffodil.core.dsom.SchemaDocIncludesAndImportsMixin.seenAfter$(SchemaDocIncludesAndImportsMixin.scala:185)

        at org.apache.daffodil.core.dsom.XMLSchemaDocument.seenAfter(SchemaDocument.scala:68)

        at org.apache.daffodil.core.dsom.SchemaSetIncludesAndImportsMixin.$anonfun$allSchemaFiles$1(SchemaSetIncludesAndImportsMixins.scala:66)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValueBase.liftedTree1$1(OOLAG.scala:693)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValueBase.valueAsAny$lzycompute(OOLAG.scala:691)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValueBase.valueAsAny(OOLAG.scala:688)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValue.value$lzycompute(OOLAG.scala:739)

        at org.apache.daffodil.lib.oolag.OOLAG$OOLAGValue.value(OOLAG.scala:739)

        at org.apache.daffodil.core.dsom.SchemaSetIncludesAndImportsMixin.allSchemaFiles(SchemaSetIncludesAndImportsMixins.scala:64)

        at org.apache.daffodil.core.dsom.SchemaSetIncludesAndImportsMixin.allSchemaFiles$(SchemaSetIncludesAndImportsMixins.scala:64)

        at org.apache.daffodil.core.dsom.SchemaSet.allSchemaFiles$lzycompute(SchemaSet.scala:95)

        at org.apache.daffodil.core.dsom.SchemaSet.allSchemaFiles(SchemaSet.scala:95)

        at org.apache.daffodil.core.dsom.SchemaSet.$anonfun$isValid$2(SchemaSet.scala:180)

        at scala.runtime.java8.JFunction0$mcZ$sp.apply(JFunction0$mcZ$sp.java:23)

         at org.apache.daffodil.lib.oolag.OOLAG$.keepGoing(OOLAG.scala:65)

        at org.apache.daffodil.core.dsom.SchemaSet.isValid$lzycompute(SchemaSet.scala:179)

        at org.apache.daffodil.core.dsom.SchemaSet.isValid(SchemaSet.scala:174)

        at org.apache.daffodil.core.dsom.SchemaSet.isError(SchemaSet.scala:592)

        at org.apache.daffodil.core.compiler.ProcessorFactory.isError(Compiler.scala:138)

        at org.apache.daffodil.core.compiler.Compiler.org$apache$daffodil$core$compiler$Compiler$$compileSourceInternal(Compiler.scala:362)

        at org.apache.daffodil.core.compiler.Compiler$.org$apache$daffodil$core$compiler$Compiler$$compileSourceSynchronizer(Compiler.scala:408)

        at org.apache.daffodil.core.compiler.Compiler.compileSource(Compiler.scala:339)

        at org.apache.daffodil.core.compiler.Compiler.compileFile(Compiler.scala:322)

        at org.apache.daffodil.japi.Compiler.compileFile(Daffodil.scala:142)

        at org.apache.daffodil.japi.Compiler.compileFile(Daffodil.scala:121)

        at test.app.dfdl.app.DfdlCompilerApp.compile(DfdlCompilerApp.java:52)

         at test.app.dfdl.app.DfdlCompilerApp.main(DfdlCompilerApp.java:25)

Thank you,

Lara


Reply via email to