Get "Provider xx not a subtype" when adding JAXB extension to XJC

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Get "Provider xx not a subtype" when adding JAXB extension to XJC

KARR, DAVID (ATTSI)
This is a variation of a question I asked last week, which I didn't get any response to.

I can run XJC on a particular XSD and successfully generate classes.  If I add to the classpath either of two particular JAXB extensions I'm trying to use, it fails with a stacktrace like the following:
-----------------
Exception in thread "main" java.util.ServiceConfigurationError: com.sun.tools.xjc.Plugin: Provider dk.conspicio.jaxb.plugins.XmlElementWrapperPlugin not a subtype
        at java.util.ServiceLoader.fail(ServiceLoader.java:231)
        at java.util.ServiceLoader.access$300(ServiceLoader.java:181)
        at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:369)
        at java.util.ServiceLoader$1.next(ServiceLoader.java:445)
        at com.sun.tools.xjc.Options.findServices(Options.java:924)
-----------------

I'm currently using a local copy of the "ElementWrapper" plugin and a reference to the "fluent API" plugin.  If I remove the reference to the "ElementWrapper" plugin from the classpath, this error refers to the "fluent API" plugin.

I'm adding references to the following jars in the classpath:
* jaxb-xjc
* jaxb-impl
* jaxb-api
* element wrapper jar
* fluent api jar
* activation-1.1.1.jar
* jsr173 jar

I'm currently using version 2.2.6 of the jaxb jars.

I've tested this sequence in a shell script, just calling XJCFacade directly.  I've tested this in an Ant build script, using the Ant XJC task.  I've tested this in Gradle, using the same Ant XJC task.  All of these fail with the same result.

However, I've also tested this in Maven, using the "cxf-xjc-plugin" Maven plugin.  This is working, processing the same schema and adding the same extensions.  This has actually been working like this for quite a while, but I'm trying to convert this application build from Maven to Gradle. This obstacle is preventing this.
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

RE: Get "Provider xx not a subtype" when adding JAXB extension to XJC

KARR, DAVID (ATTSI)
> -----Original Message-----
> From: KARR, DAVID
> Sent: Tuesday, January 20, 2015 8:35 AM
> To: [hidden email]
> Subject: Get "Provider xx not a subtype" when adding JAXB extension to XJC
>
> This is a variation of a question I asked last week, which I didn't get
> any response to.
>
> I can run XJC on a particular XSD and successfully generate classes.  If I
> add to the classpath either of two particular JAXB extensions I'm trying
> to use, it fails with a stacktrace like the following:
> -----------------
> Exception in thread "main" java.util.ServiceConfigurationError:
> com.sun.tools.xjc.Plugin: Provider
> dk.conspicio.jaxb.plugins.XmlElementWrapperPlugin not a subtype
> at java.util.ServiceLoader.fail(ServiceLoader.java:231)
> at java.util.ServiceLoader.access$300(ServiceLoader.java:181)
> at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:369)
> at java.util.ServiceLoader$1.next(ServiceLoader.java:445)
> at com.sun.tools.xjc.Options.findServices(Options.java:924)
> -----------------
>
> I'm currently using a local copy of the "ElementWrapper" plugin and a
> reference to the "fluent API" plugin.  If I remove the reference to the
> "ElementWrapper" plugin from the classpath, this error refers to the
> "fluent API" plugin.
>
> I'm adding references to the following jars in the classpath:
> * jaxb-xjc
> * jaxb-impl
> * jaxb-api
> * element wrapper jar
> * fluent api jar
> * activation-1.1.1.jar
> * jsr173 jar
>
> I'm currently using version 2.2.6 of the jaxb jars.
>
> I've tested this sequence in a shell script, just calling XJCFacade
> directly.  I've tested this in an Ant build script, using the Ant XJC
> task.  I've tested this in Gradle, using the same Ant XJC task.  All of
> these fail with the same result.
>
> However, I've also tested this in Maven, using the "cxf-xjc-plugin" Maven
> plugin.  This is working, processing the same schema and adding the same
> extensions.  This has actually been working like this for quite a while,
> but I'm trying to convert this application build from Maven to Gradle.
> This obstacle is preventing this.

