Smooks and WSO2 integration: No ContentHandlerFactory configured

537 views
Skip to first unread message

Nestor F

unread,
Jan 3, 2022, 2:23:10 PM1/3/22
to Smooks Users
Hi team,

We succesfully created a Java PoC using Smooks (2.0.0-M3) and DFDL to parse EDI to XML and unparse XML to EDI, based on the Smooks examples.

We are trying to implement this as an API on WSO2. We have tried 2 approaches to make the functionality available from the mediation logic in the integration platform:
  • Create a WSO2 custom mediator (which is deployed as an OSGI bundle)
  • Create an Axis2 service
Either way we get an error when instantiating the Smooks class (see below).

I checked the DefaultContentDeliveryConfigBuilder code but couldn't figure out a workaround to this error yet.

Could you please give some advice on how to best troubleshoot and solve this issue on such runtime? (maybe it happens with other frameworks as well, like Camel, Spring Boot,..?)


org.smooks.api.SmooksException: Error processing resource file '/system-interceptors.xml'.
        at org.smooks.engine.resource.config.SystemResourceConfigListFactory.create(SystemResourceConfigListFactory.java:77)
        at org.smooks.engine.DefaultApplicationContextBuilder.registerSystemResources(DefaultApplicationContextBuilder.java:130)
        at org.smooks.engine.DefaultApplicationContextBuilder.build(DefaultApplicationContextBuilder.java:104)
        at org.smooks.Smooks.<init>(Smooks.java:152)

       ...

Caused by: org.smooks.api.SmooksException: No ContentHandlerFactory configured (IoC) for type 'class' (Java).
        at org.smooks.engine.delivery.DefaultContentDeliveryConfigBuilder$ContentHandlerExtractionStrategy.applyContentDeliveryUnitStrategy(DefaultContentDeliveryConfigBuilder.java:377)
        at org.smooks.engine.delivery.DefaultContentDeliveryConfigBuilder$ContentHandlerExtractionStrategy.applyStrategy(DefaultContentDeliveryConfigBuilder.java:367)
        at org.smooks.engine.delivery.DefaultContentDeliveryConfigBuilder$ResourceConfigTableIterator.iterate(DefaultContentDeliveryConfigBuilder.java:518)
        at org.smooks.engine.delivery.DefaultContentDeliveryConfigBuilder$ResourceConfigTableIterator.access$200(DefaultContentDeliveryConfigBuilder.java:498)
        at org.smooks.engine.delivery.DefaultContentDeliveryConfigBuilder.extractContentHandlers(DefaultContentDeliveryConfigBuilder.java:340)
        at org.smooks.engine.delivery.DefaultContentDeliveryConfigBuilder.load(DefaultContentDeliveryConfigBuilder.java:238)
        at org.smooks.engine.delivery.DefaultContentDeliveryConfigBuilder.build(DefaultContentDeliveryConfigBuilder.java:140)
        at org.smooks.engine.delivery.DefaultContentDeliveryRuntimeFactory.create(DefaultContentDeliveryRuntimeFactory.java:87)
        at org.smooks.engine.DefaultExecutionContext.<init>(DefaultExecutionContext.java:117)
        at org.smooks.engine.DefaultExecutionContext.<init>(DefaultExecutionContext.java:94)
        at org.smooks.Smooks.createExecutionContext(Smooks.java:448)
        at org.smooks.Smooks.createExecutionContext(Smooks.java:406)
        at org.smooks.engine.resource.config.XMLConfigDigester.digestExtendedResourceConfig(XMLConfigDigester.java:521)
        at org.smooks.engine.resource.config.XMLConfigDigester.digestV20XSDValidatedConfig(XMLConfigDigester.java:331)
        at org.smooks.engine.resource.config.XMLConfigDigester.digestConfigRecursively(XMLConfigDigester.java:246)
        at org.smooks.engine.resource.config.XMLConfigDigester.digestConfig(XMLConfigDigester.java:214)
        at org.smooks.engine.resource.config.SystemResourceConfigListFactory.create(SystemResourceConfigListFactory.java:69)
        ... 21 more
       
       
Regards and happy New Year

Claude Mamo

unread,
Jan 3, 2022, 3:02:57 PM1/3/22
to smook...@googlegroups.com
Glad to hear Nestor! About the error, Smooks isn't finding a registered ContentHandlerFactory for creating Java resources. The only explanation I could think of which is causing the error is that the container environment is hiding smooks-core-2.0.0-M3.jar!/META-INF/services/org.smooks.api.delivery.ContentHandlerFactory from the Smooks runtime which prevents JavaContentHandlerFactory from being discovered.

Claude

--
You received this message because you are subscribed to the Google Groups "Smooks Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to smooks-user...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/smooks-user/5609f1d7-c905-4316-b7a2-d7d751701818n%40googlegroups.com.

Srivathsan Shanmuganathan

unread,
Jan 4, 2022, 4:33:18 AM1/4/22
to smook...@googlegroups.com
Hi Nestor, did you try copying the smooks-core jar to lib folder? The jar will be converted as a bundle then.

