home clear 64x64
en blue 200x116 de orange 200x116 info letter User
suche 36x36
Neueste VersionenFixList
11.1.0.7 FixList
10.5.0.9 FixList
10.1.0.6 FixList
9.8.0.5 FixList
9.7.0.11 FixList
9.5.0.10 FixList
9.1.0.12 FixList
Haben Sie Probleme? - Kontaktieren Sie uns.
Kostenlos registrieren anmeldung-x26
Kontaktformular kontakt-x26

DB2 - Problembeschreibung

Problem IC74896 Status: Geschlossen

DB2 JCC DRIVER MIGHT THROW EXCEPTION
"JAVA.IO.CHARCONVERSIONEXCEPTION".

Produkt:
DB2 FOR LUW / DB2FORLUW / 950 - DB2
Problembeschreibung:
JCC driver throws the exception if fails to convert character. 
A typical scenario is some application using 
"ResultSet.getString" method to retrieve character strings from 
database and there are invalid characters in the string. 
 
By default, JCC driver uses "sun.io.*" methods to manipulate 
character strings. According to the standards for ""sun.io", it 
should throw the exception when fails to convert character 
strings (e.g. invalid characters that can not be converted). 
 
In the fix of the APAR, JCC driver introduces a global property 
named "db2.jcc.charsetDecoderEncoder" of type integer which 
could be set as follows: 
=========================================== 
1: 
   This is the default. 
   "sun.io.ByteToCharConverter" and/or 
"sun.io.CharToByteConverter" will be used if following classes 
could be loaded successfully: 
   -- sun.io.ByteToCharConverter 
   -- sun.io.CharToByteConverter 
   -- sun.io.MalformedInputException 
   -- sun.io.ConversionBufferFullException 
   -- sun.io.UnknownCharacterException 
   "java.nio.charset.CharsetDecoder" and/or 
"java.nio.charset.CharsetEncoder" will be used with 
"java.nio.charset.CodingErrorAction.REPORT" otherwise. 
 
2: 
   "java.nio.charset.CharsetDecoder" and/or 
"java.nio.charset.CharsetEncoder" will be used with 
"java.nio.charset.CodingErrorAction.REPORT". 
 
3: 
   "java.nio.charset.CharsetDecoder" and/or 
"java.nio.charset.CharsetEncoder" will be used with 
"java.nio.charset.CodingErrorAction.REPLACE". 
 
not defined or any other values: 
   The default value will be used. 
=========================================== 
 
To avoid the exception, you need to specify value 3 for the 
global property "db2.jcc.charsetDecoderEncoder". By this way, 
JCC converts invalid characters to NULL instead of throwing 
exceptions, using "java.nio.charset.CodingErrorAction.REPLACE" 
in case of error. 
 
You can add following line into your Java property file if you 
already have one: 
    db2.jcc.charsetDecoderEncoder=3 
or 
    specify "-Ddb2.jcc.charsetDecoderEncoder=3" on Java command 
line.
Problem-Zusammenfassung:
Fixed in DB2 V9.5 Fix Pack 8 JDBC driver.
Local-Fix:
Remove invalid characters from the string stored in database.
Lösung
Upgrade the JDBC drivers to DB2 V9.5 Fix Pack 8 or above.
Workaround
keiner bekannt / siehe Local-Fix
Weitere Daten
Datum - Problem gemeldet    :
Datum - Problem geschlossen :
Datum - der letzten Änderung:
07.03.2011
08.04.2015
08.04.2015
Problem behoben ab folgender Versionen (IBM BugInfos)
9.5.FP8
Problem behoben lt. FixList in der Version