In your GitHub project, the value you use for the quarkus.native.resources.includes
attribute does not target the good location.
For resources from your own project, you should not type the resources
folder's name, as stated in the documentation.
For resources from third-party jar (from direct or transitive dependencies), you should use a full path, but without a leading /
character.
quarkus.native.resources.includes = helloWorld.dat,helloWorld.dfdl.xsd,helloWorld.xslt,org/apache/daffodil/xsd/XMLSchema_for_DFDL.xsd
With this current value, the mvn install -Dnative
still generates errors due to the xerces' use of reflection and xerces' missing resources files.
As stated in the documentation, "The easiest way to register a class for reflection is to use the @RegisterForReflection annotation" (see link below).
package org.acme;
import io.quarkus.runtime.annotations.RegisterForReflection;
@RegisterForReflection(targets={ org.apache.xerces.impl.dv.dtd.DTDDVFactoryImpl.class, org.apache.xerces.impl.dv.xs.SchemaDVFactoryImpl.class})
public class MyReflectionConfiguration {
}
You need to update your application.properties
file too to include xerces' missing resources files.
quarkus.native.resources.includes = helloWorld.dat,helloWorld.dfdl.xsd,helloWorld.xslt,org/apache/daffodil/xsd/XMLSchema_for_DFDL.xsd,org/apache/xerces/impl/msg/XMLSchemaMessages*.properties
At this step, your project should compile, generate a native image and trigger test for the hello endpoint.
What I see now is an error due to your dfdl schema (your code reach a System.exit(1);
call) with this text in your test.txt file.
Schema Definition Error: Error loading schema due to src-resolve: Cannot resolve the name 'dfdl:anyOther' to a(n) 'attribute group' component.
It seems that even in plain java, your project contains errors ?