Vathsan

Nestor F

unread,
Jan 4, 2022, 5:19:01 AM1/4/22
to Smooks Users
Thank you very much Vathsan, I think that did help. However it is not working yet.

I copied these files to the lib folder (these jars are also included in the shaded depoyable jar or aar)

smooks-api-2.0.0-M3.jar
smooks-commons-2.0.0-M3.jar
smooks-core-2.0.0-M3.jar

Now I am getting a different error: ClassNotFoundException for class FreeMarkerTemplate, even though I can see that class is included inside smooks-commons-2.0.0-M3.jar in lib folder.


[2022-01-04 11:07:33,882]  WARN {Scanner} - Not scanning classpath for ClassLoader 'org.eclipse.osgi.internal.loader.EquinoxClassLoader'.  ClassLoader must implement 'java.net.URLClassLoader'.
java.lang.TypeNotPresentException: Type org.smooks.support.FreeMarkerTemplate not present
        at sun.reflect.generics.factory.CoreReflectionFactory.makeNamedType(CoreReflectionFactory.java:117)
        at sun.reflect.generics.visitor.Reifier.visitClassTypeSignature(Reifier.java:125)
        at sun.reflect.generics.tree.ClassTypeSignature.accept(ClassTypeSignature.java:49)
        at sun.reflect.generics.visitor.Reifier.reifyTypeArguments(Reifier.java:68)
        at sun.reflect.generics.visitor.Reifier.visitClassTypeSignature(Reifier.java:138)
        at sun.reflect.generics.tree.ClassTypeSignature.accept(ClassTypeSignature.java:49)
        at sun.reflect.generics.repository.ClassRepository.getSuperInterfaces(ClassRepository.java:108)
        at java.lang.Class.getGenericInterfaces(Class.java:913)
        at org.smooks.engine.converter.TypeConverterFactoryLoader.assertTypeConverterFactoryInterface(TypeConverterFactoryLoader.java:86)
        at org.smooks.engine.converter.TypeConverterFactoryLoader.load(TypeConverterFactoryLoader.java:67)
        at org.smooks.engine.DefaultRegistry.<init>(DefaultRegistry.java:96)
        at org.smooks.engine.DefaultApplicationContextBuilder.build(DefaultApplicationContextBuilder.java:95)

        at org.smooks.Smooks.<init>(Smooks.java:152)
        at com.chakray.axis2.Parse.xml2edi(Parse.java:104)
        at com.chakray.axis2.Parse.doParse(Parse.java:58)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.apache.axis2.rpc.receivers.RPCUtil.invokeServiceClass(RPCUtil.java:212)
        at org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java:117)
        at org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java:40)
        at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:110)
        at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
        at org.apache.synapse.transport.passthru.ServerWorker.processNonEntityEnclosingRESTHandler(ServerWorker.java:367)
        at org.apache.synapse.transport.passthru.ServerWorker.processEntityEnclosingRequest(ServerWorker.java:426)
        at org.apache.synapse.transport.passthru.ServerWorker.run(ServerWorker.java:181)
        at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.ClassNotFoundException: org.smooks.support.FreeMarkerTemplate cannot be found by smooks_core_2.0.0_M3_1.0.0
        at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:512)
        at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:423)
        at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:415)
        at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:155)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:348)
        at sun.reflect.generics.factory.CoreReflectionFactory.makeNamedType(CoreReflectionFactory.java:114)
        ... 30 more

Srivathsan Shanmuganathan

unread,
Jan 4, 2022, 5:32:51 AM1/4/22
to smook...@googlegroups.com
From the latest error I suspect the OSGi bundles are not resolving since there seems to be some version mismatch.

You may try starting the WSO2 server with '-DosgiConsole' system property and then check what is the FreeMarkerTemplate version smooks-core jar is expecting. 
You may use 'ss' to list all the bundles and then use 'diag <component number of smooks-core>' to troubleshoot.

Nestor F

unread,
Jan 4, 2022, 5:41:27 AM1/4/22
to Smooks Users
Thanks Vathsan. I tried but this is not telling me much about the error at the moment, the bundles appear to be active:

osgi> ss smooks
"Framework is launched."


id        State       Bundle
171        RESOLVED    org.wso2.carbon.mediator.smooks_4.7.59
                    Master=233
226        ACTIVE      smooks_1.5.1.wso2v1
227        ACTIVE      smooks_api_2.0.0_M3_1.0.0
228        ACTIVE      smooks_commons_2.0.0_M3_1.0.0
229        ACTIVE      smooks_core_2.0.0_M3_1.0.0


osgi> diag 227
smooks_api_2.0.0_M3 [227]
  No resolution report for the bundle.
osgi> diag 228
smooks_commons_2.0.0_M3 [228]
  No resolution report for the bundle.
osgi> diag 229
smooks_core_2.0.0_M3 [229]
  No resolution report for the bundle.

Srivathsan Shanmuganathan

unread,
Jan 4, 2022, 5:48:42 AM1/4/22
to smook...@googlegroups.com
Yes, it seems everything is active. I wonder why ClassNotFoundException is thrown during server startup.

