4 Replies Latest reply on Apr 15, 2016 10:03 PM by Gary Graham-Oracle

    Status: Failure-Test failed: no ocijdbc12 in java.library.path. A Bug or Feature?

    ORA-911

      I researched this error and the only way I found to workaround it is to use a local tnsnames.ora after setting up TNS_ADMIN on windows and configure it to 'use oracle client'. However, if I try to use a 'connect identifier', I get this error message. 

       

      In this connection, both 'network alias' & 'connect identifier' are identical. Yet, the former works, but the latter fails.I do not want to rely on local tnsnames.ora file. What is missing?

      sd-failure.jpg

        • 1. Re: Status: Failure-Test failed: no ocijdbc12 in java.library.path. A Bug or Feature?
          thatJeffSmith-Oracle

          An Oracle Client. To use 'Connect Identifier' you need an Oracle Client.

           

          You can point SQL Developer to any tnsnames file you want, just map a network drive?

          • 2. Re: Status: Failure-Test failed: no ocijdbc12 in java.library.path. A Bug or Feature?
            ORA-911

            I'm trying to understand why SD is any different from any other IDE tool. All succeed in connecting using this setup except SD.

             

            1) I have a thick 11.2 client installed.

            2) ldap.ora is pointing to a DIRECTORY_SERVERS=***

            3) sqlnet.ora is set to NAMES.DIRECTORY_PATH= (LDAP,TNSNAMES, EZCONNECT)

            4) local tnsnames.ora is not used

             

            Every client installed on my machine including sqlplus is happy with this setup. Simply. specifying a connect descriptor. What is about this setup that SD is not liking to return this error? Can I get SD to connect without needing to use a local tnsnames.ora?

             

            The ldap connection option does not work as well. But, I can live with that for now.

             

            Thanks.

            • 3. Re: Status: Failure-Test failed: no ocijdbc12 in java.library.path. A Bug or Feature?

              Can I get SD to connect without needing to use a local tnsnames.ora?

               

              Sure - use a 'basic' connection type instead of the TNS that you are using.

               

              That will use the Java driver and won't use an ORA file at all.

              • 4. Re: Status: Failure-Test failed: no ocijdbc12 in java.library.path. A Bug or Feature?
                Gary Graham-Oracle

                the only way I found to workaround it is to ... configure it to 'use oracle client'

                Are you sure you configured that correctly?  You need to...

                1. Click the Verify button in the Configure Oracle Client dialog, then ...

                2. Exit that modal dialog, move the Preferences dialog out of the way, and check the Oracle Client Test Results - Log

                 

                Note that the minimum full or instant client version must be at least 11.2.0.3 and you should see something like...

                Testing the Instant Client located at C:\app\gggraham\product\11.2.0.4\instantclient_11_2

                Testing client directory ... OK

                Testing loading Oracle JDBC driver ... OK

                Testing checking Oracle JDBC driver version ... OK

                  Driver version: 11.2.0.3.0

                Testing testing native OCI library load ... OK

                Success!

                Your PATH environment variable needs to point at that Oracle Client before any other directories.

                 

                You can also check Help > About > Properties, then filter on oci to make sure the sqldeveloper.oci.available property is true. Also...

                both 'network alias' & 'connect identifier' are identical

                is not a true statement if you literally mean that.  For example, for my tnsnames.ora , if network alias is XE, then the connect identifier value is...

                (DESCRIPTION =

                    (ADDRESS = (PROTOCOL = TCP)(HOST = GGGRAHAM-T420.us.oracle.com)(PORT = 1521))

                    (CONNECT_DATA =

                      (SERVER = DEDICATED)

                      (SERVICE_NAME = XE)

                    )

                  )

                 

                Hope this helps you if you are determined to use the connect identifier.  The OCI/Thick driver must be configured correctly and enabled.