a bug in IBM JDK 1.4 and the answer of IBM support

antoine_mpo

Reputable Poster
Hi List,

We upgraded our OneWorld Xe Platform from SP20 to SP23_Q1 (OS upgrade from W2k to W2003, Oracle database from 8.1 to 10g, Websphere 4 to Websphere 6) and we meet the following issue with the web client :
You cannot display the micro character 'µ' in an "uppercase only" field, because it's replaced by a question mark '?' when put to uppercase.

The problem is that we have an udc table with micro character in code (alias KY) used in segment value of configured orders. With this issue, we cannot add new values in the udc containing µ, but it's not such a big deal as we don't add new value very often (and we can add it using a fat client), but what is more inconvenient is that you cannot put the segment value in the configured order (if you type or select the value from the udc, you get a '?' instead of the 'µ', and so it doesn't match from what is recorded in the database and JDE raise an error message).

I opened a jde case for this issue.
After many emails, phone calls, web conferences, the developper finally found that it was an issue with the java.exe of the IBM JDK 1.4.2 we had (he had created a small java class that was displaying a string with 'µ' in it before and after an uppercase, and it all 'µ' were replaced by '?'.
So JDE opened a case to IBM.
After a request to update our JDK 1.4.2 to the last patch level, that didn't solve the issue, i get a JDE email with the answer of IBM. IBM closed the case, mentionning :
“This is a side effect of upgrading to Unicode 3.0” in JDK 1.4

I'm glad we found a workaround !!
Thanks IBM !
 
HI Antoine, I think I know what your problem is (if I correctly understood your question). IBM is right. Chances are your codepage (297 for france) has moved to 37 (US) during you OS upgrade. This was also a major issue for A7.3 users who went to CUM 16 for Double Byte integration. All CUM 16 ERP microcode was written in 37 and intended for an OS/400 (37) where as our specifics where written in local codepage (297). Thus all special characters were then "translated" to the corresponding ASCII unicode (37). That screwed it for good. Since you work on a different codepage (OS, software and ERP) you MUST absolutetly and thouroughly check that your upgrades will be compatible. From now own you should write all your specifics in 37 codepage or Unicode. You'll thank me for that advice. Oh, by the way I work for IBM.
 
Back
Top