Nestor F

unread,
Jan 4, 2022, 5:53:06 AM1/4/22
to Smooks Users
No, that ClassNotFoundException is not thrown during server startup. Server startup is fine. 

ClassNotFoundException is thrown only during runtime, when creating an instance of Smooks.

Smooks smooks = new Smooks();

Either without parameters or when passing a Smooks configuration file to the constructor.

Srivathsan Shanmuganathan

unread,
Jan 4, 2022, 6:07:29 AM1/4/22
to smook...@googlegroups.com
Sorry, I misunderstood the issue. 
Since this is happening during runtime, importing the said package (org.smooks.support.*) or setting <DynamicImport-Package>*</DynamicImport-Package> in the custom mediator's pom.xml file should resolve the problem. If that doesn't work give it a try using resolution:=optional;

Nestor F

unread,
Jan 4, 2022, 10:37:12 AM1/4/22
to Smooks Users
Thanks Vathsan. No success yet, same error: 

java.lang.ClassNotFoundException: org.smooks.support.FreeMarkerTemplate cannot be found by smooks_core_2.0.0_M3_1.0.0

We will keep checking. Anyway I attach the pom in case you want to have a look.

pom.xml

Nestor F

unread,
Jan 4, 2022, 3:42:36 PM1/4/22
to Smooks Users
Vathsan:

I tried removing the maven shade plugin from the custom mediator pom.xml, and copying all the dependency jars to the lib folder. In that case, the error is the same again:


java.lang.ClassNotFoundException: org.smooks.support.FreeMarkerTemplate cannot be found by smooks_core_2.0.0_M3_1.0.0

The bundle smooks_core_2.0.0_M3_1.0.0 is generated from the jar file smooks-core-2.0.0-M3.jar in the lib folder.

I suspect perhaps the issue is not with the custom mediator pom.xml, but maybe the smooks_core_2.0.0_M3_1.0.0 needs to import org.smooks.support.FreeMarkerTemplate from the smooks_commons_2.0.0_M3_1.0.0 bundle (smooks-commons-2.0.0-M3.jar), and it is not importing it now, is that possible? I tried updating the MANIFEST in the smooks_core bundle but it hasn't worked.

Srivathsan Shanmuganathan

unread,
Jan 5, 2022, 1:55:54 AM1/5/22
to smook...@googlegroups.com
Hi Nestor,

As I checked the package is being exported from smooks-core and smooks-common.
osgi> p org.smooks.support
osgi.wiring.package; bundle-symbolic-name="smooks_commons_2.0.0_M3"; bundle-version:Version="1.0.0"; version:Version="0.0.0"; osgi.wiring.package="org.smooks.support"<smooks_commons_2.0.0_M3_1.0.0 [584]>
osgi.wiring.package; bundle-symbolic-name="smooks_core_2.0.0_M3"; bundle-version:Version="1.0.0"; version:Version="0.0.0"; osgi.wiring.package="org.smooks.support"<smooks_core_2.0.0_M3_1.0.0 [585]>


Could you please try adding the following configuration in the pom?
<Import-Package>
org.smooks.support;version="0.0.0",
*;resolution:=optional
</Import-Package>

To confirm if the smooks_core_2.0.0_M3_1.0.0 really needs to import org.smooks.support.FreeMarkerTemplate from the smooks_commons_2.0.0_M3_1.0.0 bundle, we can add smooks-commons as a dependency in the mediator.pom and then export the package. Something like this,

<dependencies>
<dependency>
<groupId>org.smooks</groupId>
<artifactId>smooks-commons</artifactId>
<version>2.0.0-M3</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
...
<configuration>
<instructions>
<Export-Package>
org.smooks.support;version="0.0.0"
</Export-Package>
</instructions>
</configuration>
</plugin>
</plugins>
</build>

Vathsan

Nestor F

unread,
Jan 5, 2022, 5:55:32 AM1/5/22
to Smooks Users
Hi Vathsan,

If I update the pom as per your last comment (updated-pom.xml), I still get the same runtime error:


Caused by: java.lang.ClassNotFoundException: org.smooks.support.FreeMarkerTemplate cannot be found by smooks_core_2.0.0_M3_1.0.0

ss smooks
"Framework is launched."


id        State       Bundle
202        RESOLVED    org.wso2.carbon.mediator.smooks_4.7.59
                    Master=271
261        ACTIVE      smooks_1.5.1.wso2v1
262        ACTIVE      smooks_api_2.0.0_M3_1.0.0
263        ACTIVE      smooks_commons_2.0.0_M3_1.0.0
264        ACTIVE      smooks_core_2.0.0_M3_1.0.0
265        ACTIVE      smooks_dfdl_cartridge_1.0.0_M3_1.0.0
266        ACTIVE      smooks_edi_cartridge_2.0.0_M3_1.0.0

osgi> ss Mediator

"Framework is launched."


id        State       Bundle
4        ACTIVE      EdifactIPMediator_1.0.0.SNAPSHOT


