I have a table with a column of type XML. When I insert a record into this table from a servlet running in WebSphere on Windows, the insert succeeds. However, when I run exactly the same code in WebSphere on AIX, I get the following exception:
com.ibm.db2.jcc.c.SqlException: Illegal Conversion: Can not convert from "java.lang.String" to "java.sql.Blob"
... 33 more
This turned out to be a "problem" with the JDBC driver configuration.
Another application running in the same JVM was configured to use the v8 JDBC driver. Mine was configured to use the v9 JDBC driver. But because of the way classloading works, the first one on the classpath was loading for both (which just so happened to be the v8 driver, which didn't work for my application.)
The fix was to switch both applications to use the v9 driver (which was fine, because it's supposedly completely backward compatible.)