While using a mixture of wrapped and unwrapped JDBC data sources with the Macromedia SQL Server JDBC driver on Windows platforms, you receive the following exception:
This message occurs during invocation of the driver type (wrapped, unwrapped) which occurred subsequently to the first invocation. E.g. if the first query performed used a wrapped driver, the first query to use an unwrapped driver will fail with this exception (and vice versa).
This issue appears to be caused by security measures built into the Macromedia-shipped (Merant DataDirect) drivers residing in macromedia-drivers.jar, in connection with the supporting DLL DDJDBCAuth04.dll. These security measures interract with JRun's classloaders in a manner which makes it impossible to use both wrapped and unwrapped datasources simultaneously. Whichever datasource type is invoked first will function correctly.
We have been unable to find a perfect solution, however there are workarounds:
Use Username/Password Authentication
The issue only occurs when using Windows Integrated (Domain) Authentication. When using username and password authentication (this must be enabled in SQL Server) the supplied drivers do not exhibit this problem.
Use Single Type Datasources
The issue only occurs when mixing driver types – wrapped with unwrapped. Using all wrapped or all unwrapped drivers solves this issue.
Use a Third-Party Driver
Microsoft's own JDBC driver does not exhibit this issue, nor does JTDS. Both these drivers can operate in wrapped and unwrapped modes and support Windows Integrated Authentication.
|Last Updated:||29/May/12 10:23 AM|
|Platform:||Windows XP, Windows 2000, Windows 2003|