osgi> p org.smooks.support
osgi.wiring.package; bundle-symbolic-name="smooks_commons_2.0.0_M3"; bundle-version:Version="1.0.0"; version:Version="0.0.0"; osgi.wiring.package="org.smooks.support"<smooks_commons_2.0.0_M3_1.0.0 [263]>
osgi.wiring.package; bundle-symbolic-name="smooks_core_2.0.0_M3"; bundle-version:Version="1.0.0"; version:Version="0.0.0"; osgi.wiring.package="org.smooks.support"<smooks_core_2.0.0_M3_1.0.0 [264]>
osgi.wiring.package; bundle-symbolic-name="EdifactIPMediator"; bundle-version:Version="1.0.0.SNAPSHOT"; version:Version="0.0.0"; osgi.wiring.package="org.smooks.support"; uses:="org.slf4j,org.smooks.assertion,org.smooks.classpath,javax.xml,org.w3c.dom,org.smooks.api,freemarker.template,freemarker.ext.dom,org.smooks.engine.resource.visitor.dom,org.smooks.api.bean.context,org.mvel2.templates,org.apache.commons.lang,org.smooks.io.payload,org.smooks.api.delivery.sax,javax.xml.namespace,org.xml.sax,org.smooks.xml,javax.xml.transform.stream,org.smooks,javax.xml.transform,org.smooks.api.profile,javax.xml.validation,javax.xml.transform.dom,javax.xml.parsers,javax.xml.xpath"<EdifactIPMediator_1.0.0.SNAPSHOT [4]>
updated-pom.xml

Srivathsan Shanmuganathan

unread,
Jan 6, 2022, 12:08:47 PM1/6/22
to smook...@googlegroups.com
Hi Nestor,

I somehow missed the email.

Would you able to share a sample source code (the problematic part), so that I can give it a try from my end?

Vathsan

Nestor F

unread,
Jan 7, 2022, 6:34:07 AM1/7/22
to Smooks Users
Vathsan: You can get the code here. The code has been tested on Java, but it doesn't run as a WSO2 mediator due to dependency issues.

https://www.dropbox.com/s/i1zpqdzug3qond8/Smooks2Mediator.zip?dl=0
https://www.dropbox.com/s/9gvnvbgdda6fttm/libs.zip?dl=0

Thanks

Ulrich Schuster

unread,
Apr 1, 2022, 12:35:21 PM4/1/22
to Smooks Users
Dear Nestor

Were you able to resolve the problem? I am getting the exact same error message with Smooks 2.0.0-RC1 in a plain Kotlin environment on JDK17:

2022-04-01T18:04:48.140+0200 WARN Not scanning classpath for ClassLoader 'jdk.internal.loader.ClassLoaders$AppClassLoader'.  ClassLoader must implement 'java.net.URLClassLoader'.
2022-04-01T18:04:48.393+0200 WARN Not scanning classpath for ClassLoader 'jdk.internal.loader.ClassLoaders$AppClassLoader'.  ClassLoader must implement 'java.net.URLClassLoader'.
Exception in thread "main" org.smooks.api.SmooksException: Error processing resource file '/system-interceptors.xml'.

    at org.smooks.engine.resource.config.SystemResourceConfigListFactory.create(SystemResourceConfigListFactory.java:77)
    at org.smooks.engine.DefaultApplicationContextBuilder.registerSystemResources(DefaultApplicationContextBuilder.java:130)
    at org.smooks.engine.DefaultApplicationContextBuilder.build(DefaultApplicationContextBuilder.java:104)
    at org.smooks.Smooks.<init>(Smooks.java:151)

This is the error I see when executing the maven assembly fat-jar on the command line. When running from inside IntelliJ, the error is different:

Exception in thread "main" org.smooks.api.SmooksConfigException: Error invoking @PostConstruct method 'postConstruct' on class 'org.smooks.cartridges.dfdl.parser.DfdlParser'.
    at org.smooks.engine.lifecycle.AbstractLifecyclePhase.invoke(AbstractLifecyclePhase.java:79)
    at org.smooks.engine.lifecycle.PostConstructLifecyclePhase.doApply(PostConstructLifecyclePhase.java:88)
    at org.smooks.engine.lifecycle.AbstractLifecyclePhase.apply(AbstractLifecyclePhase.java:61)
    at org.smooks.engine.lifecycle.DefaultLifecycleManager.applyPhase(DefaultLifecycleManager.java:53)
    at org.smooks.engine.delivery.JavaContentHandlerFactory.create(JavaContentHandlerFactory.java:94)
