Jaxb / xjc generate non final classes



.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;








0















I'm using Jaxb and the org.jvnet.jaxb2_commons.xjc.XJC2Task to generate classes from a given WSDL.



The schema to be implemented contains multiple classes that inherit from one another. The problem is: the jaxb plugin generates all classes as final, but still keeps the inheritance info - so the generate code contains multiple instances of



public final class BaseClass 
public final class SomeClass extends BaseClass


which does not compile.



I cannot find any meaningfull documentation for any arguments to pass to the task to make the classes non final.
This is how we were doing it in our build.gradle up until now:



jaxb 
xsdDir = "src/main/resources/schemas"
xjc
destinationDir = "build/generated/java"
producesDir = "build/generated/java"
generatePackage = 'com.company.generated.soap.types'
taskClassname = 'org.jvnet.jaxb2_commons.xjc.XJC2Task'
args = ['-Xinheritance', '-Xannotate', '-immutable', '-imm-builder']




is there a way to make this work?










share|improve this question




























    0















    I'm using Jaxb and the org.jvnet.jaxb2_commons.xjc.XJC2Task to generate classes from a given WSDL.



    The schema to be implemented contains multiple classes that inherit from one another. The problem is: the jaxb plugin generates all classes as final, but still keeps the inheritance info - so the generate code contains multiple instances of



    public final class BaseClass 
    public final class SomeClass extends BaseClass


    which does not compile.



    I cannot find any meaningfull documentation for any arguments to pass to the task to make the classes non final.
    This is how we were doing it in our build.gradle up until now:



    jaxb 
    xsdDir = "src/main/resources/schemas"
    xjc
    destinationDir = "build/generated/java"
    producesDir = "build/generated/java"
    generatePackage = 'com.company.generated.soap.types'
    taskClassname = 'org.jvnet.jaxb2_commons.xjc.XJC2Task'
    args = ['-Xinheritance', '-Xannotate', '-immutable', '-imm-builder']




    is there a way to make this work?










    share|improve this question
























      0












      0








      0








      I'm using Jaxb and the org.jvnet.jaxb2_commons.xjc.XJC2Task to generate classes from a given WSDL.



      The schema to be implemented contains multiple classes that inherit from one another. The problem is: the jaxb plugin generates all classes as final, but still keeps the inheritance info - so the generate code contains multiple instances of



      public final class BaseClass 
      public final class SomeClass extends BaseClass


      which does not compile.



      I cannot find any meaningfull documentation for any arguments to pass to the task to make the classes non final.
      This is how we were doing it in our build.gradle up until now:



      jaxb 
      xsdDir = "src/main/resources/schemas"
      xjc
      destinationDir = "build/generated/java"
      producesDir = "build/generated/java"
      generatePackage = 'com.company.generated.soap.types'
      taskClassname = 'org.jvnet.jaxb2_commons.xjc.XJC2Task'
      args = ['-Xinheritance', '-Xannotate', '-immutable', '-imm-builder']




      is there a way to make this work?










      share|improve this question














      I'm using Jaxb and the org.jvnet.jaxb2_commons.xjc.XJC2Task to generate classes from a given WSDL.



      The schema to be implemented contains multiple classes that inherit from one another. The problem is: the jaxb plugin generates all classes as final, but still keeps the inheritance info - so the generate code contains multiple instances of



      public final class BaseClass 
      public final class SomeClass extends BaseClass


      which does not compile.



      I cannot find any meaningfull documentation for any arguments to pass to the task to make the classes non final.
      This is how we were doing it in our build.gradle up until now:



      jaxb 
      xsdDir = "src/main/resources/schemas"
      xjc
      destinationDir = "build/generated/java"
      producesDir = "build/generated/java"
      generatePackage = 'com.company.generated.soap.types'
      taskClassname = 'org.jvnet.jaxb2_commons.xjc.XJC2Task'
      args = ['-Xinheritance', '-Xannotate', '-immutable', '-imm-builder']




      is there a way to make this work?







      jaxb xjc jaxb2-maven-plugin






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Nov 15 '18 at 11:20









      billdoorbilldoor

      89411238




      89411238






















          0






          active

          oldest

          votes












          Your Answer






          StackExchange.ifUsing("editor", function ()
          StackExchange.using("externalEditor", function ()
          StackExchange.using("snippets", function ()
          StackExchange.snippets.init();
          );
          );
          , "code-snippets");

          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "1"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader:
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          ,
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );













          draft saved

          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53318336%2fjaxb-xjc-generate-non-final-classes%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown

























          0






          active

          oldest

          votes








          0






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes















          draft saved

          draft discarded
















































          Thanks for contributing an answer to Stack Overflow!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid


          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.

          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53318336%2fjaxb-xjc-generate-non-final-classes%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          Use pre created SQLite database for Android project in kotlin

          Darth Vader #20

          Ondo