I've determined that my test shell script doesn't even need to process any schemas, as this error happens before it starts processing the xjc command line arguments, so that makes it easier to set up the test.

I've also verified this on both my Windows 7 laptop and a CentOS VM.

This is my current shell script:
---------------------
#! /bin/bash
java -classpath "lib/commons-beanutils-1.7.0.jar;lib/commons-lang-2.2.jar;lib/commons-logging-1.1.1.jar;lib/istack-commons-runtime-2.16.jar;lib/jaxb2-basics-runtime-0.6.5.jar;lib/jaxb2-basics-tools-0.6.5.jar;lib/jaxb-api-2.2.7.jar;lib/jaxb-core-2.2.7.jar;lib/jaxb-fluent-api-2.1.8.jar;lib/jaxb-xew-plugin-1.4.jar;lib/jaxb-xjc-2.2.7.jar" com.sun.tools.xjc.XJCFacade -extension
--------------------

To set this up, you just have to download these artifacts (search for the base name on maven central) into a "lib" directory and put this script in the parent of that "lib" directory and run it.  When you run it, it should complain at the top about command-line arguments, but at the end of the output you should see something like this:

Exception in thread "main" java.util.ServiceConfigurationError: com.sun.tools.xjc.Plugin: Provider org.jvnet.jaxb2_commons.tools.xjc.plugin.fluent_api.XjcFluentApiPlugin not a subtype
        at java.util.ServiceLoader.fail(ServiceLoader.java:231)
        at java.util.ServiceLoader.access$300(ServiceLoader.java:181)
        at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:369)
        at java.util.ServiceLoader$1.next(ServiceLoader.java:445)
        at com.sun.tools.xjc.Options.findServices(Options.java:957)
        at com.sun.tools.xjc.Options.getAllPlugins(Options.java:374)
        at com.sun.tools.xjc.Driver.usage(Driver.java:534)
        at com.sun.tools.xjc.Driver._main(Driver.java:132)
        at com.sun.tools.xjc.Driver.access$000(Driver.java:80)
        at com.sun.tools.xjc.Driver$1.run(Driver.java:103)
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Get "Provider xx not a subtype" when adding JAXB extension to XJC

Aleksei Valikov
Hi,

the plugin is probably not compatible to to the XJC version you're using.
The best would be probably to rebuild the plugin. I'm not sure it is still supported by the original author. I could overtake it to jaxb2-basics.

Best wishes,
Alexey

On Thu, Jan 22, 2015 at 4:31 PM, KARR, DAVID <[hidden email]> wrote:
> -----Original Message-----
> From: KARR, DAVID
> Sent: Tuesday, January 20, 2015 8:35 AM
> To: [hidden email]
> Subject: Get "Provider xx not a subtype" when adding JAXB extension to XJC
>
> This is a variation of a question I asked last week, which I didn't get
> any response to.
>
> I can run XJC on a particular XSD and successfully generate classes.  If I
> add to the classpath either of two particular JAXB extensions I'm trying
> to use, it fails with a stacktrace like the following:
> -----------------
> Exception in thread "main" java.util.ServiceConfigurationError:
> com.sun.tools.xjc.Plugin: Provider
> dk.conspicio.jaxb.plugins.XmlElementWrapperPlugin not a subtype
>       at java.util.ServiceLoader.fail(ServiceLoader.java:231)
>       at java.util.ServiceLoader.access$300(ServiceLoader.java:181)
>       at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:369)
>       at java.util.ServiceLoader$1.next(ServiceLoader.java:445)
>       at com.sun.tools.xjc.Options.findServices(Options.java:924)
> -----------------
>
> I'm currently using a local copy of the "ElementWrapper" plugin and a
> reference to the "fluent API" plugin.  If I remove the reference to the
> "ElementWrapper" plugin from the classpath, this error refers to the
> "fluent API" plugin.
>
> I'm adding references to the following jars in the classpath:
> * jaxb-xjc
> * jaxb-impl
> * jaxb-api
> * element wrapper jar
> * fluent api jar
> * activation-1.1.1.jar
> * jsr173 jar
>
> I'm currently using version 2.2.6 of the jaxb jars.
>
> I've tested this sequence in a shell script, just calling XJCFacade
> directly.  I've tested this in an Ant build script, using the Ant XJC
> task.  I've tested this in Gradle, using the same Ant XJC task.  All of
> these fail with the same result.
>
> However, I've also tested this in Maven, using the "cxf-xjc-plugin" Maven
> plugin.  This is working, processing the same schema and adding the same
> extensions.  This has actually been working like this for quite a while,
> but I'm trying to convert this application build from Maven to Gradle.
> This obstacle is preventing this.

