In some cases, images do not load in the VirtualViewer HTML5 for Java client, and the “Please wait while your image is loaded” message displays indefinitely in the browser. This generally happens when:

  1. The web server is not properly configured to handle the necessary http requests made by the client
  2. The VirtualViewer server configuration itself is incorrect.

To resolve this issue, you should log the http traffic between the client and the server in order to determine which http requests are failing and why. This can be done using a browser plugin such as httpWatch (http://www.httpwatch.com) or Firebug (http://getfirebug.com). You can also use a standalone application such as Fiddler (http://www.fiddler2.com) or Wireshark (http://www.wireshark.org) which can be run independently on the client machine. For Internet Explorer 9 users, the traffic can be captured using the IE Developer Toolbar (http://www.microsoft.com/download/en/details.aspx?id=18359).

Once the http traffic has been captured, you should be able to see which requests are failing. Typically, a failed request will cause a 400 or 500 error code to be generated in the logs. Some common error codes that can occur for VirtualViewer HTML5 for Java are as follows:

404 NOT FOUND

This error code indicates that the requested resource on the server could not be found. This error can occur if the servlet mapping is incorrectly configured on the server.

First, make sure the servletPath parameter value in config.js contains the correct URL mapping to the AJAX servlet. If you changed the default directory name for VirtualViewer HTML5 for Java on the server, you will need to update this value to be consistent with that change. For more information on defining the servletPath parameter, please see Defining the Servlet Paths.

For VirtualViewer HTML5 for Java, the web.xml configuration should also be reviewed in addition to config.js. Make sure that the values for <servlet-class> and <url-pattern> are correct for the relative <servlet-name>. Please note that by default, the servlet name is set to AjaxServlet. <!–

405 METHOD NOT ALLOWED

This error code indicates that the http request contains an action (e.g. POST, GET, HEAD, etc.) that is not allowed by the requested IIS server module.

With respect to VirtualViewer HTML5 for Java .NET, this typically means that the IIS handlers for AJAXServer and aspnet_isapi.dll have not been properly configured in IIS. First, make sure web.config contains the following handler mapping for AJAXServer:

<httpHandlers>
  <add verb="*" path="virtualviewer" type="Snowbound.virtualviewer.AjaxServerHandler, Snowbound.virtualviewer" />
</httpHandlers>

Then, make sure that a wildcard mapping for aspnet_isapi.dll has been created for your website configuration. This DLL is a required resource for VirtualViewer and is usually located in Windows under C:\Windows\Microsoft.NET\Framework\v2.0.50727\. To add aspnet_isapi.dll to your IIS configuration, please review the instructions below:

For IIS5:

  1. Go to Properties > Directory (tab) > Configuration > “Add”.
  2. For the “Executable” setting, provide the path to aspnet_isapi.dll.
  3. Set the “Extension” setting to “.*” and left click inside the “Executable” path field to enable the OK button below (this is a bug in IIS5; see http://support.microsoft.com/kb/317948 for more).

ForIIS6:

  1. Go to [VV web application] > Properties > Virtual Directory (tab) > Configuration > “Insert Wildcard application map”, and provide the path to aspnet_isapi.dll.

ForIIS7:

  1. Go to Handler Mappings > Actions > “Add Wildcard Script Mapping” and provide the path to aspnet_isapi.dll. -->

    500 INTERNAL SERVER ERROR

This error may occur if the content handler mapping is not correctly set in the web configuration.

For VirtualViewer HTML5 for Java, check the contentHandlerClass parameter value.