Unable to locate Smooks digest configuration '/META-INF/xsd/smooks/smooks-core-1.4.xsd-smooks.xml'

Solution Unverified - Updated -

Issue

  • Users are trying to use Smooks within their SwitchYard bean implementations. The following exception is thrown when creating a new Smooks object using the constructor that accepts an InputStream.
...
19:12:50,371 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-3) MSC000001: Failed to start service jboss.deployment.subunit."SmooksTransformer-ear-1.0-SNAPSHOT.ear"."SmooksTransformer-ejb-1.0-SNAPSHOT.jar".SwitchYardService: org.jboss.msc.service.StartException in service jboss.deployment.subunit."SmooksTransformer-ear-1.0-SNAPSHOT.ear"."SmooksTransformer-ejb-1.0-SNAPSHOT.jar".SwitchYardService: org.milyn.cdr.SmooksConfigurationException: Unable to locate Smooks digest configuration '/META-INF/xsd/smooks/smooks-core-1.4.xsd-smooks.xml' for extended resource configuration namespace 'http://www.milyn.org/xsd/smooks/smooks-core-1.4.xsd'.  This resource must be available on the classpath.
    at org.switchyard.as7.extension.services.SwitchYardService.start(SwitchYardService.java:80)
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.4.GA-redhat-1.jar:1.0.4.GA-redhat-1]
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.4.GA-redhat-1.jar:1.0.4.GA-redhat-1]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) [rt.jar:1.7.0_09]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) [rt.jar:1.7.0_09]
    at java.lang.Thread.run(Thread.java:722) [rt.jar:1.7.0_09]
Caused by: org.milyn.cdr.SmooksConfigurationException: Unable to locate Smooks digest configuration '/META-INF/xsd/smooks/smooks-core-1.4.xsd-smooks.xml' for extended resource configuration namespace 'http://www.milyn.org/xsd/smooks/smooks-core-1.4.xsd'.  This resource must be available on the classpath.
    at org.milyn.cdr.XMLConfigDigester.assertExtendedConfigOK(XMLConfigDigester.java:616)
    at org.milyn.cdr.XMLConfigDigester.getExtenededConfigDigester(XMLConfigDigester.java:581)
    at org.milyn.cdr.XMLConfigDigester.digestExtendedResourceConfig(XMLConfigDigester.java:539)
    at org.milyn.cdr.XMLConfigDigester.digestV11XSDValidatedConfig(XMLConfigDigester.java:340)
    at org.milyn.cdr.XMLConfigDigester.digestConfigRecursively(XMLConfigDigester.java:226)
    at org.milyn.cdr.XMLConfigDigester.digestConfig(XMLConfigDigester.java:184)
    at org.milyn.cdr.SmooksResourceConfigurationStore.registerResources(SmooksResourceConfigurationStore.java:229)
    at org.milyn.Smooks.addConfigurations(Smooks.java:340)
    at org.milyn.Smooks.addConfigurations(Smooks.java:358)
    at org.milyn.Smooks.<init>(Smooks.java:172)
        ...
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) [rt.jar:1.7.0_09]
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) [rt.jar:1.7.0_09]
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) [rt.jar:1.7.0_09]
    at java.lang.reflect.Constructor.newInstance(Constructor.java:525) [rt.jar:1.7.0_09]
    at org.jboss.weld.introspector.jlr.WeldConstructorImpl.newInstance(WeldConstructorImpl.java:206)
    at org.jboss.weld.injection.ConstructorInjectionPoint.newInstance(ConstructorInjectionPoint.java:115)
    at org.jboss.weld.bean.ManagedBean.createInstance(ManagedBean.java:340)
    at org.jboss.weld.bean.ManagedBean$ManagedBeanInjectionTarget.produce(ManagedBean.java:204)
    at org.jboss.weld.bean.ManagedBean.create(ManagedBean.java:296)
    at org.jboss.weld.context.unbound.DependentContextImpl.get(DependentContextImpl.java:68)
    at org.jboss.weld.manager.BeanManagerImpl.getReference(BeanManagerImpl.java:608)
    at org.jboss.weld.manager.BeanManagerImpl.getReference(BeanManagerImpl.java:635)
    at org.switchyard.component.bean.deploy.CDIBeanServiceDescriptor.getHandler(CDIBeanServiceDescriptor.java:81)
    at org.switchyard.component.bean.deploy.BeanComponentActivator.activateService(BeanComponentActivator.java:80)
    at org.switchyard.deploy.internal.Deployment.deployImplementations(Deployment.java:546)
    at org.switchyard.deploy.internal.Deployment.start(Deployment.java:144)
    at org.switchyard.as7.extension.deployment.SwitchYardDeployment.start(SwitchYardDeployment.java:101)
    at org.switchyard.as7.extension.services.SwitchYardService.start(SwitchYardService.java:73)
    ... 5 more
...
  • The SwitchYard services are in an EJB jar inside of an EAR. The EAR does not contain any of the Smooks classes and it contains a reference to the Smooks module within the MANIFEST.MF file. This is how the module dependencies inside MANIFEST.MF file in the EAR looks like.
Dependencies: org.apache.camel.core export,ingrian export,org.apache.httpcomponents export,org.slf4j export,org.dom4j export,org.apache.commons.io export,org.apache.commons.beanutils export,org.apache.commons.lang export,org.javassist export,org.kie export,org.milyn export

Is there a way to fix this issue?

Environment

  • Red Hat JBoss Fuse Service Works (FSW)
    • 6.0.0

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content