I've determined that my test shell script doesn't even need to process any schemas, as this error happens before it starts processing the xjc command line arguments, so that makes it easier to set up the test.

I've also verified this on both my Windows 7 laptop and a CentOS VM.

This is my current shell script:
---------------------
#! /bin/bash
java -classpath "lib/commons-beanutils-1.7.0.jar;lib/commons-lang-2.2.jar;lib/commons-logging-1.1.1.jar;lib/istack-commons-runtime-2.16.jar;lib/jaxb2-basics-runtime-0.6.5.jar;lib/jaxb2-basics-tools-0.6.5.jar;lib/jaxb-api-2.2.7.jar;lib/jaxb-core-2.2.7.jar;lib/jaxb-fluent-api-2.1.8.jar;lib/jaxb-xew-plugin-1.4.jar;lib/jaxb-xjc-2.2.7.jar" com.sun.tools.xjc.XJCFacade -extension
--------------------

To set this up, you just have to download these artifacts (search for the base name on maven central) into a "lib" directory and put this script in the parent of that "lib" directory and run it.  When you run it, it should complain at the top about command-line arguments, but at the end of the output you should see something like this:

Exception in thread "main" java.util.ServiceConfigurationError: com.sun.tools.xjc.Plugin: Provider org.jvnet.jaxb2_commons.tools.xjc.plugin.fluent_api.XjcFluentApiPlugin not a subtype
        at java.util.ServiceLoader.fail(ServiceLoader.java:231)
        at java.util.ServiceLoader.access$300(ServiceLoader.java:181)
        at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:369)
        at java.util.ServiceLoader$1.next(ServiceLoader.java:445)
        at com.sun.tools.xjc.Options.findServices(Options.java:957)
        at com.sun.tools.xjc.Options.getAllPlugins(Options.java:374)
        at com.sun.tools.xjc.Driver.usage(Driver.java:534)
        at com.sun.tools.xjc.Driver._main(Driver.java:132)
        at com.sun.tools.xjc.Driver.access$000(Driver.java:80)
        at com.sun.tools.xjc.Driver$1.run(Driver.java:103)

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

RE: Get "Provider xx not a subtype" when adding JAXB extension to XJC

KARR, DAVID (ATTSI)

I can demonstrate this with both my local copy of Element Wrapper, the current version of it on Github, and also the Fluent API extension.  This has nothing to do with specific extensions.

 

From: [hidden email] [mailto:[hidden email]] On Behalf Of Aleksei Valikov
Sent: Thursday, January 22, 2015 7:52 AM
To: [hidden email]
Subject: Re: Get "Provider xx not a subtype" when adding JAXB extension to XJC

 

Hi,

 

the plugin is probably not compatible to to the XJC version you're using.

The best would be probably to rebuild the plugin. I'm not sure it is still supported by the original author. I could overtake it to jaxb2-basics.

 

Best wishes,

Alexey

 

On Thu, Jan 22, 2015 at 4:31 PM, KARR, DAVID <[hidden email]> wrote:

