Created attachment 948793 [details] Reproducer that shows missing optional FastInfoSet dependency Description of problem: Annotating the SEI with @org.apache.cxf.annotations.FastInfoset and having dependencies of org.apache.cxf and org.apache.cxf.impl in the MANIFEST.MF get the annotation to be resolved. This works fine, application get deployed. But when i executing the client, you get java.lang.NoClassDefFoundError: com/sun/xml/fastinfoset/stax/StAXDocumentSerializer. This class is not present in the JBossWS-CXF modules that we ship with EAP 6.x. However, this is present in the Apache CXF version of cxf-api.jar. Looking at the cxf-api-2.7.7.redhat-1.jar pom file, the FastInFoset dependency is optional, <dependency> <groupId>com.sun.xml.fastinfoset</groupId> <artifactId>FastInfoset</artifactId> <optional>true</optional> </dependency> If we are going to use this feature, then for this dependency, since this is 'optional', we need to create a custom module, of 'com.sun.xml.fastinfoset' and the jar FastInfoset-1.2.13.jar from Apache CXF and add, <module name="com.sun.xml.fastinfoset" optional="true"> in our org.apache.cxf module's module.xml Version-Release number of selected component (if applicable): JBoss EAP 6.3.0, JBossWS-CXF 4.3.0.Final How reproducible: Attached is a test case for this, deployment works fine, but executing the client you get, java.lang.NoClassDefFoundError: com/sun/xml/fastinfoset/stax/StAXDocumentSerializer Steps to Reproduce: 1. Extract the attachement and set the JBOSS_HOME and JAVA_HOME. eg. export JBOSS_HOME=<path to JBOSS_HOME>, export JAVA_HOME=<path to Java Home> 2. Then, start EAP and execute, 'ant deploy' for deploying the application. 3. To run the client, 'ant test'. Actual results: You get a java.lang.NoClassDefFoundError: com/sun/xml/fastinfoset/stax/StAXDocumentSerializer Expected results: Additional info:
<rsvoboda> asoldano, "Assuming we don't want to productize the fastinfoset lib, I'm fine with this change. Thanks Kyle." <rsvoboda> asoldano, that means custumer will ad his own module ? <asoldano> rsvoboda, yes <asoldano> rsvoboda, I think that's fine <asoldano> rsvoboda, we don't ship FastInfoset <asoldano> rsvoboda, but still let users add it <rsvoboda> asoldano, if fastinfoset module is not delivered in official build I won't test it in standard testing cycles, I will just verify that BZ - one time action <asoldano> rsvoboda, OK qa_ack for one time action to check this BZ
Verified on EAP 6.4.0 DR9