QMWISe is an API (Application Programming Interface) which allows applications to have secure two-way communication with the Perception database.
It allows Perception to communicate with other Questionmark applications such as the Content Packager. It also allows external customer's applications to communicate with Perception.
QMWISe uses 'methods' to create, modify and read standard Perception data elements such as Participant, Administrator, Schedule, and Result information.
If you wish to set up secure communication between your application and QMWISe, Security Headers must be added to methods to allow secure data transfer. Trust Headers will not work with non-Questionmark applications.
To set up secure communication between your application and QMWISe, you need to:
-
Check your Perception license
-
Set up perceptionv4.ini correctly
-
Set up the QMWISe URL
-
Test the configuration settings using the QMWISe Test Harness
-
If necessary, you can troubleshoot the QMWISe Security Headers
Checking your Perception License
To allow secure communication between your application and QMWISe, you need to have the correct license options enabled on your Perception Server. For further details about the licensing options available for Perception please contact a local Questionmark sales office. The license needs to have the following options enabled:
- QMWISe license for non-Perception applications
This license settings allows secure communication between QMWISe and your application.
Setting up perceptionv4.ini correctly
To allow secure communication between QMWISe and your application, you need to amend the settings in the perceptionv4.ini file. For further details about the QMWISe settings available in the perceptionv4.ini please refer to the QMWISe section of the Knowledge Base article What server settings can I make in the perceptionv4.ini file?
 |
To ensure that secure communication occurs between non-Perception applications and Perception using QMWISe the SecurityRequire and Server Key settings in the perceptionv4.ini must be enabled and setup. The TrustRequire setting must also be disabled, otherwise the SecurityRequire setting is ignored. For further details please refer to the Security settings section of the QMWISe Reference Guide. |
Setting up the QMWISe URL
To set up the QMWISe URL for your application you can use the Client Configuration Program for further details please refer to the Client Configuration Program section of the QMWISe Reference Guide.
 |
The Client Configuration Program has been replaced in Perception Server 4.4. The settings to configure the QMWISe URL are now done in the Shared Repository Manager in the Configure Server Settings section. This information can be used along with the Server Key to formulate the appropriate header information to use with the non-Perception application. |
QMWISe header information
QMWISe header information is used by the application calling the QMWISe method to identify itself to Perception and ensure that the application follows the correct procedure for collecting and returning information from the Perception database.
Security header parameters
The parameters required are:
Input Parameters |
Parameter |
Description |
Type |
ClientID |
The name of the Perception administrator |
String |
Checksum |
The MD5 Checksum for the Perception administrator |
String |
Testing the configuration settings using the QMWISe Test Harness
The QMWISe Test Harness application is provided for users to test the different aspects of QMWISe. It is located in the following folder on the Perception Server:
\perception4\server\qmwise\qmwisetest\qmwisetest.exe
You can use the QMWISe Test Harness to:
The Test Harness allows you to set up input data for any of the supported QMWISe web service methods and then invoke them
-
View the SOAP request message that is generated and sent to the QMWISe server, and the SOAP response or SOAP fault message that is returned
-
Calculate an MD5 checksum
If your QMWISe installation is configured to use SOAP headers for authentication in the request and response messages, you can use the Test Harness to calculate the necessary MD5 checksums.
For further information about using the Test Harness to develop applications that use QMWISe to interact with Perception please refer to the QMWISe Test Harness section of the QMWISe Reference Guide.
Troubleshooting the QMWISe Security Headers
If you have enabled security in the perceptionv4.ini file and enabled security in the \qmwise\web.config file using the methods above, then you can use the QMWISe Test Harness to troubleshoot your Security Headers:
-
In your browser, visit the QMWISe URL to see if it is working
For example, use http://yourserver/qmwise4/qmwise.asmx
where yourserver is the name of your server
-
Start the QMWISe Test Harness application
-
Enter the QMWISe URL
-
Click Show Methods
-
Select a method (ensure that the Security Header information is complete)
-
Invoke a method to test.
- Review the SOAP Request and SOAP Response tabs to troubleshoot a request that is not working
You can check these files to review settings:
the QWS.yyyymmdd.soaptrace file (see the article How does Perception log errors? for details how to enable the soaptrace logging)
-
the perceptionv4.ini file
-
the \qmwise\web.config files
Further information
For further information, consult the Security and The Client Configuration Program sections of the QMWISe Reference Guide.
You may also find the article Integration with QMWISe in Java helpful. This article focuses on using Java to generate the Security Header, but even if you are not using Java, you may find it of interest.
|