> -----Original Message-----
> From: KARR, DAVID
> Sent: Tuesday, January 20, 2015 8:35 AM
> To: [hidden email]
> Subject: Get "Provider xx not a subtype" when adding JAXB extension to XJC
>
> This is a variation of a question I asked last week, which I didn't get
> any response to.
>
> I can run XJC on a particular XSD and successfully generate classes.  If I
> add to the classpath either of two particular JAXB extensions I'm trying
> to use, it fails with a stacktrace like the following:
> -----------------
> Exception in thread "main" java.util.ServiceConfigurationError:
> com.sun.tools.xjc.Plugin: Provider
> dk.conspicio.jaxb.plugins.XmlElementWrapperPlugin not a subtype
>       at java.util.ServiceLoader.fail(ServiceLoader.java:231)
>       at java.util.ServiceLoader.access$300(ServiceLoader.java:181)
>       at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:369)
>       at java.util.ServiceLoader$1.next(ServiceLoader.java:445)
>       at com.sun.tools.xjc.Options.findServices(Options.java:924)
> -----------------
>
> I'm currently using a local copy of the "ElementWrapper" plugin and a
> reference to the "fluent API" plugin.  If I remove the reference to the
> "ElementWrapper" plugin from the classpath, this error refers to the
> "fluent API" plugin.
>
> I'm adding references to the following jars in the classpath:
> * jaxb-xjc
> * jaxb-impl
> * jaxb-api
> * element wrapper jar
> * fluent api jar
> * activation-1.1.1.jar
> * jsr173 jar
>
> I'm currently using version 2.2.6 of the jaxb jars.
>
> I've tested this sequence in a shell script, just calling XJCFacade
> directly.  I've tested this in an Ant build script, using the Ant XJC
> task.  I've tested this in Gradle, using the same Ant XJC task.  All of
> these fail with the same result.
>
> However, I've also tested this in Maven, using the "cxf-xjc-plugin" Maven
> plugin.  This is working, processing the same schema and adding the same
> extensions.  This has actually been working like this for quite a while,
> but I'm trying to convert this application build from Maven to Gradle.
> This obstacle is preventing this.

I've determined that my test shell script doesn't even need to process any schemas, as this error happens before it starts processing the xjc command line arguments, so that makes it easier to set up the test.

I've also verified this on both my Windows 7 laptop and a CentOS VM.

This is my current shell script:
---------------------
#! /bin/bash
java -classpath "lib/commons-beanutils-1.7.0.jar;lib/commons-lang-2.2.jar;lib/commons-logging-1.1.1.jar;lib/istack-commons-runtime-2.16.jar;lib/jaxb2-basics-runtime-0.6.5.jar;lib/jaxb2-basics-tools-0.6.5.jar;lib/jaxb-api-2.2.7.jar;lib/jaxb-core-2.2.7.jar;lib/jaxb-fluent-api-2.1.8.jar;lib/jaxb-xew-plugin-1.4.jar;lib/jaxb-xjc-2.2.7.jar" com.sun.tools.xjc.XJCFacade -extension
--------------------

To set this up, you just have to download these artifacts (search for the base name on maven central) into a "lib" directory and put this script in the parent of that "lib" directory and run it.  When you run it, it should complain at the top about command-line arguments, but at the end of the output you should see something like this:

Exception in thread "main" java.util.ServiceConfigurationError: com.sun.tools.xjc.Plugin: Provider org.jvnet.jaxb2_commons.tools.xjc.plugin.fluent_api.XjcFluentApiPlugin not a subtype
        at java.util.ServiceLoader.fail(ServiceLoader.java:231)
        at java.util.ServiceLoader.access$300(ServiceLoader.java:181)
        at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:369)
        at java.util.ServiceLoader$1.next(ServiceLoader.java:445)
        at com.sun.tools.xjc.Options.findServices(Options.java:957)
        at com.sun.tools.xjc.Options.getAllPlugins(Options.java:374)
        at com.sun.tools.xjc.Driver.usage(Driver.java:534)
        at com.sun.tools.xjc.Driver._main(Driver.java:132)
        at com.sun.tools.xjc.Driver.access$000(Driver.java:80)
        at com.sun.tools.xjc.Driver$1.run(Driver.java:103)

 

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

RE: Get "Provider xx not a subtype" when adding JAXB extension to XJC

