About this error message
Users will encounter this error message when attempting to use a feature of Profound.js that connects to an IBM i or external database, but have not first logged into a valid IBM i session. To correct this issue, make sure a valid IBM i connection is created prior to using the Profound.js feature that connects to the IBM i or external database.
There are 2 common scenarios where users will encounter this error message: a module is configured as a web service but no connection details were provided (connectorURL, connectorCredentials, etc.), or the Profound.js server is hosted on a non IBM i platform, like a Windows PC, and the instance was not configured to connect to an instance hosted on an IBM i.
How to correct this error and create a valid connection.
The actual solution you will want to implement will depend upon how you want to configure your server, but here are some solutions you can implement so that the Profound.js instance has a valid connection to an IBM i.
Solution 1: Create connector credentials.
For applications that will not prompt the user to log in, like for web-services, a set of default credentials can be specified in the Profound.js server's configuration file, and a valid session will attempt to be created from these stored credentials. To specify these credentials you must first use the the store_credentials command line utility to create the encrypted credential file. Then you can use the connectorCredentials configuration setting to specify the location of the encrypted credential file.
Note for Instances of Profound.js installed on a non IBM i platform.
You must use another configuration setting in conjunction with the connector credentials configuration setting to specify a connection to an instance of Profound.js that is installed on an IBM i platform. You can find a tutorial for setting up this connection here.
Solution 2: Pass 'authenticate' token from another valid session.
When calling Profound.js applications from another application that is already connected to a valid session, you can use the authentication token from the calling application to create a valid connection for your new application. When calling the Profound.js application from Genie or a Rich Display File application, this 'authenticate' token is automatically included in the call to the Profound.js application. Here is an example of how to add this authentication token when calling a web service.
Consuming a Profound.js Web Service in a Profound UI Rich Display File Session
When a Profound UI screen requests data from a web service to populate a widget (Grid, Auto-Complete, List, Chart, etc.), a URL parameter, AUTH, is added to the request data. The value of the "AUTH" parameter corresponds to a session ID for the Profound UI session for the user in one instance of Profound UI. When Profound.js sees the AUTH data in the request, an attempt is made to read from a Profound UI session database. The default Profound UI instance/library is "PROFOUNDUI", but the library can be changed via the profounduiLibrary config property. Thus, if the user is connected to a Profound UI instance that is not named "PROFOUNDUI", then the Profound.js instance must use the "profounduiLibrary" setting in its config.js file.