Microstrategy Web Services Administration Guide: Document Number: 09430920
Microstrategy Web Services Administration Guide: Document Number: 09430920
Administration Guide
Version: 9.2
Document Number: 09430920
Tenth Edition, March 2011, version 9.2
To ensure that you are using the documentation that corresponds to the software you are licensed to use, compare this version number with the software
version shown in “About MicroStrategy...” in the Help menu of your software.
Document number: 09430920
Copyright © 2011 by MicroStrategy Incorporated. All rights reserved.
If you have not executed a written or electronic agreement with MicroStrategy or any authorized MicroStrategy distributor, the following terms apply:
This software and documentation are the proprietary and confidential information of MicroStrategy Incorporated and may not be provided to any other
person. Copyright © 2001-2011 by MicroStrategy Incorporated. All rights reserved.
THIS SOFTWARE AND DOCUMENTATION ARE PROVIDED “AS IS” AND WITHOUT EXPRESS OR LIMITED WARRANTY OF ANY KIND BY EITHER
MICROSTRATEGY INCORPORATED OR ANYONE WHO HAS BEEN INVOLVED IN THE CREATION, PRODUCTION, OR DISTRIBUTION OF THE
SOFTWARE OR DOCUMENTATION, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE, GOOD TITLE AND NONINFRINGMENT, QUALITY OR ACCURACY. THE ENTIRE RISK AS TO THE QUALITY AND
PERFORMANCE OF THE SOFTWARE AND DOCUMENTATION IS WITH YOU. SHOULD THE SOFTWARE OR DOCUMENTATION PROVE
DEFECTIVE, YOU (AND NOT MICROSTRATEGY, INC. OR ANYONE ELSE WHO HAS BEEN INVOLVED WITH THE CREATION, PRODUCTION, OR
DISTRIBUTION OF THE SOFTWARE OR DOCUMENTATION) ASSUME THE ENTIRE COST OF ALL NECESSARY SERVICING, REPAIR, OR
CORRECTION. SOME STATES DO NOT ALLOW THE EXCLUSION OF IMPLIED WARRANTIES, SO THE ABOVE EXCLUSION MAY NOT APPLY TO
YOU.
In no event will MicroStrategy, Inc. or any other person involved with the creation, production, or distribution of the Software be liable to you on account
of any claim for damage, including any lost profits, lost savings, or other special, incidental, consequential, or exemplary damages, including but not limited
to any damages assessed against or paid by you to any third party, arising from the use, inability to use, quality, or performance of such Software and
Documentation, even if MicroStrategy, Inc. or any such other person or entity has been advised of the possibility of such damages, or for the claim by any
other party. In addition, MicroStrategy, Inc. or any other person involved in the creation, production, or distribution of the Software shall not be liable for
any claim by you or any other party for damages arising from the use, inability to use, quality, or performance of such Software and Documentation, based
upon principles of contract warranty, negligence, strict liability for the negligence of indemnity or contribution, the failure of any remedy to achieve its
essential purpose, or otherwise. The entire liability of MicroStrategy, Inc. and your exclusive remedy shall not exceed, at the option of MicroStrategy, Inc.,
either a full refund of the price paid, or replacement of the Software. No oral or written information given out expands the liability of MicroStrategy, Inc.
beyond that specified in the above limitation of liability. Some states do not allow the limitation or exclusion of liability for incidental or consequential
damages, so the above limitation may not apply to you.
The information contained in this manual (the Documentation) and the Software are copyrighted and all rights are reserved by MicroStrategy, Inc.
MicroStrategy, Inc. reserves the right to make periodic modifications to the Software or the Documentation without obligation to notify any person or entity
of such revision. Copying, duplicating, selling, or otherwise distributing any part of the Software or Documentation without prior written consent of an
authorized representative of MicroStrategy, Inc. are prohibited. U.S. Government Restricted Rights. It is acknowledged that the Software and
Documentation were developed at private expense, that no part is public domain, and that the Software and Documentation are Commercial Computer
Software provided with RESTRICTED RIGHTS under Federal Acquisition Regulations and agency supplements to them. Use, duplication, or disclosure
by the U.S. Government is subject to restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in Technical Data and Computer Software clause at
DFAR 252.227-7013 et. seq. or subparagraphs (c)(1) and (2) of the Commercial Computer Software—Restricted Rights at FAR 52.227-19, as applicable.
Contractor is MicroStrategy, Inc., 1850 Towers Crescent Plaza, Vienna, VA 22182. Rights are reserved under copyright laws of the United States with
respect to unpublished portions of the Software.
The following are either trademarks or registered trademarks of MicroStrategy Incorporated in the United States and certain other countries:
MicroStrategy, MicroStrategy 6, MicroStrategy 7, MicroStrategy 7i, MicroStrategy 7i Evaluation Edition, MicroStrategy 7i Olap Services, MicroStrategy 8,
MicroStrategy 9, MicroStrategy Distribution Services, MicroStrategy MultiSource Option, MicroStrategy Command Manager, MicroStrategy Enterprise
Manager, MicroStrategy Object Manager, MicroStrategy Reporting Suite, MicroStrategy Power User, MicroStrategy Analyst, MicroStrategy Consumer,
MicroStrategy Email Delivery, MicroStrategy BI Author, MicroStrategy BI Modeler, MicroStrategy Evaluation Edition, MicroStrategy Administrator,
MicroStrategy Agent, MicroStrategy Architect, MicroStrategy BI Developer Kit, MicroStrategy Broadcast Server, MicroStrategy Broadcaster,
MicroStrategy Broadcaster Server, MicroStrategy Business Intelligence Platform, MicroStrategy Consulting, MicroStrategy CRM Applications,
MicroStrategy Customer Analyzer, MicroStrategy Desktop, MicroStrategy Desktop Analyst, MicroStrategy Desktop Designer, MicroStrategy eCRM 7,
MicroStrategy Education, MicroStrategy eTrainer, MicroStrategy Executive, MicroStrategy Infocenter, MicroStrategy Intelligence Server, MicroStrategy
Intelligence Server Universal Edition, MicroStrategy MDX Adapter, MicroStrategy Narrowcast Server, MicroStrategy Objects, MicroStrategy OLAP
Provider, MicroStrategy SDK, MicroStrategy Support, MicroStrategy Telecaster, MicroStrategy Transactor, MicroStrategy Web, MicroStrategy Web
Business Analyzer, MicroStrategy World, Application Development and Sophisticated Analysis, Best In Business Intelligence, Centralized Application
Management, Information Like Water, Intelligence Through Every Phone, Intelligence To Every Decision Maker, Intelligent E-Business, Personalized
Intelligence Portal, Query Tone, Rapid Application Development, MicroStrategy Intelligent Cubes, The Foundation For Intelligent E-Business, The
Integrated Business Intelligence Platform Built For The Enterprise, The Platform For Intelligent E-Business, The Scalable Business Intelligence Platform
Built For The Internet, Industrial-Strength Business Intelligence, Office Intelligence, MicroStrategy Office, MicroStrategy Report Services, MicroStrategy
Web MMT, MicroStrategy Web Services, Pixel Perfect, Pixel-Perfect, MicroStrategy Mobile, MicroStrategy Integrity Manager and MicroStrategy Data
Mining Services are all registered trademarks or trademarks of MicroStrategy Incorporated.
All other company and product names may be trademarks of the respective companies with which they are associated. Specifications subject to change
without notice. MicroStrategy is not responsible for errors or omissions. MicroStrategy makes no warranties or commitments concerning the availability
of future products or versions that may be planned or under development.
Patent Information
This product is patented. One or more of the following patents may apply to the product sold herein: U.S. Patent Nos. 6,154,766, 6,173,310, 6,260,050,
6,263,051, 6,269,393, 6,279,033, 6,567,796, 6,587,547, 6,606,596, 6,658,093, 6,658,432, 6,662,195, 6,671,715, 6,691,100, 6,694,316, 6,697,808,
6,704,723, 6,741,980, 6,765,997, 6,768,788, 6,772,137, 6,788,768, 6,798,867, 6,801,910, 6,820,073, 6,829,334, 6,836,537, 6,850,603, 6,859,798,
6,873,693, 6,885,734, 6,940,953, 6,964,012, 6,977,992, 6,996,568, 6,996,569, 7,003,512, 7,010,518, 7,016,480, 7,020,251, 7,039,165, 7,082,422,
7,113,993, 7,127,403, 7,174,349, 7,181,417, 7,194,457, 7,197,461, 7,228,303, 7,260,577, 7,266,181, 7,272,212, 7,302,639, 7,324,942, 7,330,847,
7,340,040, 7,356,758, 7,356,840, 7,415,438, 7,428,302, 7,430,562, 7,440,898, 7,486,780, 7,509,671, 7,516,181, 7,559,048, 7,574,376, 7,617,201,
7,725,811, 7,801,967, 7,836,178, 7,861,161, 7,861,253, and 7,881,443. Other patent applications are pending.
Various MicroStrategy products contain the copyrighted technology of third parties. This product may contain one or more of the following copyrighted
technologies:
Graph Generation Engine Copyright © 1998-2011. Three D Graphics, Inc. All rights reserved.
Actuate® Formula One. Copyright © 1993-2011 Actuate Corporation. All rights reserved.
XML parser Copyright © 2003-2011 Microsoft Corporation. All rights reserved.
Xalan XSLT processor. Copyright © 1999-2011. The Apache Software Foundation. All rights reserved.
Xerces XML parser. Copyright © 1999-2011. The Apache Software Foundation. All rights reserved.
FOP XSL formatting objects. Copyright © 2004-2011. The Apache Software Foundation. All rights reserved.
Portions of Intelligence Server memory management Copyright © 1991-2011 Compuware Corporation. All rights reserved.
ASIHTTPRequest library. Copyright © 2007-2011, All-Seeing Interactive. All rights reserved.
This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit. (http://www.openssl.org/)
International Components for Unicode
Copyright © 1999-2011 Compaq Computer Corporation
Copyright © 1999-2011 Hewlett-Packard Company
Copyright © 1999-2011 IBM Corporation
Copyright © 1999-2011 Hummingbird Communications Ltd.
Copyright © 1999-2011 Silicon Graphics, Inc.
Copyright © 1999-2011 Sun Microsystems, Inc.
Copyright © 1999-2011 The Open Group
All rights reserved.
Real Player and RealJukebox are included under license from Real Networks, Inc. Copyright © 1999-2011. All rights reserved.
CONTENTS
Glossary ..................................................................................... 91
Index ........................................................................................... 97
Description of Guide
This book will no longer be updated. The Web Services API described
in this book has been deprecated, and is included only to support
MicroStrategy Office.
Other examples in this book use the Analytics Modules, which include a set
of precreated sample reports, each from a different business area. Sample
reports present data for analysis in such business areas as financial
reporting, human resources, and customer analysis.
MicroStrategy 9.0
• The Web Services API described in this book has been deprecated. It is
recommended that you use the new Web Services SDK to develop
applications that use MicroStrategy data.
• Take advantage of support for Microsoft Windows IIS 7 and Windows
2008 (see ASP.NET implementation of Web Services, page 2.)
Prerequisites
Before working with this document, you should be familiar with:
Resources
Documentation
MicroStrategy provides both manuals and online help; these two information
sources provide different types of information, as described below:
Concepts and high-level steps for using various administrative tools such
as MicroStrategy Command Manager, MicroStrategy Enterprise
Manager, MicroStrategy Integrity Manager, and MicroStrategy Health
Center.
This book will no longer be updated. The Web Services API described in
this book has been deprecated, and is included only to support
MicroStrategy Office.
Help
• Help button: Use the Help button or ? (question mark) icon on most
software windows to see help for that window.
• Help menu: From the Help menu or link at the top of any screen, select
MicroStrategy Help to see the table of contents, the Search field, and the
index for the help system.
The manuals are available from your MicroStrategy disk or the machine
where MicroStrategy was installed.
The best place for all users to begin is with the MicroStrategy Basic
Reporting Guide.
To access the installed manuals and other documentation sources, see the
following procedures:
• To access installed manuals and other documentation sources on
Windows, page xviii
1 From the Windows Start menu, choose Programs (or All Programs),
MicroStrategy, then Product Manuals. A page opens in your browser
showing a list of available manuals in PDF format and other
documentation sources.
2 Click the link for the desired manual or other documentation source.
3 If you click the link for the Narrowcast Services SDK Guide, a File
Download dialog box opens. This documentation resource must be
downloaded. Select Open this file from its current location, and click
OK.
Ifmanual,
bookmarks are not visible on the left side of an Acrobat (PDF)
from the View menu click Bookmarks and Page. This step
varies slightly depending on your version of Adobe Acrobat Reader.
1 Within your UNIX or Linux machine, navigate to the directory where you
installed MicroStrategy. The default location is /opt/MicroStrategy,
or $HOME/MicroStrategy/install if you do not have write access to
/opt/MicroStrategy.
4 Click the link for the desired manual or other documentation source.
5 If you click the link for the Narrowcast Services SDK Guide, a File
Download dialog box opens. This documentation resource must be
downloaded. Select Open this file from its current location, and click
OK.
Ifmanual,
bookmarks are not visible on the left side of an Acrobat (PDF)
from the View menu click Bookmarks and Page. This step
varies slightly depending on your version of Adobe Acrobat Reader.
Documentation standards
MicroStrategy online help and PDF manuals (available both online and in
printed format) use standards to help you identify certain types of content.
The following table lists these standards.
Type Indicates
bold • Button names, check boxes, options, lists, and menus that are the focus of actions or
part of a list of such GUI elements and their definitions
• Text to be entered by the user
Example: Click Select Warehouse.
Example: Type cmdmgr -f scriptfile.scp and press Enter.
italic • New terms defined within the text and in the glossary
• Names of other product manuals
• When part of a command syntax, indicates variable information to be replaced by the
user
Example: The aggregation level is the level of calculation for the metric.
Example: Type copy c:\filename d:\foldername\filename
Courier • Calculations
font • Code samples
• Registry keys
• Path and file names
• URLs
• Messages displayed in the screen
Example: Sum(revenue)/number of months.
+ A keyboard command that calls for the use of more than one key (for example,
SHIFT+F1)
A warning icon alerts you to important information such as potential security risks; these
should be read before continuing.
Education
MicroStrategy Education Services provides a comprehensive curriculum and
highly skilled education consultants. Many customers and partners from
over 800 different organizations have benefited from MicroStrategy
instruction. For a detailed description of education offerings and course
curriculums, visit http://www.microstrategy.com/Education.
Consulting
MicroStrategy Consulting Services provides proven methods for delivering
leading-edge technology solutions. Offerings include complex security
architecture designs, performance and tuning, project and testing strategies
and recommendations, strategic planning, and more. For a detailed
description of consulting offerings, visit
http://www.microstrategy.com/Consulting.
International support
MicroStrategy supports several locales. Support for a locale typically includes
native database and operating system support, support for date formats,
numeric formats, currency symbols, and availability of translated interfaces
and certain documentation.
Technical Support
If you have questions about a specific MicroStrategy product, you should:
1 Consult the product guides, Help, and readme files. Locations to access
each are described above.
1 Verify that the issue is with MicroStrategy software and not a third party
software.
6 Discuss the issue with other users by posting a question about the issue
on the MicroStrategy Customer Forum at
https://resource.microstrategy.com/forum/.
The following table shows where, when, and how to contact MicroStrategy
Technical Support. If your Support Liaison is unable to reach MicroStrategy
Technical Support by phone during the hours of operation, they can leave a
voicemail message, send email or fax, or log a case using the Online Support
Interface. The individual Technical Support Centers are closed on certain
public holidays.
Support Liaisons should contact the Technical Support Center from which
they obtained their MicroStrategy software licenses or the Technical Support
Center to which they have been designated.
• Case details:
• Business/system impact
If this is the Support Liaison’s first call, they should also be prepared to
provide the following:
• Street address
• Phone number
• Fax number
• Email address
• Case number: Please keep a record of the number assigned to each case
logged with MicroStrategy Technical Support, and be ready to provide it
when inquiring about an existing case
• Case description:
What steps have you taken to isolate and resolve the issue? What were
the results?
Feedback
Please send any comments or suggestions about user documentation for
MicroStrategy products to:
documentationfeedback@microstrategy.com
support@microstrategy.com
When you provide feedback to us, please include the name and version of the
products you are currently using. Your feedback is important to us as we
prepare for future releases.
Introduction
Web Services
XML Web Services provides remote access to processes and data using open
Web standards. It can be a form of remote procedure call (RPC) or
messaging, but it is not tied to any company’s proprietary standards.
Typically, XML Web Services is shortened to Web Services and assumes the
use of XML to exchange messages. The advantages of Web Services
compared to earlier RPC or messaging technologies include the following:
The following diagram shows two clients talking to a Web Server using Web
Services messages:
The diagram shows that the XML Web Services is carried to and from the
Web Server over HTTP. Client A creates the XML messages directly. Client B
uses a language library, or proxy, which is generated by a programmer
development environment. This proxy provides functions in the language of
choice that represent the Web Services methods. Internally, the proxy
translates between the XML Web Service messages and the library functions.
The diagram above shows the ASP.NET architecture in an IIS 5.1 ASP.NET
implementation provided in a Windows XP server environment. The IIS 6.0
ASP.NET environment provided by a Windows 2003 server environment is
similar. A key difference is that IIS 6.0 uses a device driver, HTTP.SYS,
instead of IIS for request and response communications support.
classes to the SOAP engine. The engine ultimately translates those classes
back to messages which are transported out as SOAP responses over HTTP.
The relationship of these components is shown in the following diagram:
The next diagram shows the communications path in the J2EE environment.
In this flow, the .NET classes and JNI layers are replaced with a single set of
MicroStrategy Web Services Java API classes. These classes are the target
and source of Java class to XML translations used by the SOAP engine. The
bulk of Web Services processing is performed by the MWS objects and is
shared between the ASP.NET and J2EE implementations.
• 6.0 on Windows XP
.NET also has multiple versions; versions 2.0 (32-bit and 64-bit) and
3.0 (32-bit and 64-bit) are supported for use with MicroStrategy Web
Services.
Introduction
Installation locations
MicroStrategy Web Services (MWS) is installed as part of the master
MicroStrategy installation. See the MicroStrategy Installation and
Configuration Guide for details on how to use the installation utility.
For J2EE, the war file used for deployment are installed during platform
installation. You will find the file MicroStrategyWS.war in the following
directory :
The procedure used to deploy the war file to the target J2EE server depends
on the specific server. The target directory for installation depends on the
platform.
The settings above, which are in the <system.web> element, indicate that the
Web Services will use Windows authentication and that the Web Services
code will impersonate the calling user. This means that once a user passes
authentication tests, that user must be authorized to execute the code and
access its resources.
In conjunction with the above settings, IIS Manager is also set to use
Integrated Windows Authentication. In the Authentication Methods dialog
box, Anonymous Access is turned off and Integrated Windows
Authentication is turned on. The user must have the appropriate
authorization for necessary resources in order to run, as discussed above.
Access permissions
The following table shows the types of access permissions that ASP.NET in
general and ASP.NET Web Services must have in order to access the listed
locations:
Location Access Type Account Comments
systemroot\ Read Process or configured The location of the global assembly cache.
assembly impersonation
userprofile directory Read/write Process Used by the global assembly cache lock
files and the common language runtime
security configuration caching mechanism.
If the user profile directory for the account
does not exist, ASP.NET uses the default
userprofile directory.
application directory Read Process or configured The location for application files.
impersonation
installroot hierarchy Read Process or configured ASP.NET must be able to access the
impersonation system assemblies referenced in the
machine.config file in the config
subdirectory under installroot.
Default Web site Read Process For file change notification monitoring.
monitoring
application directory Modify/read & execute Process The .NET application log is created and
list folder contents/write updated in this directory.
In“Process”
the Account column in the tables above, the account is either
or “Process or configured impersonation”. The Process
account depends on which server platform Web Services is installed
and how it is configured.
ASP.NET adds the ASPNET user that runs the ASP.NET worker process. On
a Windows XP system, this process is aspnet_wp.exe. On a Windows 2003 or
2008 system, the process is w3wp.exe.
Everyone • Modify
• Read & Execute
• List Folder Contents
• Read/Write
Users • Modify
• Read & Execute
• List Folder Contents
Normally, the Users group includes ASPNET and all authenticated users.
The Everyone group includes all authenticated users.
If you encounter or suspect security issues, you can set up your Web Services
to use Anonymous access. In the Authentication Methods dialog box, turn on
Anonymous authentication and provide a user name and password that meet
the above requirements.
3 Click Advanced. The Access Control Settings for Web Services dialog box
opens.
4 Select one of the entries, such as Everyone, and click View/Edit. The
Permission Entry for Web Services dialog box opens. A detailed list of
permissions based on your selection is displayed.
The following assumes that you have created the role user1 and assigned an
account to that role using the user account management facility of the
application server. Add the following entries to the web.xml file as the last
entries in the <web-app> element to configure basic authentication for the
application and provide access to the defined role:
<!-- Define a Security Constraint on this Application -->
<security-constraint>
<web-resource-collection>
<web-resource-name>mstrws application</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<!-- NOTE: This role is not present in the default users file -->
<role-name>user1</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>BASIC</auth-method>
<realm-name>MSTRWS Application</realm-name>
</login-config>
<security-role>
<description>
</description>
<role-name>manager</role-name>
</security-role>
To verify installation
definition that works if you have installed both Web Services and
Intelligence Server on the same machine. This file contains the following
content:
<?xml version=”1.0” ?>
<1 - -
This file contains the list of project sources supported by the
MicroStrategy Web Services product
-->
<ProjectSources>
<ProjectSourceName>MicroStrategy Tutorial
</ProjectSourceName>
<ServerName>localhost</ServerName>
<AuthMode>MWSStandard</AuthMode>
<PortNumber>0</PortNumber>
<MaxPooledConnections>100</MaxPooledConnections>
</ProjectSource>
<!-- You can add another data source here. For example, <ProjectSource>
<ProjectSourceName>Local Connection</ProjectSourceName>
<ServerName>BURLAKLAP</ServerName>
<AuthMode>MWSNTCredential</AuthMode>
<MaxPooledConnections>150</MaxPooledConnections>
</ProjectSource>
-->
</ProjectSources>
3 You can add a new project source definition to this file. For example, if
you have a server with a DNS name of Stealth, it uses Windows NT
authentication, and you would like to name it My Server with default port
and connection pool settings, add the following:
<ProjectSource>
<ProjectSourceName>My Server</ProjectSourceName>
<ServerName>Stealth</ServerName>
<AuthMode>MWSNTCredential</AuthMode>
</ProjectSource>
4 Once you have made the changes and saved the file, return to the
MSTRWS.asmx page. On the same machine on which Web Services is
installed, in the browser click the GetProjectSources API link to display
the documentation/test page for this service API, as shown below:
5 Click Invoke. An XML response appears that lists the sources in your
projectsources.xml file, as shown below:
6 Once you have verified access and operation with GetProjectSources, you
can test operations with an Intelligence Server using TestService. On the
MSTRWS.asmx Web page, click the TestService link.
When you install a client such as MicroStrategy Office, you must use the URL
for your server. If the server you have installed is <servername>, then the
default URL is http://<servername>/MicroStrategyWS/
MSTRWS.asmx.
To verify installation
</ProjectSource>
...
</ProjectSources>
-->
<ProjectSources>
<ProjectSourceName>MicroStrategy Tutorial
</ProjectSourceName>
<ServerName>localhost</ServerName>
<AuthMode>MWSStandard</AuthMode>
<PortNumber>0</PortNumber>
<MaxPooledConnections>100</MaxPooledConnections>
</ProjectSource>
<!-- You can add another data source here. For example, <ProjectSource>
<ProjectSourceName>Local Connection</ProjectSourceName>
<ServerName>BURLAKLAP</ServerName>
<AuthMode>MWSNTCredential</AuthMode>
<MaxPooledConnections>150</MaxPooledConnections>
</ProjectSource>
-->
</ProjectSources>
3 You can easily add a new project source definition to this file. For
example, if you have a server with a DNS name of Stealth, it uses
Standard authentication, and you would like to name it My Server with
default port and connection pool settings, add the following:
<ProjectSource>
<ProjectSourceName>My Server</ProjectSourceName>
<ServerName>Stealth</ServerName>
<AuthMode>MWSStandard</AuthMode>
</ProjectSource>
4 Once you have made the changes and saved the file, return to the
MicroStrategyWS page. Click Validate to determine whether MWS has
access to all of the runtime files required. You should see a display similar
to the following:
5 On the same machine on which Web Services is installed, you can enter
the following values:
• Web Services URL:
http://localhost:8080/MicroStrategyWS/services/MSTRWSJ
• Login: Administrator
• Password: <blank>
• If TestService fails, you only see the text “TestService Results” with
the exception that occurred. Check the error logs for more details.
When you install a client such as MicroStrategy Office, you must use the URL
for your server. The default URL is
http://<servername>:8080/MicroStrategyWS/services/
MSTRWSJ
Introduction
This file contains one definition by default that works if you have installed
both MWS and Intelligence Server on the same machine. The contents of this
file can be seen in Chapter 2 in either the Verifying your ASP.NET
installation, page 13 section or the Verifying your J2EE installation,
page 16 section. Steps to add a new project source definition to this file can
be found in Chapter 2, Installation and Setup.
If you change the project source and you are using MicroStrategy Office, you
must restart your client application (such as Microsoft Excel, Word, or
PowerPoint) to see the new project sources. For ASP.NET Web Services, the
list of new sources is available the next time you call the GetProjectSources
method. For J2EE Web Services, you must restart the MWS application. For
a custom client, any project source change is immediately available.
file cannot be viewed with a browser. To view and change this file, open this
file in an editor on the server machine. Only administrators should change
this file.
Any changes you make to the web.config file will cause the application
to recompile, which will impact performance if performed too
frequently. Additionally, if there is a syntax error of any kind, the
application will fail when accessed.
-->
-->
-->
<add key="BUNDLESUBDIRECTORY"
value="resBundles" />
-->
<add key="STRINGSBUNDLEPREFIX"
value="DashboardViewerBundle_" />
-->
-->
-->
For example:
"file://ServerOrRemoteHost/fileShare/Setup.exe"On server
fileshare
"http://ServerOrRemoteHost/MicroStrategyWS/Office/Setup.exe"
From another installation
-->
-->
"C:/Program
Files/MicroStrategy/Web Services/Office/moimain.dll.config"
or:
"../WebServiceRootPath/Office/moimain.dll.config"
"//ServerName/FileShare/OtherDirectory/moimain.dll.config"
network path
"file://ServerName/FileShare/moimain.dll.config"file URL
<add key="OFFICEINSTALLCONFIGFILELOC"
value="Office/moimain.dll.config" />
-->
(eg. "C:/ClassFiles;C:/MWSVirtualDir/MWS.jar")
-->
-->
-->
</appSettings>
The following table presents each of the settings that appear in the
web.config file (shown above) and information about their values:
Setting Description
MAXTRACEFILESIZE Size to which each trace file will grow before being archived.
REQUESTTIMEOUT Amount of time the underlying MicroStrategy Web SDK called during a
Web Services operation waits for a response from Intelligence Server.
Setting Description
FLASHSUBDIRECTORY Identifies the subdirectory under the installation directory containing swf
files for Flash View Mode support.
BUNDLESUBDIRECTORY Identifies the subdirectory under the installation directory containing date
and string resources bundles for Flash View Mode support.
STRINGSBUNDLEEPREFIX Identifies the file name prefix for the strings resource bundle used in
Flash View Mode support.
DATESBUNDLEPREFIX Identifies the file name prefix for the dates resource bundle used in
Flash View Mode support.
DASHBOARDVERSION Allows the Flash dashboard swf version to be set to something other
than the default build version.
OFFICEINSTALLURL Allows the administrator to set an alternate location for the Office install
executable. If the executable is remote to the server, then the
OFFICEINSTALLVERSION config parameter must also be set.
OFFICEINSTALLVERSION Can be used to identify the version of the Office install executable, if the
file location is not accessible from the web server. Normally, the version
is obtained by querying the file.
affect
Any changes you make to the MWSConfig.properties file do not take
until the MWS application is restarted.
########################
########################
#seconds
REQUESTTIMEOUT=120
#seconds
SERVERBUSYTIMEOUT=300
MAXPOOLEDCONNECTIONS=100
REPORTSTATEWORKINGSET=5
#####################################
#####################################
#OFFICEINSTALLVERSION=9.x.yyy.zzz
#BLOCKOFFICEUPDATE=true
#For example:
#OFFICEINSTALLURL=file://ServerOrRemoteHost/fileshare/setup.e
xe
#OFFICEINSTALLURL=http://ServerOrRemoteHost:8080/MicroStrateg
yWS/Office/Setup.exe
# "C:/Program Files/MicroStrategy/Web
Services/Office/moimain.dll.config"
# or:
# "../WebServiceRootPath/Office/moimain.dll.config"
#For example:
#OFFICEINSTALLCONFIGFILELOC="C:/OtherDirectory/moimain.dll.co
nfig"
#network path
#OFFICEINSTALLCONFIGFILELOC="//ServerName/FileShare/OtherDire
ctory/moimain.dll.config"
#file URL
#OFFICEINSTALLCONFIGFILELOC="file://ServerName/FileShare/moim
ain.dll.config"
#OFFICEINSTALLCONFIGFILELOC="Office/moimain.dll.config"
########################
########################
IMAGESUBDIRECTORY=images
FLASHSUBDIRECTORY=swf
BUNDLESUBDIRECTORY=resBundles
STRINGSBUNDLEPREFIX=DashboardViewerBundle_
DATESBUNDLEPREFIX=DashboardDatesBundle_
#DASHBOARDVERSION=9.x.yyy.zzz
Note that some configuration options occur for both ASP.NET and J2EE
deployments, whereas others apply only to one or the other. The following
table presents each of the settings that appear in the MWSConfig.properties
file shown above, and information about their values:
Setting Description
REQUESTTIMEOUT Amount of time the underlying MicroStrategy Web SDK called during a
Web Services operation waits for a response from Intelligence Server.
Setting Description
FLASHSUBDIRECTORY Identifies the subdirectory under the installation directory containing swf
files for Flash View Mode support
BUNDLESUBDIRECTORY Identifies the subdirectory under the installation directory containing date
and string resource bundles for Flash View Mode support.
STRINGSBUNDLEPREFIX Identifies the file name prefix for the strings resource bundle used in
Flash View Mode support.
DATESBUNDLEPREFIX Identifies the file name prefix for the dates resource bundle used in
Flash View Mode Support.
DASHBOARDVERSION Allows the Flash dashboard swf version to be set to something other
than the default build version.
OFFICEINSTALLURL Allows the administrator to set an alternate location for the Office install
executable. If the executable is remote to the server then the
OFFICEINSTALLVERSION config parameter must also be set.
OFFICEINSTALLVERSION Can be used to identify the version of the Office install executable, if the
file location is not accessible from the web server. Normally, the version
is obtained by querying the file.
OFFICEINSTALLCONFIGFILE Allows the administrator to set an alternate location for the default
LOC MicroStrategy Office Config file that is supplied on the web server.
REPORTWORKINGSET Number of working sets for report processing, which will limit the number
of reports that can be executed in parallel for a single session.
Web Services. The WSDL defines a Web Service using the XML Schema
language. It defines the message formats, data types, operations, and end
points, as well as other information to describe the Web Service and allow a
client to learn about the message formats. Details of WSDL can be found at
http://www.w3c.org.
For ASP.NET, to view the WSDL for MWS, on the MSTRWS.asmx Web page
click Services Description. To view a sample of an XML request and
response, click a method such as GetProjects.
For J2EE first use a browser to access the application home page, for
example http://localhost:8080/MicroStrategyWS for Tomcat. Click WSDL
next to the text View Service Description to view the WSDL for MWS.
MicroStrategy Web
Base Location Example
Services
You can register third-party widget files with the use of MicroStrategy SDK
customizations. For information on the MicroStrategy SDK and how to
register third-party widget files with MicroStrategy, see the MicroStrategy
Developer Library. If you do not have a license for MicroStrategy SDK,
contact your MicroStrategy account executive.
Messages from the .NET portion of MWS are found in the log
MWSTraceLog.txt file located in the MWS application directory. This log is
controlled with settings in the web.config file. See Chapter 6, Configuring
the ASP.NET log section for more information about configuring the .NET
logging.
Introduction
Although all settings can impact .NET Web Services either directly or
indirectly, certain groups of settings can directly impact the performance and
operation of Web Services. The discussion in this section focuses on certain
elements of the configuration files only. For a complete reference to the
settings, consult your Microsoft .NET documentation.
• ProcessModel
• HttpRuntime
• Authentication
• Identity
ProcessModel
The processModel element specifies how IIS will start and end ASP.NET
worker processes. This element appears in machine.config only. The
following table displays the attributes for processModel. In some cases, a
recommended setting for MicroStrategy Web Services is noted. If there is no
recommended setting, use the default. In all cases, optimized settings for
your environment depend on your workload. Several of these settings are
discussed in more detail below the table.
Recommended
Attribute Value Default Value Description
Value
Recommended
Attribute Value Default Value Description
Value
Recommended
Attribute Value Default Value Description
Value
When running under IIS 6, ASP.NET uses the IIS Manager to set several
processModel settings. Some processModel settings are still read from the
processModel element in the machine.config file. These include the
following:
• requestQueueLimit
• responseDeadlockInterval
• maxWorkerThreads
• maxIoThreads
• minWorkerThreads
• minIoThreads
The other settings are managed in the IIS Manager Properties dialogs. See
the Microsoft IIS Manager documentation for complete details.
To set the values in IIS Manager, open the Properties dialog for the
MicroStrategyWebServicesPool application pool. The settings are located on
the Recycling, Performance, and Health tabs.
The process thread pool services incoming requests. The number of threads
is limited to prevent exhausting system resources for thread management,
which may degrade performance. If there is a free thread and a request
arrives, that request acquires the thread. If all threads are busy, the request is
queued until there is a free thread.
httpRuntime
The following table displays the attributes for httpRuntime with a
recommended setting for MWS if different from the default and one has been
identified. Several of these settings are discussed in more detail below the
table.
Recommended
Attribute Value Default Value Description
Value
Recommended
Attribute Value Default Value Description
Value
Performance Monitor
Performance analysis of ASP.NET application is enabled using performance
counters and the Performance Monitoring tool. With this tool, you can
obtain quantitative measures of application and server characteristics during
application operations. With these measures, you can:
• Understand the loads placed on your application.
1 From your Windows Start menu, select Settings, then select Control
Panel.
2 Click System Monitor if it is not already visible. Then click to expand the
Add Counters dialog box.
3 Click Use local counters, or select counters from your computer and
select the target computer from the list box.
4 Select the counter category from the Performance Object list box, and
click Select counters from list. From the list, select the counters
desired. Use the Ctrl or Shift keys to select multiple counters.
5 If the counter you chose supports instances, click Select instances from
list and select an instance. Click Add to add one or more instances to the
Performance Monitor.
See your Microsoft documentation for complete details on this and other
Performance Monitor features.
Basic counters
Whenever you are testing application performance, the following counters
should be included. They provide a useful foundation of data for detailed
analysis. Each counter in the table is described in more detail in the following
sections.
These counters provide details about the .NET Common Language Runtime
environment that underlies the ASP.NET infrastructure.
.NET CLR • Windows XP: aspnet_wp Bytes in Loader Heap Number of bytes committed
Loading • Windows 2003/2008: by the class loaded across all
aspnet_w3wp AppDomains.
.NET CLR • Windows XP: aspnet_wp # Bytes in All Heaps Number of bytes committed
Memory • Windows 2003/2008: by managed objects. Sum of
aspnet_w3wp the large object heap and
Generation 0, 1, and 2
heaps.
.NET CLR • Windows XP: aspnet_wp # Gen 0 Collections Number of times Generation
Memory • Windows 2003/2008: 0 objects have been garbage
aspnet_w3wp collected.
.NET CLR • Windows XP: aspnet_wp # Gen 1 Collections Number of times Generation
Memory • Windows 2003/2008: 1 objects have been garbage
aspnet_w3wp collected.
.NET CLR • Windows XP: aspnet_wp # Gen 2 Collections Number of times Generation
Memory • Windows 2003/2008: 2 objects have been garbage
aspnet_w3wp collected.
• .NET CLR Loading\Bytes in Loader Heap: If this value does not level
out and continues to rise, check the Current Assemblies counter.
• .NET CLR Memory\# Bytes in all Heaps: This counter will be less than
Process/Private Bytes, which includes all regions of type
MEM_COMMIT. This counter is a subset of those regions. The gap
consists of memory used by unmanaged code. When memory use is high,
determine if it is in managed or unmanaged code.
• .NET CLR Memory\% Time in GC: All threads are suspended during
collection. This counter determines whether too much time is spent in
collection. A value of 5% or less is good, although occasionally higher
values may occur.
These counters provide details about the ASP.NET environment and the
individual applications. When working with ASP.NET application counters,
you may want to select the MicroStrategy Web Services instance that
includes the name of the virtual directory for this Web application. By
default, this is MicroStrategyWS.
ASP.NET *MicroStrategyWS Cache Total Hit Ratio Total hit-to-miss ratio of all cache
Applications requests.
ASP.NET *MicroStrategyWS Cache Total Turnover Number of additions and removals to the
Applications Rate cache per second.
ASP.NET *MicroStrategyWS Cache API Entries Number of entries currently in user cache.
Applications
ASP.NET *MicroStrategyWS Cache API Hit Ratio Total hit-to-miss ratio of User Cache
Applications requests.
ASP.NET *MicroStrategyWS Cache API Turnover Additions and removals to user cache per
Applications Rate second.
ASP.NET *MicroStrategyWS Output Cache Hit Total hit-to-miss ratio of Output Cache
Applications Ratio requests.
ASP.NET *MicroStrategyWS Compilations Total Total number of .NET files that have been
Applications compiled.
ASP.NET *MicroStrategyWS Requests Not Found Number of requests for resources not
Applications found.
ASP.NET *MicroStrategyWS Requests Timed Out Number of requests that have timed out.
Applications
Process\Private Bytes
Process\Thread Count
ASP.NET\Requests Current
ASP.NET\Requests Queued
ASP.NET uses the cache for objects that are expensive to create.
Process aspnet_wp, inetinfo, or w3wp % Processor Time Percentage of time threads in this
process spend using processors.
Process aspnet_wp, inetinfo, or w3wp Handle Count Count of handles in the process.
Process aspnet_wp, inetinfo, or w3wp Thread Count Number of threads active in the
process.
Process aspnet_wp, inetinfo, or w3wp Virtual Bytes Current number of bytes of the
virtual address space for this
process.
• Process\% Processor Time: If this value exceeds 70% for long periods,
then the system is underpowered.
• Process\Handle Count: If this number is in the 5000 or 10,000 range,
then performance will degrade and something is wrong. For instance, a
denial-of-service attack against IIS can cause this number to jump
beyond these levels.
Web Service ISAPI Extension Requests/sec Includes requests to all ISAP extensions,
not just aspnet_isapi.dll.
Introduction
• Web Farms: These are multiple Web Servers running MWS, and are
configured to appear as a single Web Service and provide fault tolerance
capabilities.
This section discusses setting up SSL, Web Gardens, and Web Farms using
Windows 2003. For J2EE platforms, consult your operating system and
application server documentation. Other hardware and software
technologies can be used to set up Web Farms. Clustering is discussed in the
MicroStrategy System Administration Guide.
2 From your Start menu, select Settings, select Control Panel, and then
select Administrative Tools. Open the Internet Services Manager tool.
3 Use the tree control to navigate to the website containing the MWS
virtual directory. By default, this is the Default Web Site. Right-click on
the website and select Properties. The Properties dialog box opens.
5 In the Welcome dialog box, click Next. Click Create a New Certificate
and click Next again.
• Prepare the request now, but send it later: This allows you to
prepare the certificate request now, but send it later.
• Immediately send the request to a Certificate Authority: This
option only appears if you have a properly configured Microsoft
Certificate Server available in your domain. See your Microsoft
documentation for more details.
To use your own Certificate Services setup, select Prepare the request
now, but send it later and click Next.
• If this site is on the Internet, you should use your URL, for example,
www.mysite.com.
For external users, if the common name does not match the URL, the
user receives a warning.
11 Enter a file name and click Next to see a Request File Summary. The file
contains a Base 64 encoded string containing the information in the
request as well as your public key. Additional information is signed with
your private key. A Certificate Authority can use your public key to verify
the information signed with your private key.
Perform the following steps to submit an SSL Certificate Request and issue
the certificate.
1 Open the generated Request File with Notepad and copy the contents to
the clipboard.
3 Click Request a Certificate and click Next. The Choose Request Type
page opens.
5 Click Base64 Encoded Certificate Request (PKCS #10 or #7) and click
Next. The Submit a Saved Request page opens.
6 Paste the information from the Certificate Request file that you copied
previously, into the text box beneath the Saved Request header. Click
Submit to open the Certificate Pending page, and then close your
browser.
7 From your Start menu, select Settings, select Control Panel, and then
select Administrative Tools. Open the Certification Authority tool.
9 Click Action, then All Tasks, and then Issue. The request is deleted from
the Pending Requests folder and moved to the Issued Certificates folder.
11 On the Details tab, click Copy to File.... The Certificate Export Wizard
opens.
13 Enter a file name to save the certificate and click Next. The Completing
the Export Wizard page opens.
15 Close the Certificate dialog box and close the Certificate Authority tool.
Perform the following steps to install the SSL certificate on the Web Server.
1 From your Start menu, select Settings, select Control Panel, then select
Administrative Tools. Open the Internet Services Manager tool.
2 Use the tree control to navigate to the website containing the MWS
virtual directory. By default, this is the Default Web Site. Right-click on
the website and click Properties. The Properties dialog box opens.
4 Click Process the pending request and install the certificate. Click
Next. The Process a Pending Request page opens.
5 Enter the path and file name of the issued certificate and click Next. The
Certificate Summary page opens.
6 Review the information in the Certificate Summary, click Next, and then
click Finish to install the certificate on the Web Server.
1 From your Start menu, select Settings, select Control Panel, and select
Administrative Tools. Open the Internet Services Manager tool.
2 Use the tree control to navigate to the MWS virtual directory, which is
named MicroStrategyWS by default. Right-click the virtual directory
name and click Properties. The Properties dialog box opens.
5 Click OK, then click OK again to close the Properties dialog box.
Perform one of the following procedures to configure the client to use an SSL
HTTPS URL, depending on whether you have a packaged client or you are
working with a Visual Studio .NET project.
• Visual Studio .NET project: For Microsoft Visual Studio .NET projects,
when you add a Web Reference, you can specify an https URL as the
location of the XML Web service. If you have not done this, you can edit
the class that was created by Visual Studio .NET that wraps the Web
Service, by modifying the line of code that sets the URL. For a C# project,
the line of code may be similar to the following after modification:
this.Url = “https://mymachine/MyWS/Service1.asmx”;
3 Click the Install this CA certification path link to install the certificate.
6 From the File menu, select Console and then select Add/Remove
Snap-in.
7 Click Add to open the Add Standalone Snap-in dialog box, click
Certificates, and then click Add.
9 Click Local Computer and then click Finish to see a list of certificate
categories that appear in the Snap-in window.
11 Open the list of trusted root certificate authorities in the tree view.
12 Click Action, then All Tasks, then Import to add your Certificate
Authority to the list.
Web Farm
A Web Farm consists of several Web Server machines configured together to
act as a single server with a single IP address. MWS can be configured to run
The following list summarizes the work involved in setting up a Web Farm:
• Install and configure MWS on each Web Server that will be network
load-balanced.
• Configure the cluster and each server for network load balancing.
1 Follow the MWS installation instructions for each machine that will be
part of the set of load balanced servers.
Perform the following steps to configure the cluster and each server for
network load balancing (NLB).
You can only use the Windows 2003/2008 NLB Manager to configure
all hosts if they are all on Windows 2003 and 2008. Otherwise, you
must use the local manager on each Windows XP machine.
1 From your Start menu, select Settings, select Control Panel, and open
Administrative Tools. Open the Network Load Balancing tool.
• Leave the IGMP Multicast option cleared. However, if the cluster does
not operate you may need to return to this screen and select this
option. Consult the Network Load Balancing Service documentation
for more advanced setup details, including using two network cards
per server.
5 The default port rule is too broad for production, but works for evaluation
purposes. Consult your Microsoft documentation for various scenarios
for port rules.
For SSL, there are numerous issues to insure proper operation of NLB
and SSL together. Consult your Microsoft documentation for
information on resolving these issues.
For non-SSL situations, MWS does not have state maintained on the
server and will not require special affinity to be defined. Affinity
insures that a specific client will always be processed by a specific
server that is maintaining its state.
8 Select an interface to be included in the cluster and click Next. The Host
Parameters dialog box opens.
9 The Host Priority box displays a unique ID that identifies each node in
the cluster and represents the priority given to each node. The lower the
ID, the higher the priority. Node 1 is the master node and will receive
requests and act as a routing manager in most cases. When the work load
is too high, other servers perform this function. Set the priority and click
Finish to complete host definition and close all dialogs.
10 The manager configures the first host and logs results in the bottom pane.
The final message should be “End Configuration Change.”
11 To add an additional host, right-click on the tree branch for the cluster
you just added and click Add Host to Cluster. The Connect dialog box
opens. Repeat the appropriate steps above for the additional host.
Web Garden
A Web Garden consists of a multi-processor Web Server on which
independent ASP.NET worker processes run on two or more of the
processors. webGarden is an attribute of the processModel that controls
whether this feature is enabled. In Windows 2003, IIS 6.0, the webGarden
and cpuMask settings are configured in the IIS Manager. Likewise, in
Windows 2008, IIS 7.0, Web Garden settings are configured in IIS as
advanced settings for the application pool. See Chapter 4, ASP.NET
configuration settings section for details on these settings.
If the webGarden value is true, then the cpuMask attribute is used to specify
which CPUs will run an ASP.NET process. Each bit represents a processor. A
1 indicates that a processor will run the process and a 0 indicates it will not.
If there are four processors, then the following bitmap means the 3rd and 4th
processors will run an ASP.NET worker process, as shown below:
00001100
If the webGarden value is false, the operating system configures the system
for default affinity. This default is to run one ASP.NET process. The default
webGarden value is false.
Introduction
• Verify that the Web Services are available on the Web Server itself.
• View the message exchange between the client and server to make sure
the exchange occurs and to check whether there is any indication of the
error.
Inbefore
most cases, it is recommended that you contact MicroStrategy
using debugging tools.
Details for many of the procedures listed above are described in the rest of
this chapter.
Perform the following procedure to view the Windows event log on a local
machine.
1 From your Start menu, select Settings, select Control Panel, and open
Administrative Tools.
2 Open the Event Viewer. In the left panel, you can switch between the
Application, Security, and System logs to display the log entries in the
right panel.
3 Double-click a log entry to see more details in the Event Properties dialog
box.
4 Use the up and down arrows to navigate through other log entries.
5 Click OK when you are ready to close the Event Properties dialog box.
These logs are enabled using the Internet Information Services (IIS)
Manager. When enabled, you can configure details about the information to
be included. IIS 6.0 and IIS 7.0 have a substatus code that can aid in
debugging. See your ISS documentation for a list of status and substatus
codes.
In IIS 6.0 and IIS 7.0there is an HTTPERR log that logs information from
HTTP.SYS. For Windows 2003, HTTP.SYS replaces inetinfo.exe as the
component that processes HTTP requests.
HTTPERR can be used to get details about rejected requests. Requests can be
rejected when the request queue is full or if the application is taken offline by
the Rapid Fail Protection feature. The QueueFull log entry appears if the
queue is full, and an AppOffline entry appears if the application is taken
offline.
Key tasks for working with these logs include the following:
1 From the Start menu, select Settings, then select Control Panel. Open
Administrative Tools, then Internet Information Services Manager.
2 In the left panel, open the branch for your computer name to open the
local computer branch.
3 Open Web Sites to view the website you want to manage. By default, this
is the Default Web Site.
4 Right-click the website you want to view and select Properties. The
Default Web Site Properties dialog box opens.
5 On the Web Site tag, select Enable Logging to turn on the W3C logs. Set
the active log format as desired.
6 Click Properties to set details of the log entries in the Extended Logging
Properties dialog box. On the General Properties tab, set the time
period, name, and location of the file.
8 Click OK to close the Extended Logging Properties dialog box, and click
OK again to close the Default Web Site Properties dialog box.
1 Locate the Web log. The Web log location is specified in the Web log
properties and can be viewed using the Enabling the Web Log steps,
above. By default, this location is %SYSDIR%\LogFiles\W3SVC1. In this
directory, a series of log files exists dated according to the naming format
set in the log properties.
The HTTPERR log writes entries for the following types of errors:
• Responses to clients: These are entries for HTTP protocol errors. After
sending the error response, the connection to the client is terminated.
The HTTPERR log is only available on IIS 6.0. To change settings, you
must have Administrator/Local System credentials.
1 To configure the HTTPERR log, you modify registry key settings found
under the key as follows:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\
HTTP\Parameters
ErrorLogFileTruncateSize A DWORD specifying the maximum size of an error log file, in bytes. The
default value is 1MB. The value cannot be smaller than the default value.
ErrorLoggingDir. A string that specifies the folder into which HTTP API puts its logging files.
The HTTP API creates a subfolder HTTPERR in the specified folder and
stores the log files in this subfolder. The subfolder and files have the same
permission settings. The Administrator and Local System accounts have
full access.
The default location is %SystemRoot%\System32\LogFiles
2 Use a text editor to open and view a log file. Reason phrase strings
provide details for each error and appear as the last field in each entry.
You can run the TestService and GetProjectSources methods from a remote
computer by modifying entries under the <protocols> element in your
machine.config file. Locate the element path
\configuration\system.web\webServices\protocols
<add name=”HttpPost”/>
Uncomment the entry for it to take effect. Note that this change affects all
services on the server.
Answer the following questions to help determine the reason for the
problem:
• Are there basic protocol errors before the Web Service is even invoked?
• What are the details of an error response being sent by the server to the
client?
• Are there any HTTP header fields that are inconsistent between the client
and server?
tcpTrace is a useful tool for answering these questions. You can download
this tool from www. pocketsoap.com. The following high-level summary
describes how to view message exchanges between MicroStrategy Office and
MicroStrategy Web Services (MWS) on J2EE platforms using tcpTrace:
• Capture and view messages. For steps, see Capturing and viewing
messages, page 77.
To initialize tcpTrace
1 Run the tcpTrace program. You can run this utility on either the client or
the server. For this procedure it is assumed you are running tcpTrace on
your client machine, with the name client, and that the Web Services
are installed on the machine named server.
• Listen on Port #: The port to which you will send messages. Port
8008 is a good choice.
• Destination Server: The server on which MWS is installed, for this
example the machine named server.
• Destination Port: This port should be set to the port used by the
application server. For example, 8080 is the default port for Tomcat.
4 Options exist to create a log file, provide a log file name, and select an
XML format. Select all these options.
5 Click OK to close the tcpTrace Settings dialog box and begin the trace.
1 From the Start menu, select Programs, select MicroStrategy, then select
MicroStrategy Office. Click Configuration to start the MicroStrategy
Office configuration utility.
3 Enter the URL for your monitored endpoint. For this example, enter
http://client:8008/MicroStrategyWS/services/MSTRWSJ
for J2EE Web Services running on Tomcat.It is important to
include the 8008 (port), otherwise messages will not be traced.
4 Click OK and then OK again. Close all Microsoft Office applications and
restart Excel.
2 Open the tcpTrace application. In the left panel, there will be indications
of several traces. When you select a trace, you see the client request in the
upper right panel and the server response in the lower right panel. Below
is an example request for GetProjectSources from the client, followed by a
good response from the server:
Client request:
HTTP/1.1 200 OK
Server: Microsoft-IIS/6.0
Date: Sat, 08 Nov 2003 15:54:37 GMT
X-Powered-By: ASP.NET
X-AspNet-Version: 1.1.4322
Cache-Control: private, max-age=0
Content-Type: text/xml; charset=utf-8
Content-Length: 2996
<?xml version=“1.0”encoding=“utf-8”?>
<soap:Envelope
xmlns:soap=“http://schemas.xmlsoap.org/
soap/envelope/”
xmlns:xsi=“http://www.w3.org/2001/
XMLSchema-instance”
xmlns:xsd=“http://www.w3.org/2001/
XMLSchema”><soap:Body>
<GetProjectSourcesResponse
xmlns=“http://microstrategy.com/
webservices/”><GetProjectSourcesResult>
<MWSProjectSourceInfo><ServerName>TEST
</ServerName><ProjSourceName>TEST
</ProjSourceName><AuthMOde>MWSStandard
</AuthMode></MWSProjectSourceInfo>
</soap:Body></soap:Envelope>POST /MSTRWS/MSTRWS.asmx
HTTP/1.1
To turn on tracing, set the enabled attribute to true. The input and output
attributes will contain the filenames of the input and output trace files. These
files will be in the root application directory. Be sure to set the enabled
attribute to false after you are finished tracing. To understand messages, you
must have knowledge of HTTP, SOAP, and Microsoft .NET Web Services
implementations.
© 2011 MicroStrategy, Inc. Web Services tracing for ASP.NET message analysis 79
6 Diagnostics Tools MicroStrategy Web Services Administration
You may want to relocate your log file (pattern), change individual log file
size (limit - # bytes), or log file instances (count). The default entries for
these settings are:
• fileH.pattern=C\:/Program Files/MicroStrategy/Web
Services/MWSJavaLog%systemdate%.log
• fileH.pattern=C\:/Tomcat5/webapps/MicroStrategyWS/
MWSJavaLog%systemdate%.log
• fileH.limit=262144
• fileH.count=4
• fileH.level=SEVERE
The level setting can control how much detail is logged. For Web Services,
locate the following entry:
com.microstrategy.webservices.Log.level=SEVERE
The level can be set to one of the following values, which causes the log to
increase in detail in the following order:
• SEVERE
• WARNING
• INFO
• FINE
• FINER
• FINEST
• ALL
When controlling the amount of data to be logged, you must not only
configure the com.microstrategy.webservices.Log.level, but
must also ensure that the fileH.level element at least matches the
webservices setting so that the appropriate level of logging can occur. For
In the system diagnostics section of the web.config file, two switches are used
to control the level of tracing that is performed:
The default setting for both switches is 1 (ERROR), which enables tracing for
error messages only. Setting the switch values to 4 (VERBOSE) enables
tracing at the finest level. The default system diagnostics section is shown
below:
<system.diagnostics>
<switches>
<!--
Switches control what level of tracing messages you want to output. In
MicroStrategy SDK’s coding convention, switches are identified by each
bridge or application’s name space. After you change the tracing level by
changing the ‘value’ attribute, you have to restart your application to make
it effective. Any message logged at lower tracing level will be sent to the
listeners you specify.
0==>OFF
1==>ERROR
2==>WARNING
3==>INFO
4==>VERBOSE
For example, if you set the tracing level to 3, then all error, warning, and
info messages will be logged.
-->
If TRACE is set to ON, trace files will grow to the specified size
(MAXTRACEFILESIZE) before being backed up. Once the specified number of
backup files have been created (NUMBACKUPTRACEFILES), the first backup file
will be overwritten, and so on, in a circular fashion.
The trace file will be named (MWSTraceLog.txt and will be located at the Web
service root filepath, along with its backup files (ie. C:\Program
Files\MicroStrategy\Web Services.)
-->
</appSettings>
Introduction
This chapter lists common problems you may encounter when using
MicroStrategy Web Services (MWS). The problems are organized into the
following groups:
matter which client tool you use. For MicroStrategy Office using MWS,
consult the MicroStrategy Office online help first for information on error
messages.
HTTP errors
401 Unauthorized
Causes: The most common reason for this error is that the user does not
have authorization to access the Web service.
Solutions: Verify the identity of the user receiving this error. Check that the
user has access to the Web service virtual directory.
403 Forbidden
There are a number of sub-status codes for this message, and you may
receive a more specific error message.
Solutions: Check that the user has access as specified in ASP.NET Web
Services security requirements, page 8 section.
Solutions:
• Verify that the installation is correct and all files are present.
Solutions: Check all of the error logs to see whether there are more details
on the problem.
• Server unavailable
• Site unavailable
• Service unavailable
Solutions: First verify that you have network access to the server and the
Web Service is operational from the host itself. Then follow the instructions
given in ASP.NET configuration settings, page 39 section to determine
whether requests are being rejected. If requests are being rejected, raise the
maxWorkerThreads, requestQueueLimit, and appRequestQueueLimit.
XYZ can vary in this message, and will identify where the error occurred.
Causes: This error is mostly likely evidence of a problem with the Java
Virtual Machine (JVM) used by the MWS Objects and WebObjects.
Solutions: Restart IIS and see whether the problem occurs again. Increasing
the Java heap size may help.
Causes: There can be one or more reasons for this error, including an
internal execution error or resource constraint.
Solutions:
• Check all of the error logs to see whether there are more details on the
problem.
Request timeout
Solutions:
Solutions: Make sure that all managed and unmanaged dependencies are
available. Unmanaged DLLs must be in the current directory or on the path.
Managed DLLs must be in the local bin directory or the global assembly
cache.
Causes: A connection between the client and server was broken before
receiving the complete response.
Solutions: Verify the URL for the server and communications between the
client and server.
Other symptoms
This section lists additional possible problems not directly related to error
messages, and presents causes and solutions.
Solutions: Increase the amount of memory available to the JVM using the
Java Heap Size registry entry for the MicroStrategy JNI Bridge.
User is prompted for Network Login while running client against Web
Solutions: Verify the URL for the server and communications between the
client and server.
Solutions:
• For Windows 2003, use Manage Your Server to make sure that .NET
Framework is installed and enabled, or follow .NET Framework
instructions to ensure the proper version of .NET Framework is
installed, registered, and enabled for use with IIS.
• For Windows 2008, make sure that .NET Framework is installed and
enabled, or follow .NET Framework instructions to ensure the proper
version of .NET Framework is installed, registered and enabled for
use with IIS.
Yes. Specifically, the most recent version of MWS requires Microsoft .NET
version 2.0. This has been tested with Microsoft Internet Information
Services version 6.0 and 7.0. This is automatically installed by MicroStrategy
installation if not present on the machine.
Yes. As long as you can follow the XML Schema defined in the MWS
Definition Language schema, you can communicate with MWS. However,
the Web Services API has been deprecated; it is recommended that you use
the Web Services SDK to communicate with MicroStrategy.
Can I use any language on any platform to program the Web Services
API?
Yes. As long as your computer can communicate with HTTP to the MWS
server, you can execute the API.
Yes. You can view the detailed message format specifications and examples
of those messages online. More detailed documentation for the API is
available upon request.
Yes. MWS and MicroStrategy Web are compatible and can be run on the
same server. In a production environment, the products will compete for
resources on the same server. It is recommended that they run on separate
servers.
Yes. MWS can communicate with a client such as MicroStrategy Office using
Secure Socket Layer for security. See Setting up SSL for encryption, page 58
section.
Yes. SSL provides complete message privacy, but does not provide the
comprehensive security that WS-Security provides. There are middleware
components that can be used to configure WS-Security for MWS. Since MWS
supports Message Transmission Optimization Mechanism for attachments,
it can be fully secured with WS-Security.
See also
• ASP .NET
See also
• Java 2 Platform, Enterprise Edition (J2EE)
Java 2 Platform, A programming platform that is part of the Java platform for
Enterprise Edition developing, deploying, and executing multi-tier applications
(J2EE) based on the server components running on an application
server. Also referred to as the Java EE, the J2EE platform is
defined by a specification and vendors must adhere to
conformance requirements to declare their products as Java
EE-compliant. Key server technologies include Enterprise
Java Beans, Servlets, JavaServer Pages, and Web Services.
Java Native Interface A programming framework allowing Java code running in the
(JNI) Java virtual machine to call and be called by native
applications and libraries written in other languages, such as
C or C++.
Java Virtual Machine A virtual machine that runs Java byte code usually generated
(JVM) by a Java language compiler. It is a component of the Java
platform.
See also
• Java
See also
• cluster
See also
• SOAP
• HTTP
• UDDI
Web Services .NET updates provided by Microsoft to keep its Web Services
Enhancements (WSE) implementation up to date. Due to the continual evolution of
Web Services standards, developers require more frequent
updates to Web Services than those supplied by the normal
.NET update cycle.
94 Glossary: Universal Description, Discovery and Integration (UDDI) © 2011 MicroStrategy, Inc.
MicroStrategy Web Services Administration Glossary
A C
certificate
Access Denied error 84
installing for SSL 61
access permissions 9
requesting for SSL 58
adding a counter to Performance
Monitor 46 cluster
Anonymous access 11 configuring 65
application log and aspnet_wp process Web Farms and 65
problems 70 Common Language Runtime
architecture 2 environment 47
asmx files 2 communications privacy 58
ASP.NET 2, 3 configuration settings
authorization 10 ASP.NET 39
configuration settings 39 Web Services and 22, 28
log 81 configuring a cluster 65
J
D Java log 79
debugging
Microsoft debugging tools 82
Windows event log and 70
K
key error phrases 85
E
error
L
key phrase 85 log 36
queue 85 ASP.NET 81
request timeout 86 HTTPERR 71
with no message text 88 Java 79
event log, Windows 70 W3C Web 71
Web 71
F
frequently asked questions 89
M
messages and privacy 58
Microsoft .NET Framework 89
H MicroStrategy Office licensing
HTTP errors 84 requirement 20
HTTP.SYS and inetinfo 71
HTTPERR log 71
N
settings 73
network load balancing 65
viewing 74
Network Load Balancing Manager 65
httpRuntime 43
NT authentication 45
I
O
identify settings 45
Objects (MWS) 5
IIS versions 6
P certificate request 58
configuring with Web Services 62
performance
installing a certificate 61
Web Farms and 65
testing 62
Web Gardens and 68
Web Farms and 66
Performance Monitor 45
state maintenance and Web Gardens 68
adding a counter to 46
support
starting 46
international xxi
permissions, access 9
support. See technical support.
privacy of communications 58
system counters 54
process counter 54
processModel 40
processor counters 54 T
project source tcpTrace
changing 22 about 75, 79
Web Farms and 65 MicroStrategy Office and 77
project source definition, adding 15, 18 technical support xxi
testing, SSL 62
Q thread pool process 43
tracing
queues error 85
bridge implementation layer 81
front end and bridge code 81
R troubleshooting
request timeout error 86 about 83
with diagnostic tools 69
S
scalability and Web Farms 65 V
security requirements 8 virtual directory, default 8
security, advanced settings 11
Server is too busy error 85 W
Server unavailable error 85
W3C Web log 71
Server XYZ is busy error 87
Web Farms
service definitions 33
about 64
Service is temporarily overloaded error 85
project source and 65
Service unavailable error 85
SSL and 66
Site unavailable error 85
Web Gardens
SSL
about 67
about 58