KARR, DAVID (ATTSI)
In reply to this post by KARR, DAVID (ATTSI)
> -----Original Message-----
> From: KARR, DAVID
> Sent: Thursday, January 22, 2015 7:32 AM
> To: [hidden email]
> Subject: RE: Get "Provider xx not a subtype" when adding JAXB extension to
> XJC
>
> > -----Original Message-----
> > From: KARR, DAVID
> > Sent: Tuesday, January 20, 2015 8:35 AM
> > To: [hidden email]
> > Subject: Get "Provider xx not a subtype" when adding JAXB extension to
> XJC
> >
> > This is a variation of a question I asked last week, which I didn't get
> > any response to.
> >
> > I can run XJC on a particular XSD and successfully generate classes.  If
> I
> > add to the classpath either of two particular JAXB extensions I'm trying
> > to use, it fails with a stacktrace like the following:
> > -----------------
> > Exception in thread "main" java.util.ServiceConfigurationError:
> > com.sun.tools.xjc.Plugin: Provider
> > dk.conspicio.jaxb.plugins.XmlElementWrapperPlugin not a subtype
> > at java.util.ServiceLoader.fail(ServiceLoader.java:231)
> > at java.util.ServiceLoader.access$300(ServiceLoader.java:181)
> > at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:369)
> > at java.util.ServiceLoader$1.next(ServiceLoader.java:445)
> > at com.sun.tools.xjc.Options.findServices(Options.java:924)
> > -----------------
> >
> > I'm currently using a local copy of the "ElementWrapper" plugin and a
> > reference to the "fluent API" plugin.  If I remove the reference to the
> > "ElementWrapper" plugin from the classpath, this error refers to the
> > "fluent API" plugin.
> >
> > I'm adding references to the following jars in the classpath:
> > * jaxb-xjc
> > * jaxb-impl
> > * jaxb-api
> > * element wrapper jar
> > * fluent api jar
> > * activation-1.1.1.jar
> > * jsr173 jar
> >
> > I'm currently using version 2.2.6 of the jaxb jars.
> >
> > I've tested this sequence in a shell script, just calling XJCFacade
> > directly.  I've tested this in an Ant build script, using the Ant XJC
> > task.  I've tested this in Gradle, using the same Ant XJC task.  All of
> > these fail with the same result.
> >
> > However, I've also tested this in Maven, using the "cxf-xjc-plugin"
> Maven
> > plugin.  This is working, processing the same schema and adding the same
> > extensions.  This has actually been working like this for quite a while,
> > but I'm trying to convert this application build from Maven to Gradle.
> > This obstacle is preventing this.
>
> I've determined that my test shell script doesn't even need to process any
> schemas, as this error happens before it starts processing the xjc command
> line arguments, so that makes it easier to set up the test.
>
> I've also verified this on both my Windows 7 laptop and a CentOS VM.
>
> This is my current shell script:
> ---------------------
> #! /bin/bash
> java -classpath "lib/commons-beanutils-1.7.0.jar;lib/commons-lang-
> 2.2.jar;lib/commons-logging-1.1.1.jar;lib/istack-commons-runtime-
> 2.16.jar;lib/jaxb2-basics-runtime-0.6.5.jar;lib/jaxb2-basics-tools-
> 0.6.5.jar;lib/jaxb-api-2.2.7.jar;lib/jaxb-core-2.2.7.jar;lib/jaxb-fluent-
> api-2.1.8.jar;lib/jaxb-xew-plugin-1.4.jar;lib/jaxb-xjc-2.2.7.jar"
> com.sun.tools.xjc.XJCFacade -extension
> --------------------
>
> To set this up, you just have to download these artifacts (search for the
> base name on maven central) into a "lib" directory and put this script in
> the parent of that "lib" directory and run it.  When you run it, it should
> complain at the top about command-line arguments, but at the end of the
> output you should see something like this:
>
> Exception in thread "main" java.util.ServiceConfigurationError:
> com.sun.tools.xjc.Plugin: Provider
> org.jvnet.jaxb2_commons.tools.xjc.plugin.fluent_api.XjcFluentApiPlugin not
> a subtype
> at java.util.ServiceLoader.fail(ServiceLoader.java:231)
> at java.util.ServiceLoader.access$300(ServiceLoader.java:181)
> at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:369)
> at java.util.ServiceLoader$1.next(ServiceLoader.java:445)
> at com.sun.tools.xjc.Options.findServices(Options.java:957)
> at com.sun.tools.xjc.Options.getAllPlugins(Options.java:374)
> at com.sun.tools.xjc.Driver.usage(Driver.java:534)
> at com.sun.tools.xjc.Driver._main(Driver.java:132)
> at com.sun.tools.xjc.Driver.access$000(Driver.java:80)
> at com.sun.tools.xjc.Driver$1.run(Driver.java:103)

