What's new for developers at 10.1 and later


Summary
This topic provides an overview of the new features and enhancements at ArcGIS 10.1 and later for developers working with the Java application programming interface (API) for ArcObjects.

In this topic


Naming conventions

New naming conventions for ArcGIS products are in place at ArcGIS 10.1. See the following tables for an overview:
 
End user products and applications
Prior to 10.1
10.1
ArcGIS Desktop
ArcGIS for Desktop
ArcInfo
ArcGIS for Desktop Advanced
ArcEditor
ArcGIS for Desktop Standard
ArcView
ArcGIS for Desktop Basic
ArcGIS Mobile
ArcGIS for Windows Mobile
ArcGIS Mobile for Tablet PCs
ArcGIS for Windows Tablet
ArcGIS for Windows Phone
No change
ArcGIS for Android
No change
ArcGIS for iOS
No change
ArcGIS Mapping for SharePoint
ArcGIS for SharePoint
ArcGIS Server
ArcGIS for Server
ArcGIS Server Advanced Enterprise
ArcGIS for Server Advanced
ArcGIS Server Standard Enterprise
ArcGIS for Server Standard
ArcGIS for Basic Enterprise
ArcGIS for Server Basic
 
ArcGIS Server Advanced Workgroup
ArcGIS for Server Advanced Workgroup
ArcGIS Server Standard Workgroup
ArcGIS for Server Standard Workgroup
ArcGIS Server Basic Workgroup
ArcGIS for Server Basic Workgroup
ArcGIS Explorer
No change
ArcGIS Explorer Online
No change
ArcGIS Explorer Desktop
No change
ArcReader
No change
ArcGIS Viewer for Flex
No change
ArcGIS Viewer for Silverlight
No change
 
Developer technology
Prior to 10.1
10.1
ArcGIS API for JavaScript
No change
ArcGIS API for Flex
No change
ArcGIS API for Silverlight
No change
ArcGIS API for iOS
ArcGIS Runtime SDK for iOS
ArcGIS API for Android
ArcGIS Runtime SDK for Android
ArcGIS Mobile SDK
ArcGIS Runtime SDK for Windows Mobile
ArcGIS API for Windows Phone
ArcGIS Runtime SDK for Windows Phone
New product
ArcGIS Runtime SDK for Qt
New product
ArcGIS Runtime SDK for WPF
New product
ArcGIS Runtime SDK for Java
New product
ArcGIS Runtime
ArcGIS Engine
No change
ArcGIS Engine Developer Kit
No change
ArcGIS Engine Runtime for Linux
ArcGIS Engine for Linux
ArcGIS Engine Runtime for Windows
ArcGIS Engine for Windows
ArcObjects SDK for the Microsoft .NET Framework
No change
ArcObjects SDK for Java Linux
No change
ArcObjects SDK for Java Windows
No change
ArcObjects SDK for C++ Linux
No change
ArcObjects SDK for C++ Windows
No change
Esri File Geodatabase API
No change
 
 

Enumeration changes

To reflect the product and license name changes at 10.1, changes have been made to the esriLicenseProductcode, esriProductCode, and esriLicenseExtensionCode enumerations. The changes have been made to the enumeration description, which will require developers to make changes to their code when recompiling for 10.1. The value of the enumeration remains the same, so this change does not affect previously compiled applications. It is recommended, however, that all applications be recompiled and fully tested with each release.

License level

The following changes have been made to the esriLicenseProductCode enumeration:
Prior to 10.1
10.1
esriLicenseProductCodeArcView
esriLicenseProductCodeBasic
esriLicenseProductCodeArcEditor
esriLicenseProductCodeStandard
esriLicenseProductCodeArcInfo
esriLicenseProductCodeAdvanced

Product code

The following changes have been made to the esriProductCode enumeration:
 
Prior to 10.1
10.1
esriProductCodeViewer
esriProductCodeBasic
esriProductCodeEditor
esriProductCodeStandard
esriProductCodeProfessional
esriProductCodeAdvanced
 

Extension

The following changes have been made to the esriLicenseExtensionCode enumeration:
 
Prior to 10.1
10.1
esriLicenseExtensionCodeFoundation
esriLicenseExtensionCodeProductionMapping
esriProductCodeFoundation
esriProductCodeProductionMapping
esriLicenseExtensionCodeJTX
esriLicenseExtensionCodeWorkflowManager
esriProductCodeJTX
esriProductCodeWorkflowManager

Enhancements for server object extensions (SOEs)

At ArcGIS 10.1, the following features were introduced in server object extensions (SOEs):

Deployment workflow

At ArcGIS 10.0, the unit of deployment for Java SOEs was a JAR file. For .NET and C++ SOEs, the deployment units were DLL files. This difference in deployment units required users to use different workflows and tools for registering SOEs as extensions to map services. ArcGIS 10.1 introduces a common deployment unit, called the .soe file. A .soe file is a container that is programming language agnostic. In other words, it holds SOEs written in Java, .NET, and C++. The use of a uniform container to hold SOEs has allowed for a simple and user-friendly deployment experience via ArcGIS Server Manager at version 10.1.
See the Deploying and Un-deploying SOEs topic to learn about the new deployment experience. For more details on how to export an SOE to a .soe file, consult the developer topics for the programming language of your choice. For Java developers, the Developing REST SOEs and Developing SOAP SOEs topics discuss the new Eclipse wizard that facilitates export of Java SOEs.

Support for Custom Property Pages for ArcGIS Manager

Properties allow a server administrator to define how the SOE will behave when deployed on his or her ArcGIS Server site. Such properties could be modified using ArcGIS Server Manager or the Service Editor Dialog box in ArcGIS for Desktop. The default behavior of ArcGIS Server Manager is to display text boxes for editing properties. At ArcGIS 10.1, Manager can display advanced user-defined UI controls to edit the properties of SOEs. Such controls must be developed using the Dojo JavaScript library, then exported to a .soe file.

Support for default collections in REST SOEs

In REST SOEs, a subresource can be a tagged as “collection”. This gives you access to individual elements of a collection of objects via the URL pattern /<collection name>/<collection id> and also facilitates defining/implementing operations for a collection of objects. The operations, in such cases, do not target the whole collection, but individual elements of the collection. For example, for a map service that is accessed via Services Directory, the “Layers” subresource is a collection, and individual layers are elements of this collection. The Query operation is defined on the Layers collection subresource but acts on individual elements of the Layers subresource.
ArcGIS 10.1 for Server introduces the concept of default collections, which allows you to tag a subresource as the “default collection”. The difference between a collection and a default collection is that elements in a default collection can be accessed without naming the collection. Going back to the map service example, “Layers” is now a default collection at ArcGIS 10.1 for Server, and individual layers in a map service can be accessed via the /MapServer/<layer id> URL, as opposed to the /MapServer/layers/<layer id> URL at ArcGIS 10.0.

Deprecations and removals

DefenseSolutions

This assembly is deprecated at 10.1 and will be removed at a later release. Please do not begin any new projects using types in this assembly.

Remote use of ArcObjects (via DCOM)

At 10.1, you can no longer use ArcObjects remotely (via DCOM); this way of interacting with ArcGIS for Server is no longer supported. If you are using GISServerConnection in the Server library or AGSServerConnection in the GISClient library in your code, these need to be removed if you are working with ArcGIS 10.1 for Server.