[...]
Caused by: org.smooks.api.SmooksConfigException: org.smooks.api.SmooksConfigException: java.lang.RuntimeException: Schema Definition Error: Error loading schema due to org.xml.sax.SAXParseException; systemId: file:/var/folders/9s/0zd_vp9s7q9cfkb89j1xvk0w0000gn/T/15794338114091714036/EDIFACT-Interchange-9ff715a6-73f0-3595-8f18-c283689a52ad-.dfdl.xsd; lineNumber: 89; columnNumber: 30; src-resolve: Cannot resolve the name 'D07B:D07B' to a(n) 'element declaration' component.
Schema context: file:/var/folders/9s/0zd_vp9s7q9cfkb89j1xvk0w0000gn/T/15794338114091714036/EDIFACT-Interchange-9ff715a6-73f0-3595-8f18-c283689a52ad-.dfdl.xsd Location in file:/var/folders/9s/0zd_vp9s7q9cfkb89j1xvk0w0000gn/T/15794338114091714036/EDIFACT-Interchange-9ff715a6-73f0-3595-8f18-c283689a52ad-.dfdl.xsd
    at org.smooks.cartridges.edi.EdiDataProcessorFactory.createDataProcessor(EdiDataProcessorFactory.java:87)
    at org.smooks.cartridges.dfdl.parser.DfdlParser.postConstruct(DfdlParser.java:167)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:568)
    at org.smooks.engine.lifecycle.AbstractLifecyclePhase.invoke(AbstractLifecyclePhase.java:75)
    ... 39 more


Even though they are different, I suspect both errors to be related. I'm running a multi-module maven build. My knowledge on Jave classpath issues maybe in combination with the Java module system (the classloader warning above) is limited. Any pointers to move forward in debugging would be greatly appreciated!

Thanks very much
Uli

Nestor F

unread,
Apr 1, 2022, 1:46:33 PM4/1/22
to Smooks Users
Hi Ulrich,

Unfortunately we never solved this, not even with WSO2 support. We ended up simply using Java and Spring instead, then we encountered no dependency issues at all, and that worked for us.

Regards

Stefan Großhauser

unread,
Jul 1, 2022, 3:47:36 AM7/1/22
to Smooks Users
Hello everyone,

I am encountering this exception, too, with  2.0.0-RC1, Java 8. Note that the execution only arises here when my code is running in the VM of an ERP application.

Caused by: org.smooks.api.SmooksException: Error processing resource file '/system-interceptors.xml'.

    at org.smooks.engine.resource.config.SystemResourceConfigListFactory.create(SystemResourceConfigListFactory.java:77)
    at org.smooks.engine.DefaultApplicationContextBuilder.registerSystemResources(DefaultApplicationContextBuilder.java:130)
    at org.smooks.engine.DefaultApplicationContextBuilder.build(DefaultApplicationContextBuilder.java:104)
    at org.smooks.Smooks.<init>(Smooks.java:151)
    at org.smooks.Smooks.<init>(Smooks.java:181)
    at de.hammerbachergmbh.edieingang.OfficeDepotEdiParser.readEDI(OfficeDepotEdiParser.java:64)
    at de.hammerbachergmbh.edieingang.OfficeDepotEdiParser.parse(OfficeDepotEdiParser.java:44)
    ... 17 more

Caused by: org.smooks.api.SmooksException: No ContentHandlerFactory configured (IoC) for type 'class' (Java).
    at org.smooks.engine.delivery.DefaultContentDeliveryConfigBuilder$ContentHandlerExtractionStrategy.applyContentDeliveryUnitStrategy(DefaultContentDeliveryConfigBuilder.java:383)
    at org.smooks.engine.delivery.DefaultContentDeliveryConfigBuilder$ContentHandlerExtractionStrategy.applyStrategy(DefaultContentDeliveryConfigBuilder.java:373)
    at org.smooks.engine.delivery.DefaultContentDeliveryConfigBuilder$ResourceConfigTableIterator.iterate(DefaultContentDeliveryConfigBuilder.java:524)
    at org.smooks.engine.delivery.DefaultContentDeliveryConfigBuilder$ResourceConfigTableIterator.access$200(DefaultContentDeliveryConfigBuilder.java:504)
    at org.smooks.engine.delivery.DefaultContentDeliveryConfigBuilder.extractContentHandlers(DefaultContentDeliveryConfigBuilder.java:346)

    at org.smooks.engine.delivery.DefaultContentDeliveryConfigBuilder.load(DefaultContentDeliveryConfigBuilder.java:238)
    at org.smooks.engine.delivery.DefaultContentDeliveryConfigBuilder.build(DefaultContentDeliveryConfigBuilder.java:140)
    at org.smooks.engine.delivery.DefaultContentDeliveryRuntimeFactory.create(DefaultContentDeliveryRuntimeFactory.java:86)

    at org.smooks.engine.DefaultExecutionContext.<init>(DefaultExecutionContext.java:117)
    at org.smooks.engine.DefaultExecutionContext.<init>(DefaultExecutionContext.java:94)
    at org.smooks.Smooks.createExecutionContext(Smooks.java:447)
    at org.smooks.Smooks.createExecutionContext(Smooks.java:405)
    at org.smooks.engine.resource.config.XMLConfigDigester.digestExtendedResourceConfig(XMLConfigDigester.java:518)
    at org.smooks.engine.resource.config.XMLConfigDigester.digestV20XSDValidatedConfig(XMLConfigDigester.java:328)
    at org.smooks.engine.resource.config.XMLConfigDigester.digestConfigRecursively(XMLConfigDigester.java:243)
    at org.smooks.engine.resource.config.XMLConfigDigester.digestConfig(XMLConfigDigester.java:211)
    at org.smooks.engine.resource.config.SystemResourceConfigListFactory.create(SystemResourceConfigListFactory.java:69)
    ... 23 more