I'm providing similar information on a thread on the jaxb-dev mailing list, but I'll update this list also.

I ran this test in the debugger, and the error occurs because it finds that "org.jvnet.jaxb2_commons.tools.xjc.plugin.fluent_api.XjcFluentApiPlugin" is not a subclass of "com.sun.tools.xjc.Plugin".  By examining the actual class, it is clear that it actually is a subclass, so the only possible reason this comparision can fail is that these two classes are loaded by different classloaders.

I don't know what to do with this information, or how to fix my simple XJCFacade test or the important usage of the XJCTask class.

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

RE: Get "Provider xx not a subtype" when adding JAXB extension to XJC

KARR, DAVID (ATTSI)
In reply to this post by KARR, DAVID (ATTSI)
> -----Original Message-----
> From: KARR, DAVID
> Sent: Tuesday, January 20, 2015 8:35 AM
> To: [hidden email]
> Subject: Get "Provider xx not a subtype" when adding JAXB extension to XJC
>
> This is a variation of a question I asked last week, which I didn't get
> any response to.
>
> I can run XJC on a particular XSD and successfully generate classes.  If I
> add to the classpath either of two particular JAXB extensions I'm trying
> to use, it fails with a stacktrace like the following:
> -----------------
> Exception in thread "main" java.util.ServiceConfigurationError:
> com.sun.tools.xjc.Plugin: Provider
> dk.conspicio.jaxb.plugins.XmlElementWrapperPlugin not a subtype
> at java.util.ServiceLoader.fail(ServiceLoader.java:231)
> at java.util.ServiceLoader.access$300(ServiceLoader.java:181)
> at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:369)
> at java.util.ServiceLoader$1.next(ServiceLoader.java:445)
> at com.sun.tools.xjc.Options.findServices(Options.java:924)
> -----------------
>
> I'm currently using a local copy of the "ElementWrapper" plugin and a
> reference to the "fluent API" plugin.  If I remove the reference to the
> "ElementWrapper" plugin from the classpath, this error refers to the
> "fluent API" plugin.
>
> I'm adding references to the following jars in the classpath:
> * jaxb-xjc
> * jaxb-impl
> * jaxb-api
> * element wrapper jar
> * fluent api jar
> * activation-1.1.1.jar
> * jsr173 jar
>
> I'm currently using version 2.2.6 of the jaxb jars.
>
> I've tested this sequence in a shell script, just calling XJCFacade
> directly.  I've tested this in an Ant build script, using the Ant XJC
> task.  I've tested this in Gradle, using the same Ant XJC task.  All of
> these fail with the same result.
>
> However, I've also tested this in Maven, using the "cxf-xjc-plugin" Maven
> plugin.  This is working, processing the same schema and adding the same
> extensions.  This has actually been working like this for quite a while,
> but I'm trying to convert this application build from Maven to Gradle.
> This obstacle is preventing this.

Ok.  I have a solution to this.  You can read about the basic solution at http://stackoverflow.com/questions/27977479/com-sun-tools-xjc-plugin-provider-plugin-not-a-subtype .

Basically, the classpath provided for XJC has to be separated into two pieces.  The jaxb-api, jaxb-core, and jaxb-xjc jars need to be provided to "load" or reference XJC, but the JAXB extension jars have to be loaded ONLY by XJC itself.  You will likely see this error if the extension jars are loaded "too early".

So, if you're using XJCFacade, specify the "jaxb-" jars in the classpath parameter given to "java", but specify the extension jars in the classpath parameter for the "XJCFacade" class.
Loading...