Select to view content in your preferred language

ArcGIS Engine 10.1 Beta 2

682
2
12-12-2011 10:50 AM
JasonGreenlaw
Regular Contributor
Couldn't find any ArcGIS Engine forums, so hopefully this is the best place for this question.

I'm trying to get some ArcObjects 9.x Java code running on a new installation of ArcGIS Engine Runtime 10.1 Beta 2 for Linux, but keep encountering the following exception very early in the program execution:

AutomationException: 0x80040154 - Class not registered
        at com.esri.arcgis.interop.NativeObjRef.initNative(Native Method)
        at com.esri.arcgis.interop.NativeObjRef.a(Unknown Source)
        at com.esri.arcgis.interop.NativeObjRef.<init>(Unknown Source)
        at com.esri.arcgis.interop.Dispatch.createDispatch(Unknown Source)
        at com.esri.arcgis.interop.Dispatch.<init>(Unknown Source)
        at com.esri.arcgis.geodatabase.IWorkspaceFactoryProxy.<init>(Unknown Source)
        at com.esri.arcgis.datasourcesfile.ShapefileWorkspaceFactory.<init>(Unknown Source)
        at com.esri.arcgis.datasourcesfile.ShapefileWorkspaceFactory.<init>(Unknown Source)
        ...


Compiling works fine.  My ArcGIS Engine install has been fully authorized.  I have added $ENGINEINSTALLDIR/bin to my PATH, and have run the proper init_java.sh script prior to execution (LD_LIBRARY_PATH looks fine).  My DISPLAY variable is also set correctly.  The newest arcobjects.jar file is on my classpath.

My program is able to get past the ArcGIS Engine initialization code:

EngineInitializer.initializeEngine();
AoInitialize aoInit = new AoInitialize();
aoInit.initialize(esriLicenseProductCode.esriLicenseProductCodeEngine);


...but as soon as I try to initialize an SdeWorkspaceFactory or ShapefileWorkspaceFactory, like this:

IWorkspaceFactory sdeWSF = new SdeWorkspaceFactory();


I get the same AutomationException.

Any help would be very much appreciated.

Thanks,
Jason
0 Kudos
2 Replies
JasonGreenlaw
Regular Contributor
Well, I uninstalled engine, removed and re-added the install user, installed again (this time in SINGLE USER mode) and authorized, but ran into the same problem.

Then, I didn't change anything, just rebooted the system, and now I can't even get past EngineInitializer.initializeEngine().

When I run my application, no exception is thrown when calling EngineInitializer.initializeEngine() - the program just exits unexpectedly with no further information (presumably with a System.exit() call?).

I'm using RHEL6 x86_64, but using a 32-bit JDK/JRE (1.6 update 29) to compile & run.

Jason
0 Kudos
JasonGreenlaw
Regular Contributor
OK, I think I've resolved the problem. 

In addition to all packages listed on the ArcGIS Engine 10.1 System Requirements page - http://resourcesbeta.arcgis.com/en/help/system-requirements/10.1/#/ArcGIS_10_1_Engine/01510000006800... (click on Linux under "Operating System Requirements and Limitations" at the bottom of the page), I had to install several others.

I noticed that ArcGIS Engine 10.1 seems much more similar to ArcGIS Server 10.0 than ArcGIS Server 10.1, so I referenced ArcGIS Server 10.0's list of required packages listed on this somewhat hard-to-find page:

http://resources.arcgis.com/content/arcgisserver/10.0/arcgis-server-server-requirements#Linux

After installing those (32-bit) packages, everything seems to be working OK (so far).

It would be nice if the official list of Linux software requirements would include an absolute list of all required packages, including those within each OS Package Group.  When you install 64-bit RHEL and install these package groups, most likely the 64-bit version of each package is being installed and you'll still have to go back and find the corresponding relevant 32-bit versions....it would be much easier if all dependencies were listed somewhere in the official documentation.

Jason
0 Kudos