Resolve issue "Failed to complete the operation.  The server responded: "Unable to add named table:GeoToolsEx_UnableToLoadDataSource: /NamedTable" in Spectrum

Product Feature: Installation / Upgrade

Issue

When creating a Named Table in Spectrum using a SQL Server spatial table, a "Unable to Load Data Source" error appears in Management Console:
    
    Unable to Create Named Table from SQL Server Named Connection

Failed to complete the operation.  The server responded: "Unable to add named table:GeoToolsEx_UnableToLoadDataSource: /NamedTable"

First User tried uploading the MapInfo .tab table from MapInfo Professional to SQL Server using the EZ Loader.  Then they tried to load the MI .tab file to SQL Server directly from MIPro.  Both times they see the spatial .tab file in SQL Server Management Studio, but we cannot create the Named Table in Spectrum.
    
Here are the steps taken:
 
1. Upload MapInfo table using MI Pro EZ Loader to SQL Server instance
2. Use the default Options with "SQL Server Spatial" as the Object type
3. MapInfo Table uploads to SQL Server successfully
4. Confirm that we see the table in SQL Management Studio
5. Create Named Connection in Spectrum Location Intelligence Module
6. Test Named Connection - hit the test button, "It Works!"
7. Create Named Table in Spectrum using SQL Server Named Connection
8. "Unable to Load Data Source" error arises

Everything looks like it worked, except for creating the Named Table reference in Spectrum Location Intelligence Module.

They can view the database table in SQL Server Management Studio and can see the entry in the map catalog table. They can also open the database table from SQL Server within MapInfo Professional.

However, they cannot create the Named Table using the SQL Server Named Connection.

Cause

The issue is how the SQL Server instance is set in the JDBC URL in the Spectrum LIM Named Connection. 

The Named Connection must include the port that SQL Server is running on.  The default port for SQL Server is :1433, which needs to be referenced in the JDBC URL string in the Named Connection setting.

The Named Connection "Test Button" may work without specifying the SQL Server port.  However, the Named Table cannot be created without having a SQL Server :<port> defined in the JDBC URL in the Named Connection string.

When you attempt to create a Named Table from a SQL Server Named Connection that doesn't indicate a port number, you will see the GeoToolsEx_UnableToLoadDataSource error arise in the Management Console.

Resolution

UPDATED: October 20, 2017
Revise your SQL Server Named Connection JDBC URL string, such as to reference the SQL Server port number.

Below is an example jdbc string for a SQL Server Named Connection:

jdbc:sqlserver://<SQLServer>:<Port>;databaseName=<Database>
    
Using the correct <SQLServer>:<Port> combination will allow you to create a Named Table.