Sunday, September 25, 2011
Connecting MicroStrategy 8.x Web SDK to a MicroStrategy 9.x Intelligence Server (iServer) doesn't work. That in itself isn't a surprise. What is surprising, though, is that the failure persists and then prevents the 8.x Web SDK from working with an 8.x iServer like it's supposed to on subsequent connections, resulting in an error "The required encryption level is not supported in this release."
Apparently, this is a result of initializing "static" fields on the first session creation, such that those values get stuck for the lifetime of the classloader. In this case, the connection to 9.x sets some of these values in ways that are incompatible with 8.x. If the first session creation is to an 8.x iServer, then there's no problem - attempting to connect to 9.x will break but won't prevent subsequent connections to 8.x.
This is an unusual edge case, to be sure. I only encountered it during development in a heterogeneous environment, with a custom portal that connects to multiple iServers.