Troubleshooting
Problem
User launches Controller client. User receives error.
Symptom
The error will vary slightly, depending on environment.
Example #1 - Controller 10.1.0 (using CGI):
Error
An error occurred while trying to access the server.
<...>
Error Details:
Client found response content type of 'text/html; charset=utf-8', but expected 'text/xml'.
The request failed with the error message:
--
<html>
<head>
<title>Request format is unrecognized for URL unexpectedly ending in '/ibmcognos/cgi-bin/cognos.cgi'.</title>
<style>
body {font-family:"Verdana";font-weight:normal;font-size: .7em;color:black;}
p {font-family:"Verdana";font-weight:normal;color:black;margin-top: -5px}
b {font-family:"Verdana";font-weight:bold;color:black;margin-top: -5px}
H1 { font-family:"Verdana";font-weight:normal;font-size:18pt;color:red }
H2 { font-family:"Verdana";font-weight:normal;font-size:14pt;color:maroon }
<....>
<span><H1>Server Error in '/ibmcognos/controllerserver' Application.<hr width=100% size=1 color=silver></H1>
<h2> <i>Request format is unrecognized for URL unexpectedly ending in '/ibmcognos/cgi-bin/cognos.cgi'.</i> </h2></span>
<font face="Arial, Helvetica, Geneva, SunSans-Regular, sans-serif ">
<b> Description: </b>An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
<br><br>
<b> Exception Details: </b>System.InvalidOperationException: Request format is unrecognized for URL unexpectedly ending in '/ibmcognos/cgi-bin/cognos.cgi'.<br><br>
<...>
Example #2 - Controller 10.4.2 (using ISAPI)
Client found response content type of 'text/plain; charset=utf-8', but expected 'text/xml'.
The request failed with the error message:
--
System.InvalidOperationException: ibmcognos/cgi-bin/cognosisapi.dll Web Service method name is not valid.
at System.Web.Services.Protocols.HttpServerProtocol.Initialize()
at System.Web.Services.Protocols.ServerProtocolFactory.Create(Type type, HttpContext context, HttpRequest request, HttpResponse response, Boolean& abortProcessing)
The request failed with the error message:
--
System.InvalidOperationException: ibmcognos/cgi-bin/cognosisapi.dll Web Service method name is not valid.
at System.Web.Services.Protocols.HttpServerProtocol.Initialize()
at System.Web.Services.Protocols.ServerProtocolFactory.Create(Type type, HttpContext context, HttpRequest request, HttpResponse response, Boolean& abortProcessing)
Cause
There are many possible causes for a similar error.
This Technote specifically relates to the scenario where the cause is that the administrator had forgotten to modify the "web.config" file (inside "cgi-bin") to include the following configuration:
allowPathInfo="true"
- TIP: For more examples, see separate IBM Technote #1986254.
This Technote specifically relates to the scenario where the cause is that the administrator had forgotten to modify the "web.config" file (inside "cgi-bin") to include the following configuration:
allowPathInfo="true"
Environment
Controller is configured to use a dedicated 'gateway' machine (for example located in the DMZ) which is separate from the 'main' Controller application server.
- In other words, the system is configured in the way described inside separate IBM Technote #1367311.
Diagnosing The Problem
Launch the Controller diagnostic website, using a URL similar to:
http://<servername>/ibmcognos/cgi-bin/cognosisapi.dll?t=controller
The website will respond similar to (example #2):
Server Error in '/ibmcognos/controllerserver' Application.
Request format is unrecognized for URL unexpectedly ending in '/ibmcognos/cgi-bin/cognosisapi.dll'.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.InvalidOperationException: Request format is unrecognized for URL unexpectedly ending in '/ibmcognossso/cgi-bin/cognosisapi.dll'.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The above is instead of the correct/intended website, which should look similar to:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Resolving The Problem
Modify the file "web.config" inside "cgi-bin" to contain the following: allowPathInfo="true"
Example #1 (Controller 10.1.0 with CGI):
Example #2 (Controller 10.4.2 with ISAPI):
Example #3 (Controller 10.4.2 with CGI):
Steps:
For more information, see seprate IBM Technote #196949.
Related Information
[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SS9S6B","label":"IBM Cognos Controller"},"ARM Category":[{"code":"a8m0z000000brYKAAY","label":"Installation"}],"ARM Case Number":"","Platform":[{"code":"PF033","label":"Windows"}],"Version":"All Version(s)","Line of Business":{"code":"LOB10","label":"Data and AI"}}]
Was this topic helpful?
Document Information
Modified date:
02 September 2020
UID
swg21653338