Difference between revisions of "ArcEngine/Java issue"

From IMSMA Wiki
Jump to: navigation, search
Line 1: Line 1:
 
ArcEngine 10.1 needs Java to be installed and ArcEgine finds Java by registry keys ('''not''' by environmental variables like JAVA_HOME and PATH).
 
ArcEngine 10.1 needs Java to be installed and ArcEgine finds Java by registry keys ('''not''' by environmental variables like JAVA_HOME and PATH).
  
When ArcEngine does not found Java properly there are two different error messages in the console log '''after''' ''Synchronized with "xxx" Map''
+
When ArcEngine does not find Java properly there are two different error messages in the console log '''after''' ''Synchronized with "xxx" Map''
  
 
<ol><li>Java Executable
 
<ol><li>Java Executable

Revision as of 16:05, 16 February 2015

ArcEngine 10.1 needs Java to be installed and ArcEgine finds Java by registry keys (not by environmental variables like JAVA_HOME and PATH).

When ArcEngine does not find Java properly there are two different error messages in the console log after Synchronized with "xxx" Map

  1. Java Executable
     Loading jawt.dll failed. This is normal if java.version < 1.3. If java.version is > 1.4 and if this failure has occurred on Windows,
    
    please ensure that this program is started with a Java executable from a JDK/JRE install location on this computer. 
    
    at '''com.esri.arcgis.interop'''.NativeObjRef.getJdk13WindowsHandleNative(Native Method) 
    
  2. Java HotSpot

How to fix

Note.jpg You need to stop IMSMANG server and the Control Center between each change below since IMSMANG reads in the environment variables when the TrayLauncher/Control center is started. Open the log and verify that your changes have taken effect.

System Property "user.language": en

System Property "user.language.format": not set

System Variable "AGSENGINEJAVA": C:\Program Files (x86)\ArcGIS\Engine10.1\

System Variable "Path": C:\windows\system32;C:\windows;C:\windows\System32\Wbem;C:\windows\System32\WindowsPowerShell\v1.0\; c:\Program Files (x86)\Java\jre7\bin

System Variable "Java_Home": c:\Program Files (x86)\Java\jre7

System Variable "LANG": not set

Client Configuration Variable "java.naming.provider.url": localhost

Client Configuration Variable "AlwaysSyncGeodata": true

Client Configuration Variable "isClientOnly": false

  1. Check in the Control Panel if the Java installed is the Java that is included in the IMSMANG installation package. If not, ask the user if you may uninstall the other version.
  2. Java version.png

    Our Java

  3. If our Java already was installed check that the right version is found by Java;

    Java ver.png
    • find the Java version by typing Java -version in the Command window and click Enter.
    • Verify that the environment variable JAVA_HOME is set to C:\Program Files\Java\jre7 on 32-bits OS or C:\Program Files (x86)\Java\jre7 on 64-bits OS.
  4. If none of the above fixed the problem, add ;%JAVA_HOME%\bin to the end of the PATH environment variable.
  5. If it still does not work, copy the contents of the PATH variable to a document.
  6. Copy %SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%JAVA_HOME%\bin to the PATH variable. In this way you know that the PATH is correct and does not have any other issues.
  7. Test again.
  8. If it works, restore the PATH variable by copy back part by part back to it with ; between each part. Note: test to start the client between each change of the PATH.