[ 
https://issues.apache.org/jira/browse/CXFXJC-25?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16442053#comment-16442053
 ] 

Freeman Fang commented on CXFXJC-25:
------------------------------------

This is caused by that the getAllPlugins() method in com.sun.tools.xjc.Options 
class changed since jaxb-xjc 2.3.0

In 2.2.11 it's

{code}

public List<Plugin> getAllPlugins() {
        if(allPlugins==null) {
            allPlugins = new ArrayList<Plugin>();
            ClassLoader ucl = 
getUserClassLoader(SecureLoader.getClassClassLoader(getClass()));
            allPlugins.addAll(Arrays.asList(findServices(Plugin.class,ucl)));
        }

        return allPlugins;
    }

{code}

while in 2.3.0 it's

{code}

public List<Plugin> getAllPlugins() {
        if (allPlugins == null) {
            allPlugins = findServices(Plugin.class);
        }

        return allPlugins;
    }

{code}

The getUserClassLoader method used in 2.2.11 ensure it can load plugin 
extensions from the classpath, this is essential. We should fix this and ensure 
cxf-xjc-plugin can both work with jaxb 2.2.x and jaxb 2.3

 

> cxf-xjc-plugin can't load xjc plugin extensions which is already on the 
> classpath with jax-xjc 2.3.0
> ----------------------------------------------------------------------------------------------------
>
>                 Key: CXFXJC-25
>                 URL: https://issues.apache.org/jira/browse/CXFXJC-25
>             Project: CXF XJC Utils
>          Issue Type: Improvement
>            Reporter: Freeman Fang
>            Assignee: Freeman Fang
>            Priority: Major
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to