4 Replies Latest reply on Jul 15, 2017 6:06 PM by Gary Graham-Oracle

    Version SQL Developer Report java.lang.IllegalArgumentException:


      Hi ,


      In version  Version

      A report ( Bar - vertical stack  ) using the query above


      select  to_char(trunc(a.end_time,'MI'),'HH24:MI') end_time,

              b.wait_class wait_class,

              round((sum(a.time_waited) / 10),2) sample_count

      from    gv$waitclassmetric_history a,

              gv$system_wait_class b

      where   a.wait_class# = b.wait_class# and

              b.wait_class != 'Idle'

              and a.inst_id = b.inst_id

              group by  trunc(a.end_time,'MI'), b.wait_class

               order by   trunc(a.end_time,'MI'),2


      Is working without problem.

      But in version  the report stop with the following details.


      java.lang.IllegalArgumentException: Timestamp format must be yyyy-mm-dd hh:mm:ss[.fffffffff]

      at java.sql.Timestamp.valueOf(Timestamp.java:204)

      at oracle.jdbc.driver.CharCommonAccessor.getTimestamp(CharCommonAccessor.java:544)

      at oracle.jdbc.driver.T4CVarcharAccessor.getTimestamp(T4CVarcharAccessor.java:959)

      at oracle.jdbc.driver.OracleResultSetImpl.getTimestamp(OracleResultSetImpl.java:1422)

      at oracle.dbtools.raptor.controls.display.DisplaySimpleChart.getTabularDataValue(DisplaySimpleChart.java:525)

      at oracle.dbtools.raptor.controls.display.DisplaySimpleChart.populateTabularData(DisplaySimpleChart.java:392)

      at oracle.dbtools.raptor.controls.display.DisplaySimpleChart.access$600(DisplaySimpleChart.java:61)

      at oracle.dbtools.raptor.controls.display.DisplaySimpleChart$3.loadData(DisplaySimpleChart.java:214)

      at oracle.dbtools.raptor.controls.display.CancellableQuery.processWork(CancellableQuery.java:132)

      at oracle.dbtools.raptor.controls.display.CancellableQuery.access$100(CancellableQuery.java:22)

      at oracle.dbtools.raptor.controls.display.CancellableQuery$1.doWork(CancellableQuery.java:107)

      at oracle.dbtools.raptor.controls.display.CancellableQuery$1.doWork(CancellableQuery.java:99)

      at oracle.dbtools.raptor.backgroundTask.RaptorTask.call(RaptorTask.java:193)

      at java.util.concurrent.FutureTask.run(FutureTask.java:266)

      at oracle.dbtools.raptor.backgroundTask.RaptorTaskManager$RaptorFutureTask.run(RaptorTaskManager.java:629)

      at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)

      at java.util.concurrent.FutureTask.run(FutureTask.java:266)

      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)

      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

      at java.lang.Thread.run(Thread.java:748)


      What is wrong?

      I have missed something?



        • 1. Re: Version SQL Developer Report java.lang.IllegalArgumentException:
          Gary Graham-Oracle

          In my 17.2 environment, a report using that query (in Bar - Vertical Stack form with all default report settings) works fine on both 11.2 XE and


          using these NLS settings...


          Could it be a result of different NLS settings?  It also works if Date Format is just DD-MON-RR.

          • 2. Re: Version SQL Developer Report java.lang.IllegalArgumentException:



            I finally find why.

            After  some tests , NLS , PATH to java without success

            I find the culprit  I think was the jdbc driver.

            Version  ojdbc7.jar is OK

            but  17.2 environment uses ojdbc8.jar


            So the culprit was to  unckeck "Use Oracle cliente"








            • 3. Re: Version SQL Developer Report java.lang.IllegalArgumentException:

              So the culprit was to  unckeck "Use Oracle cliente"

              Which raises the question as to why you aren't using the thin driver?


              • 4. Re: Version SQL Developer Report java.lang.IllegalArgumentException:
                Gary Graham-Oracle

                Thanks for the feedback. 


                SQL Developer has shipped with a (or higher) JDBC driver since at least the 3.2.0 release and, as I recall, in 4.2 the driver was the minimum required version.  When using 17.2 for your test case, here are results for the JDBC drivers bundled with various Oracle Instant Client versions...

       - Fails              (Driver compiled with Java 5)

       - Fails              (Driver compiled with Java 5)

       - Succeeds      (Driver compiled with Java 6)

       - Succeeds      (Driver compiled with Java 6)

       - Succeeds      (Driver compiled with Java 8)

                Note:  for these tests I was always careful to modify my PATH variable to point to the desired Oracle Instant Client prior to configuring this preference in Database > Advanced, and I always clicked the Test... button to verify the configuration.  This verifies the OCI/Thick dll will load correctly but, in fact, I actually did not tick the checkbox to use OCI/Thick. 


                From these results we might concluded one of following is true...

                1. The minimum required JDBC driver version for SQL Developer 17.2 is

                2. There are one or more bugs in SQL Developer 17.2 that prevent it from working correctly with the 11.2 drivers.