Error: An input/output error has occurred in ContainerProxy
After starting the ArcIMS Monitor daemon on a Unix platform, the following information is recorded in the ArcIMS Application Server debug log:
[Thu May 06 18:43:04 CEST 2004] Initializer_1083861779048> Attempting to read response from Container...
[Thu May 06 18:43:04 CEST 2004] Initializer_1083861779048> An input/output error has occurred in ContainerProxy.
[Thu May 06 18:43:04 CEST 2004] Initializer_1083861779048> Error while removing Container: <servername>_1. Will try again...
As a result, the ArcIMS spatial server (aimsserver.exe) will start but the ArcIMS virtual servers (e.g. ImageServer) will not be available, therefore ArcIMS will not function properly. When accessing the ArcIMS site via the Administrator application, the spatial server process will be visible, but no virtual servers will be listed.
The ArcIMS spatial server utilizes IBM's ICU (International Components for Unicode) libraries to provide full-featured Unicode support within the application. The libraries are packaged with ArcIMS in the spatial server's \bin (Windows) or /lib (Unix) directory. On Unix platforms, the libraries consist of the following files (prior to ArcIMS 9.x):
The ArcIMS spatial server is able to find and utilize these libraries as long as their location is referenced in the operating systems library path via an environment variable (e.g. LD_LIBRARY_PATH on Solaris, LIBPATH on AIX). However, since the ICU libraries are third-party components developed for general usage, they may also require specific environment settings to function correctly. For ICU library versions earlier than 1.8, the ICU_DATA environment variable may be required for the libraries to initialize and function properly. As a result, the ICU_DATA may need to be set and accessible for the ArcIMS spatial server to function properly.
ArcIMS 4.0.1 included ICU library version 1.6. ArcIMS versions prior to 4.0.1 included earlier ICU library versions. Note that ArcIMS 9.0 was packaged with ICU library version 2.2, therefore this specific situation does not apply.
Solution or Workaround
Set the ICU_DATA environment variable in the .cshrc or .profile configuration file for the user account under which the ArcIMS spatial server will be running. Note the the ICU_DATA variable merely needs to be available, it DOES NOT need to be set to a valid value (i.e. directory location).
- Open the .cshrc or .profile in a text editor and add the following lines (depending on your shell):
setenv ICU_DATA x
Save the file.
- Resource the .cshrc or .profile file.
- Restart the ArcIMS daemons.