The exception is thrown by the line in my code calling the constructor

Smooks smooks = new Smooks("smooks-config.xml");

The project uses gradle.


repositories {
    maven {
        // the repository for smooks packages
        url "https://oss.sonatype.org/content/repositories/releases"
    }
    // Use Maven Central for resolving other dependencies.
    mavenCentral()
}
dependencies {
    // implementation ('org.smooks:smooks-core:2.0.0-RC1') // should not be necessary
    implementation ('org.smooks.cartridges.edi:smooks-edifact-cartridge:2.0.0-RC1')
    implementation ('org.smooks.cartridges:smooks-javabean-cartridge:2.0.0-RC1')
    implementation ('org.smooks.cartridges.edi:edifact-schemas:2.0.0-RC1:d96a')
    implementation ('org.smooks.cartridges.edi:edifact-schemas:2.0.0-RC1:d03b')
}


If I construct a minimal example identical to https://github.com/smooks/smooks-examples/tree/master/edifact-to-xml (but using gradle) then it compiles and executes without problems.
However, embedding the same dependencies and constructor call into that other Java application leads to the error.
Unfortunately, just like Uli, I do not really know how I could investigate on this any further, any pointers to move forward in debugging would be greatly appreciated.

If I check (naively? I am not very familiar with such issues at the moment) where the classes come from, I learn that all of these come from the jar deployed by me containing the smooks dependencies declared by me.

