Pre-requisite
The following are the pre-requisites for opening query results in an external application:
Application Linking is disabled by default in Spectrum Spatial Analyst . You can enable Application Linking by performing the following steps:
- Add/update the following properties in controller.properties (available at ANALYST_INSTALL_LOCATION/customerconfigurations/analyst) of Spectrum Spatial Analyst.
applicationLinkingEnabled=true applicationLinkingHostIP=127.0.0.1 applicationLinkingHostPort=9001, shortCircuitApplicationLinkingRegistration=true
Spectrum Spatial Analyst server needs to be restarted for changes in these properties to be effective.
Note: Port can be changed as per port availability value other than 9001. Please run your node server on the port configured incontroller.properties
only. In order to change the port ofApplicationLinking
, please change theapplicationLinkingHostPort
value incontroller.properties
to the desiredPORT_NUMBER
value instead of the default 9001. - Browser Registration Application Linking (Optional) Once the application linking is enabled by the above step, this functionality is available to all the users who have installed the application linking utility on their computers. This can be further fine-controlled by mandating the browser registration step as mentioned below.
- Set
shortCircuitApplicationLinkingRegistration=false
incontroller.properties
of Spectrum Spatial Analyst. By default, this is set totrue
. If this flag is set tofalse
, then the user will not be able to use Application Linking without going through the registration process. - Log in to Spectrum Spatial Analyst from the machine where Application Linking needs to be used.Note: Chrome and Firefox are supported.
- Open the new browser tab and key in below URL:
http://<Analyst_Host>:8010/connect/analyst/registerAppLinkingUser.jsp
- Click on the Register button.
- Once successful, close this browser tab and save the response of registration for port reference.
- Log out of Spectrum Spatial Analyst .Note: Application Linking registration is sensitive to the browser information. It internally uses browser fingerprint to identify each browser uniquely, thus enabling Application Linking on the given browser for the user. If there are any changes in the browser fingerprint like addition/removal of a plug-in, upgrade of browser etc. You may need to re-register through the AppLinking registration process. In case you don’t want to use Application Linking anymore, please contact Spectrum Spatial Analyst administrator with the Hashcode key received as a part of the successful registration response.
Deregistration of Application Linking User
To de-register a user for Application Linking, the Analyst admin needs to locate the file named RegisterAppLinkingUsersFileStore.txt under the analyst folder in customer configuration, typically (ANALYST_INSTALL_LOCATION/CustomerConfiguration/analyst). Take the key provided by the user who wants to get de-registered. Locate that key in file store and remove it. No need to restart the server. The second time when the user signs in to analyst, Application Linking will not be visible to the user.
- Set
- Open
AppLinking.xml
and set the properties given below to their appropriate values:LinkOutFileLoc
location ofLink-out
file, where node generated Link-out file will be kept.LinkInFileLoc
location oflinkin
file, where Generic Link Framework/External Application Bridge generated Link-in file will be kept and watched by Node server.Note: The LinkInFileLoc and LinkOutFileLoc must be at two different locations.
LinkOuts
tag contains list of Link-out against each table. You must configure them appropriately. AtableName
is corresponding to tables on Spectrum Spatial Analyst side.-
Name
attribute ofLink-out
is the name given during the configuration of Link-out in Generic Link Framework/External Application Bridge. -
BindColumn
is the table column on Spectrum Spatial Analyst side whose value will be passed as a part ofselectionId
. StaticArgs
is a tag where a set of Static Arguments can be specified for a particular LinkOut. Sample StaticArgs configuration will look like –<StaticArgs> <Value>Key1=value1</Value> <Value>Key2=value2</Value> <Value>debug</Value> </StaticArgs>
Provisioned values can be in from of “key=value” pair or constants like ‘debug’. Exact constants are not known, but the functionality has been developed to ingest value mentioned between Value tag under normal circumstances. Functionality works as expected when Static Arguments are entered either as Key=value pair or a plain constant (which gets interpreted either by intermediate application, for example- Generic Link Framework/External Application Bridge).
Static Arguments are per LinkOut, so for each LinkOut tag there can be a set of Static Arguments. There is no as such upper limit defined on the number of static arguments that can be provided.
Note: Static Arguments are not applicable for the application link-in flow.Target
andExternalApp
are for providing the location and name of an external application for which the application Link-outs are configured.Title
specifies a friendly name or relevant text for a LinkOut. Text provided here will be displayed in Connect wherever applicable (for example, in LinkOut drop-down and on callouts).
LinkIns
tag holds set of Link-in for Node server functioning.LinkIn
name is the name of Link-in configured in Generic Link Framework/External Application Bridge.MapConfig
tag holds Name of MapConfig which is used to locate configuration file representing current workspace view in Spectrum Spatial Analyst .Note:MapConfig
tag is deprecated inapplinking.xml
from SSA 8.0 but for old Connect to have LinkIn working, you should haveapplinking.xml
with MapConfig.If you create
applinking.xml
for LinkIn without MapConfig, it will only work with new Mobile interface. If you createapplinking.xml
for LinkIn withMapConfig
tag, it will only work with the old Connect interface.Valid LinkIn config for old connect interface<LinkIn name="Asset_Parks"><!--LinkIn name is a unique identifier --> <MapConfig>defaultmap</MapConfig> <Table>/QA-Maps/NamedTables/Roads</Table> <!-- The Column from where we will pick the Selection ID--> <BindColumn>Central_Asset_Id</BindColumn> <Title>Title for LinkIn 2.</Title> </LinkIn>
Valid LinkIn config for new mobile interface<LinkIn name="Asset_Parks"> <!--LinkIn name is a unique identifier --> <Table>/QA-Maps/NamedTables/Roads</Table> <!-- The Column from where we will pick the Selection ID--> <BindColumn>Central_Asset_Id</BindColumn> <Title>Title for LinkIn 2.</Title> </LinkIn>
Table
tag represents the table which will be queried for getting more information about the link-in data in Spectrum Spatial Analyst.BindColumn
is the column of the table whose value will be matched with the link-in data in Spectrum Spatial Analyst.Title
specifies the friendly name or relevant text for a Link-in. Text provided here will be displayed in Spectrum Spatial Analyst in the Search Result panel when a particular Link-in event gets successfully fired into Connect).