There are times when you might not be able to install the native ICA client. For example, airport kiosks usually do not typically allow the installation of programs. On the other hand, you may decide not to install the client when borrowing a friend's computer. The Java client was designed for just such circumstances. Web Interface may be configured to automatically fall back to the Java client if the native ICA client is not installed (make sure to add your WI site to your trusted sites lists to allow for accurate  client detection).

Once Java fallback has been activated, a cookie (WIUser) is written to the user's PC indicating that the Java client should be used to launch applications.

What happens, though, if the native ICA client is subsequently installed? Is the cookie reset or deleted? Unfortunately, the answer is no. Once the cookie is set, the user must go into Settings and explicitly ask to use the native client. I personally feel that the Settings screen is a bit intimidating for most users, and I end up hiding it. To easily allow users to switch between the native and Java clients, I wrote the attached script - setClient.aspx, which you can simply drop into the /site directory. You then simply invoke the script with one of the following options:




The first two versions set Web Interface to use the requested client, and the last version displays the client currently being used. You can place links to the above wherever you see fit. For example, to get the following:

Switch ICA Clients

... just add the following to the end of ..\app_data\include\applistView.ascx:

setClient CodeOne other caveat ... you will need to configure Web Interface to allow the user to switch between the native and Java clients (under Client Deployment | Fallback Behavior):

User-selectable ICA clients

Download the setClient source code here.

Check out IPM's TechDev Corner blog.

Sam Jacobs is IPM’s Director of Technology Development Services. With more than 25 years of IT consulting, Sam is a Citrix Web Interface and Netscaler customizations and integrations expert. He holds Microsoft MCSD and Citrix Netscaler certifications, is the author of IPM’s TechDev Corner blog and is an active Citrix Forum contributor. A seasoned technical speaker, Sam integrates industry insight with real implementation experience, and has presented at Citrix Synergy and BriForum. Learn more about IPM or the TechDev practice. Sam can be reached at: and @WIguru on Twitter.



⬅︎ Back to News & Events