throw new RuntimeException(String.format("org.smooks.engine.delivery.DefaultContentDeliveryRuntimeFactory comes from %s\n"
                + "org.smooks.Smooks comes from %s\n"
                + "org.smooks.engine.delivery.DefaultContentDeliveryConfigBuilder comes from %s\n"
                + "org.smooks.api.delivery.ContentHandlerFactory comes from %s\n",
                org.smooks.engine.delivery.DefaultContentDeliveryRuntimeFactory.class.getProtectionDomain().getCodeSource().getLocation().toURI().getPath(),
                org.smooks.Smooks.class.getProtectionDomain().getCodeSource().getLocation().toURI().getPath(),
                org.smooks.engine.delivery.DefaultContentDeliveryConfigBuilder.class.getProtectionDomain().getCodeSource().getLocation().toURI().getPath(),
                org.smooks.api.delivery.ContentHandlerFactory.class.getProtectionDomain().getCodeSource().getLocation()
                .toURI().getPath())

If somebody has an idea where I could look at, please let me know.

best regards

Stefan

Claude

unread,
Jul 9, 2022, 12:30:36 PM7/9/22
to Smooks Users
Stefan & Ulrich,

As you can see, we've stumbled upon a well known problem. I've just documented its root cause and will be working on having it fixed in the next few days. A patch release will follow.

Claude

Ulrich Schuster

unread,
Jul 9, 2022, 1:43:56 PM7/9/22
to Smooks Users
Great to hear that you found the root cause!

Claude

unread,
Jul 10, 2022, 8:29:08 AM7/10/22
to Smooks Users
Ulrich, could you confirm that the latest Smooks core snapshot (i.e., org.smooks:smooks-core:2.0.0-RC2-SNAPSHOT) solves the problem for you? Keep in mind that the appropriate class loader needs to be set on the Smooks application context. For example:

new Smooks(new DefaultApplicationContextBuilder().setClassLoader(getClass().getClassLoader()).build())

Claude

Ulrich Schuster

unread,
Jul 12, 2022, 8:55:45 AM7/12/22
to smook...@googlegroups.com
Dear Claude,

where can I get the RC2-SNAPSHOT from? i.e., which maven coordinates do I need to use?

Thanks very much!
Uli

--
You received this message because you are subscribed to a topic in the Google Groups "Smooks Users" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/smooks-user/mLXOg-WXR2A/unsubscribe.
To unsubscribe from this group and all its topics, send an email to smooks-user...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/smooks-user/61b4c1c2-9416-4904-8c45-08246544c535n%40googlegroups.com.

Claude Mamo

unread,
Jul 12, 2022, 9:26:25 AM7/12/22
to smook...@googlegroups.com
Here you go:
<dependency>
<groupId>org.smooks</groupId>
<artifactId>smooks-core</artifactId>
<version>2.0.0-RC2-SNAPSHOT</version>
</dependency>
Make sure that the Sonatype snapshot repo is declared:
<repositories>
<repository>
<id>oss.sonatype.org-snapshot</id>
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
Claude

You received this message because you are subscribed to the Google Groups "Smooks Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to smooks-user...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/smooks-user/CAMnHQ2LE8Yguj2nRDA5j2CRoZoot035Q%3DOus7Gf%3DRvDHagkyNw%40mail.gmail.com.

Ulrich Schuster

unread,
Jul 12, 2022, 10:37:07 AM7/12/22
to smook...@googlegroups.com
Dear Claude

Update: I tried to get the latest snapshot from https://oss.sonatype.org/content/repositories/snapshots.
However, there does not seem to be a current BOM for RC2-SNAPSHOT. Would it be possible to create such a BOM for the SNAPSHOT?

Thanks very much
Uli

On Sun, Jul 10, 2022 at 2:29 PM Claude <claud...@gmail.com> wrote:
--

Claude Mamo

unread,
Jul 12, 2022, 10:41:26 AM7/12/22
to smook...@googlegroups.com
Can't you override the smooks-core version declared in the BOM? I mean, declare smooks-core 2.0.0-RC2-SNAPSHOT in <dependencyManagement>?

Claude

Claude

unread,
Jul 20, 2022, 10:35:10 AM7/20/22
to Smooks Users
Any luck Uli?

Claude

Ulrich Schuster

unread,
Jul 20, 2022, 10:37:09 AM7/20/22
to Smooks Users
Dear Claude!

I am on vacation until the end of July, and won't be able to make any progress until then. But as soon as I get back, I am eager to try it out!

BR
Uli

Ulrich Schuster

unread,
Aug 1, 2022, 7:17:07 AM8/1/22
to Smooks Users
Dear Claude!

I finally managed to include your revised smooks-core-2.0.0-RC2-SNAPSHOT, smooks-commons-2.0.0.RC2-SNAPSHOT, and smooks-api-2.0.0-RC2-SNAPSHOT. Unfortunately, I do not see any change in my application logs. For my complex Spring-Boot/Apache-Camel/Smooks application, I still get the following classloader and SmooksProcessor warnings, the same as with the RC1 dependencies:

2022-08-01 12:58:58 WARN Scanner:78 - Not scanning classpath for ClassLoader 'jdk.internal.loader.ClassLoaders$AppClassLoader'. ClassLoader must implement 'java.net.URLClassLoader'.
2022-08-01 12:58:59 WARN Scanner:78 - Not scanning classpath for ClassLoader 'jdk.internal.loader.ClassLoaders$AppClassLoader'. ClassLoader must implement 'java.net.URLClassLoader'.
2022-08-01 12:58:59 INFO EdifactParserFactory:39 - Created Smooks EDIFACT parser from directory D04B
2022-08-01 12:58:59 WARN Scanner:78 - Not scanning classpath for ClassLoader 'jdk.internal.loader.ClassLoaders$AppClassLoader'. ClassLoader must implement 'java.net.URLClassLoader'.
2022-08-01 12:58:59 WARN Scanner:78 - Not scanning classpath for ClassLoader 'jdk.internal.loader.ClassLoaders$AppClassLoader'. ClassLoader must implement 'java.net.URLClassLoader'.
2022-08-01 12:58:59 INFO EdifactParserFactory:39 - Created Smooks EDIFACT parser from directory D05A
2022-08-01 12:58:59 WARN Scanner:78 - Not scanning classpath for ClassLoader 'jdk.internal.loader.ClassLoaders$AppClassLoader'. ClassLoader must implement 'java.net.URLClassLoader'.
2022-08-01 12:58:59 WARN Scanner:78 - Not scanning classpath for ClassLoader 'jdk.internal.loader.ClassLoaders$AppClassLoader'. ClassLoader must implement 'java.net.URLClassLoader'.
2022-08-01 12:58:59 INFO EdifactParserFactory:39 - Created Smooks EDIFACT parser from directory D06A
2022-08-01 12:58:59 WARN Scanner:78 - Not scanning classpath for ClassLoader 'jdk.internal.loader.ClassLoaders$AppClassLoader'. ClassLoader must implement 'java.net.URLClassLoader'.
2022-08-01 12:58:59 WARN Scanner:78 - Not scanning classpath for ClassLoader 'jdk.internal.loader.ClassLoaders$AppClassLoader'. ClassLoader must implement 'java.net.URLClassLoader'.
2022-08-01 12:58:59 INFO EdifactParserFactory:39 - Created Smooks EDIFACT parser from directory D07B
2022-08-01 12:58:59 WARN Scanner:78 - Not scanning classpath for ClassLoader 'jdk.internal.loader.ClassLoaders$AppClassLoader'. ClassLoader must implement 'java.net.URLClassLoader'.
2022-08-01 12:58:59 WARN Scanner:78 - Not scanning classpath for ClassLoader 'jdk.internal.loader.ClassLoaders$AppClassLoader'. ClassLoader must implement 'java.net.URLClassLoader'.
2022-08-01 12:58:59 INFO EdifactParserFactory:39 - Created Smooks EDIFACT parser from directory D11A
2022-08-01 12:58:59 WARN Scanner:78 - Not scanning classpath for ClassLoader 'jdk.internal.loader.ClassLoaders$AppClassLoader'. ClassLoader must implement 'java.net.URLClassLoader'.
2022-08-01 12:58:59 WARN Scanner:78 - Not scanning classpath for ClassLoader 'jdk.internal.loader.ClassLoaders$AppClassLoader'. ClassLoader must implement 'java.net.URLClassLoader'.
2022-08-01 12:58:59 INFO EdifactParserFactory:39 - Created Smooks EDIFACT parser from directory D17A
2022-08-01 12:58:59 WARN Scanner:78 - Not scanning classpath for ClassLoader 'jdk.internal.loader.ClassLoaders$AppClassLoader'. ClassLoader must implement 'java.net.URLClassLoader'.
2022-08-01 12:58:59 WARN Scanner:78 - Not scanning classpath for ClassLoader 'jdk.internal.loader.ClassLoaders$AppClassLoader'. ClassLoader must implement 'java.net.URLClassLoader'.
2022-08-01 12:58:59 INFO EdifactParserFactory:39 - Created Smooks EDIFACT parser from directory D18A
2022-08-01 12:58:59 INFO AbstractCamelContext:3005 - Apache Camel 3.18.0 (camel-1) is starting
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 INFO CamelSpringBootApplicationListener:147 - Starting CamelMainRunController to ensure the main thread keeps running
2022-08-01 12:58:59 INFO MainSupport:68 - Apache Camel (Main) 3.18.0 is starting
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 WARN SmooksProcessor:259 - Attachments module could not be found: attachments will not be propagated
2022-08-01 12:58:59 INFO SmooksProcessor:266 - SmooksProcessor [configUri=null] Started
2022-08-01 12:58:59 INFO AbstractCamelContext:3167 - Routes startup (started:8)
[..]

Note: The EdifactParserFactory is my own class (with my own logger) that produces SmooksProcessor instances for various Camel routes.

Ulrich Schuster

unread,
Aug 1, 2022, 7:29:49 AM8/1/22
to Smooks Users
Dear Claude

In a simpler application (without Spring-Boot, without Camel) that uses the smooks csv cartridge, Updating to RC2-SNAPSHOT actually makes matters worse, because I get the following runtime error:
Exception in thread "main" java.lang.NoSuchMethodError: 'java.util.Set org.smooks.engine.converter.TypeConverterFactoryLoader.load()'

I did change the smooks Setup as requested instead of (Kotlin Code)
val smooks = Smooks()
I am now using
val smooks = Smooks(DefaultApplicationContextBuilder().setClassLoader(this::class.java.classLoader).build())
On Wednesday, July 20, 2022 at 4:35:10 PM UTC+2 Claude wrote:

Ulrich Schuster

unread,
Aug 1, 2022, 8:28:37 AM8/1/22
to Smooks Users
It seems that the problem arises with Java 9 and later, where the default Application ClassLoader no longer is a child of URLClassLoader.

On Wednesday, July 20, 2022 at 4:35:10 PM UTC+2 Claude wrote:

Claude Mamo

unread,
Aug 1, 2022, 9:24:19 AM8/1/22
to smook...@googlegroups.com
With Java 8, do you get this exception?

Caused by: org.smooks.api.SmooksException: No ContentHandlerFactory configured (IoC) for type 'class' (Java).

Claude

You received this message because you are subscribed to the Google Groups "Smooks Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to smooks-user...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/smooks-user/ea0250e0-b963-4c2a-b066-63bd06159240n%40googlegroups.com.

Ulrich Schuster

unread,
Aug 1, 2022, 9:34:59 AM8/1/22
to Smooks Users
I am on Java 17 and cannot go back to Java 8

Claude Mamo

unread,
Aug 3, 2022, 12:37:13 AM8/3/22
to smook...@googlegroups.com
Were you able to resolve the problem? I am getting the exact same error message with Smooks 2.0.0-RC1 in a plain Kotlin environment on JDK17:

2022-04-01T18:04:48.140+0200 WARN Not scanning classpath for ClassLoader 'jdk.internal.loader.ClassLoaders$AppClassLoader'.  ClassLoader must implement 'java.net.URLClassLoader'.
2022-04-01T18:04:48.393+0200 WARN Not scanning classpath for ClassLoader 'jdk.internal.loader.ClassLoaders$AppClassLoader'.  ClassLoader must implement 'java.net.URLClassLoader'.
Exception in thread "main" org.smooks.api.SmooksException: Error processing resource file '/system-interceptors.xml'.
    at org.smooks.engine.resource.config.SystemResourceConfigListFactory.create(SystemResourceConfigListFactory.java:77)
    at org.smooks.engine.DefaultApplicationContextBuilder.registerSystemResources(DefaultApplicationContextBuilder.java:130)
    at org.smooks.engine.DefaultApplicationContextBuilder.build(DefaultApplicationContextBuilder.java:104)
    at org.smooks.Smooks.<init>(Smooks.java:151

Understood but does the above exception still occur? I'm not to worried aboout the warnings.

Claude

Ulrich Schuster

unread,
Aug 3, 2022, 3:21:43 AM8/3/22
to Smooks Users
Ah, I am worried about the warnings. I managed to get rid of the exception even with RC1 via the Maven-Spring plugin and some trickery with shading during the JAR build process. But that all seems rather unstable to me. I would very much prefer to have "clean" classloading (i.e., no warnings), so that I do not need to rely on other tricks.
Reply all
Reply to author
Forward
0 new messages