You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Target_org_apache_cxf_common_spi_NamespaceClassGenerator tries to load several classes such as org.apache.cxf.jaxb.EclipseNamespaceMapper org.apache.cxf.jaxb.NamespaceMapper org.apache.cxf.jaxb.NamespaceMapperRI org.apache.cxf.common.jaxb.NamespaceMapper
out of which only org.apache.cxf.jaxb.NamespaceMapper is registered for reflection and thus only that execution path will ever be executed.
I wonder which of the following is the right solution:
A. Register all named classes
B. Register all subclasses of com.sun.xml.bind.marshaller.NamespacePrefixMapper - we need to check whether this catches all the named classes
C. Change Target_org_apache_cxf_common_spi_NamespaceClassGenerator to always return org.apache.cxf.jaxb.NamespaceMapper
The bottom line is that I have never seen the Could not create a NamespaceMapper compatible with Marshaller class ... message even though I removed the org.apache.cxf.jaxb.NamespaceMapper registration. I wonder what kind of test would hit the substituted method?
The text was updated successfully, but these errors were encountered:
Hi @ppalaga In cases like this, I have generally followed what seems like the 'safest' approach to minimize any potential issues. I couldn't find any unit tests in the CXF codebase that deal with org.apache.cxf.jaxb.NamespaceMapper ... my suggestion would be to either do option A, or even better, remove the substitution all together given you couldn't even hit the method.
We likely have quite a bit of leftover experimental code from the initial days of this extension, that could possibly be cleaned up ... this seems to fall into that category.
Target_org_apache_cxf_common_spi_NamespaceClassGenerator
tries to load several classes such asorg.apache.cxf.jaxb.EclipseNamespaceMapper
org.apache.cxf.jaxb.NamespaceMapper
org.apache.cxf.jaxb.NamespaceMapperRI
org.apache.cxf.common.jaxb.NamespaceMapper
out of which only
org.apache.cxf.jaxb.NamespaceMapper
is registered for reflection and thus only that execution path will ever be executed.I wonder which of the following is the right solution:
A. Register all named classes
B. Register all subclasses of
com.sun.xml.bind.marshaller.NamespacePrefixMapper
- we need to check whether this catches all the named classesC. Change Target_org_apache_cxf_common_spi_NamespaceClassGenerator to always return
org.apache.cxf.jaxb.NamespaceMapper
The bottom line is that I have never seen the
Could not create a NamespaceMapper compatible with Marshaller class ...
message even though I removed theorg.apache.cxf.jaxb.NamespaceMapper
registration. I wonder what kind of test would hit the substituted method?The text was updated successfully, but these errors were encountered: