NES 3.6, Livewire and ORA-12705 error


I'm running Netscape Enterprise Server 3.6 on Solaris 2.6, an Oracle 8 database on a second Solaris machine and various Livewire Apps connecting to the Oracle database.

A couple a days ago we reorganized our database and changed the character set to ISO-8859. Since then, connecting to the database from a Livewire application results in an "ORA-12705" error ("invalid or unknown NLS parameter value specified") from the database.

ORACLE_HOME, ORA_NLS33, NLS_LANG, TWO_TASKS, etc. is set correctly; there are no problems connecting to the server with SQLPLUS with the same environment variables.

Unsetting NLS_LANG in the NES "start" scripts makes the error go away, but then special characters are not displayed correctly.

Any idea, what's going wrong here?

(This question is perhaps too Netscape-specific for this section, but maybe one of you has experience with Livewire Applicatons too.)

Who is Participating?
ashyamraConnect With a Mentor Commented:
Versions Affected
  This issue affects Oracle 8.0 and Oracle7 clients connecting to an
  Oracle8 or Oracle8i database where the database character set is one
  that the client does not understand (such as WE8ISO8859P15).

Platforms Affected
  This issue is GENERIC and can affect any platform.

  If an Oracle8 or Oracle8i database is created with a character set which is
  NOT known to Oracle8.0 / Oracle7 clients connecting to it then various errors
  or strange results may be seen in the client application. This is possible
  where the installed server release is NEWER than the client software and
  includes new character sets not present in the earlier release/s. If a
  database is created using such a character set then the earlier clients
  will encounter problems. The errors seen in the client are quite obvious,
  eg: DESCRIBE of a table in SQLPLUS reports an ORA-1460 error

Likelihood of Occurrence
  The most likely scenario is where the database is created with a new
  character set such as WE8ISO8859P15 to allow the "Euro" symbol to be used,
  but other character sets can also show problems.
  Problems will be apparent within any client that does not understand the
  database character set. Character sets which cause this problem include:


  Please note: It is possible to see similar problems to those described here
               when the client does not have the ORA_NLS33 / ORA_NLS32
               environment variable set correctly.
               This alert relates specifically to character sets that the
               client does not understand.
Possible Symptoms
  There are many symptoms due to this problem. The most likely symptoms are:

  - ORA-1460 "unimplemented or unreasonable conversion requested" errors
    (Eg: SQLPLUS may report:
         Error accessing package DBMS_APPLICATION_INFO
         ERROR: ORA-1460 "unimplemented or unreasonable conversion requested")

  - white space may appear between selected column data

  - various errors or strange results from Enterprise Manager when attempting
    to administer an Oracle8i database.

  The only workarounds at present are:

        a) Create the database in a character set that the client does know
           Eg: It is possible to use the character set WE8MSWIN1252 in
               place of WE8ISO8859P15 for the database character set.
        b) Use an Oracle8i or 8.0.6 client

 Server Character Set
  You can check the database character set of a database using the SQL:

         WHERE parameter = 'NLS_CHARACTERSET'

 Checking Client support for a Character Set
  You can check if a client installation supports a particular character set
  by setting the NLS_LANG environment variable appropriately and connecting
  to an existing database. This method is valid for the Oracle Client versions
  7.3 and higher.

  Eg:   To check if a client installation supports WE8ISO8859P15:

        On Unix: NLS_LANG=american_america.WE8ISO8859P15; export NLS_LANG
        On NT:   Set NLS_LANG to AMERICAN_AMERICA.WE8ISO8859P15 in the

        Attempt to connect to a database using SQL*Plus. If the client
        reports an ORA-12705 error then the client installation
        does not know about the specified character set.
        Please note:  ORA-12705 will also be reported if the language
        or the territory part of the NLS_LANG value is misspelled.

  Note that in order to use a symbol such as the EURO then the client side
  MUST be configured correctly. See <Note:68790.1> for details of using the
  Euro symbol.

@   For 8.0 clients there is a possibility of copying NLS files between
@   releases. This is unsupported and not to be encouraged.
@   This is documented in the LIMITED distribution article <Note:70170.1>

  This alert will be updated once any patches are made available.

  ORA-1460 errors due to incorrect ORA_NLS* setting  
Perhaps the Livewire app. holds an NLS_LANG of itself, and changes it as it tries to connect.
What is the exact characterset of the DB?
I suggest u select dirctly from the sys.props$ to ensure your answer.
If you find out that you have WE8ISO8859P1 or something very similar, then the NLS_LANG at the client should contain: American_America.WE8ISO8859P1 (or similar...). Be sure that the NLS_LANG var is set, and contain the right value.

Good Luck

sepp051497Author Commented:

here are the system properties of the database:

NLS_LANGUAGE             AMERICAN            
NLS_TERRITORY            AMERICA            
NLS_CURRENCY            $            
NLS_ISO_CURRENCY            AMERICA            
NLS_NUMERIC_CHARACTERS      .,            
NLS_DATE_FORMAT            DD-MON-YY      
NLS_DATE_LANGUAGE         AMERICAN            
NLS_CHARACTERSET            WE8ISO8859P1      
NLS_SORT                  BINARY            

Before starting Netscape, I include a shell script, that look's like this:

ORACLE_HOME=/home/oracle/app/oracle/product/8.0.5; export ORACLE_HOME;
TNS_ADMIN=$ORACLE_HOME/network/admin; export TNS_ADMIN;
LD_LIBRARY_PATH=/usr/lib:/usr/local/lib:$ORACLE_HOME/lib; export LD_LIBRARY_PATH;

TWO_TASK=dbserver; export TWO_TASK;

ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data; export ORA_NLS33;


I have tried various NLS_LANGs, but they all resulted in an ORA-12705 error. I assume, that Netscape Server somehow overrides the NLS_LANG or needs a special NLS_LANG, but I have found nothing about that in the documentation nor on the Internet.

Is there a way to redefine the character set in a session, so a could unset NLS_LANG env variable and set the charset explicitely before committing a SELECT that returns special characters? Or are there any other ways to define the character set like "patching" some data dictionary tables?

-- Josef
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.