Uploaded image for project: 'Derby'
  1. Derby
  2. DERBY-7097

Update documentation to allow users to properly use EmbeddedDriver

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 10.15.2.0
    • None
    • Documentation
    • None
    • Normal

    Description

      In earlier version of Derby, and as reported in the documentation, the EmbeddedDriver class was in derby.jar.

      As such, it was quite easy to deploy a webapp with an embedded derby database: it was sufficient to just add a derby.jar file to the project library.

      In current releases of derby (10.15.2.0), the EmbeddedDriver class is no longer in the derby.jar file but in the derbytools.jar file.

      ```

      $ for i in `ls *.jar`; do echo $i ; jar tf $i | grep Driver ; done
      derby.jar
      org/apache/derby/iapi/jdbc/AutoloadedDriver$1.class
      org/apache/derby/iapi/jdbc/AutoloadedDriver.class
      org/apache/derby/iapi/jdbc/Driver42.class
      org/apache/derby/iapi/jdbc/InternalDriver$1.class
      org/apache/derby/iapi/jdbc/InternalDriver$2.class
      org/apache/derby/iapi/jdbc/InternalDriver$3.class
      org/apache/derby/iapi/jdbc/InternalDriver$4.class
      org/apache/derby/iapi/jdbc/InternalDriver$5.class
      org/apache/derby/iapi/jdbc/InternalDriver$DaemonThreadFactory.class
      org/apache/derby/iapi/jdbc/InternalDriver$LoginCallable.class
      org/apache/derby/iapi/jdbc/InternalDriver.class
      META-INF/services/java.sql.Driver
      derbyLocale_cs.jar
      derbyLocale_de_DE.jar
      derbyLocale_es.jar
      derbyLocale_fr.jar
      derbyLocale_hu.jar
      derbyLocale_it.jar
      derbyLocale_ja_JP.jar
      derbyLocale_ko_KR.jar
      derbyLocale_pl.jar
      derbyLocale_pt_BR.jar
      derbyLocale_ru.jar
      derbyLocale_zh_CN.jar
      derbyLocale_zh_TW.jar
      derbyclient.jar
      org/apache/derby/client/ClientAutoloadedDriver.class
      META-INF/services/java.sql.Driver
      derbynet.jar
      derbyoptionaltools.jar
      derbyrun.jar
      derbyshared.jar
      derbytools.jar
      org/apache/derby/jdbc/ClientDriver.class
      org/apache/derby/jdbc/ClientDriver40.class
      org/apache/derby/jdbc/EmbeddedDriver.class

      ```

      As such, most of the tutorials found on the internet about "how to use derby in embedded mode" are just wrong because they simply mention derby.jar as a dependency.

      Worst, derby own documentation is not up to date: as such, I had no way to understand why new releases of this tool that I have been using for more than a decade in the classroom suddenly did not work anymore.

      The explanation is finally simple: I just wonder how such impacting decision could be done without proper documentation.

      I am also surprised to be the first one reporting this, since the problem exists since at least a year.

      There are two possible fix to this issue:

      • move back the EmbeddedDriver class to derby.jar (my favorite option I would say), but I guess there is a good reason for moving those classes to derbytools.jar
      • update the documentation on Derby's web site, with a quite visible alert about this change.

       

      I have been a pretty happy user of derby for years, and will certainly be in the future. Thanks for that great tool. However, that breaking change has been particularly annoying, which is the reason of that bug report.

      Attachments

        1. derby-7097-01-aa-jpms-related-website-changes.diff
          10 kB
          Richard N. Hillegas
        2. derby-7097-01-ab-jpms-related-website-changes.diff
          10 kB
          Richard N. Hillegas
        3. derby-7097-02-aa-releaseSummary.diff
          0.9 kB
          Richard N. Hillegas
        4. derby-7097-03-aa-embeddedDemo.diff
          7 kB
          Richard N. Hillegas
        5. derby-7097-04-aa-10.15.1.3-download-page.diff
          0.7 kB
          Richard N. Hillegas
        6. derby-7097-05-aa-gettingStartedGuide.diff
          1 kB
          Richard N. Hillegas

        Issue Links

          Activity

            People

              Unassigned Unassigned
              dleberre Daniel Le Berre
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: