Home > Articles > Operating Systems, Server > Solaris

Like this article? We recommend

OWA Luau with Rewriter Hula Dancing: the 6 o'clock Show

This Sun ONE Secure Portal 6.0 recipe is similar to the recipe for the Secure Portal 3 called "OWA Luau with Rewriter Fire Dancing: the 3 o'clock Show" on page 22. This recipe explains the details that are particular to version 6.0.

Main Course: Internet ExplorerIngredients


  • Internet Explorer 5.5SP2 + December 2002 Security update


  • 8 modifications to exchweb scripts and/or HTML component files

Portal Server

  • Sun ONE Portal Server 6.0 + 6.0SRAExchangeFixes

  • New Exchange-specific ruleset (owa_sp3_ruleset.xml)


  • No client required for access.

  • Exposes native Exchange functionality to the web browser.

  • No client configuration required.

  • Encryption/Decryption done using SSL.

  • User interface is the same when accessed from within or outside the internal corporate network.

  • Takes advantage of new 6.0 architecture where the ruleset can be associated with a particular Gateway which may be used to access the Exchange server.


  • Requires changes to Exchange server exposed scripts and component files in addition to configuration changes and fixes for the portal server software.

  • Integration is fragile in the sense that rules and modifications are very strict and inflexible or major functionality will fail or be inaccessible.

Exchange Feature Completeness

For a complete feature listing, refer to the section "Exchange Feature Completeness ~99%" on page 23 under the Sun ONE Portal Server 3 recipe. Feature completeness for the 6.0 rewriter integration is on par with that list, except for the additional known problems described below.

Know Problems With Exchange

Problem 1: Rich Text Editing in Email Composition Does Not Work

This feature operates from an ActiveX control which will not appear in the menu bar when the OWA interface is accessed through the Sun ONE Portal Server Gateway.

Workaround: In the ctrl_FormatBar20.htc file, add quotation marks to the following line. . .

<attach event=ondocumentready handler=onDocumentReady />

so it looks like the following:

<attach event="ondocumentready" handler="onDocumentReady" />

Problem 2: Submenu Does Not Display Correctly From Folder View

This submenu is opened by right mouse selecting over a folder name when in the folder view of OWA. The menu is not displayed correctly because a necessary event (ondocumentReady) never fires for the handler in ctrl_DropMenu20.htc to create the DHTML necessary for the menu contents.

Workaround: In the ctrl_DropMenu20.htc file, add quotation marks to the following line. . .

<attach event=ondocumentready handler=dOnReady />

so it looks like the following:

<attach event="ondocumentready" handler="dOnReady" />


  1. Create a new rewriter ruleset for Exchange.

  2. Install the Portal 6 patch containing Exchange-related fixes.

  3. Make necessary modifications to Exchange controls files.

  4. Enable Rewriting of CSS content.


Any change made to the Outlook Web Access source .htc, .js, or .xsl files that exist in the Exchweb folder is unsupported by Microsoft.3 Any customization changes which affect these files that have already been made may affect or prevent a successful integration using this document. Future minor and major releases of Exchange from Microsoft may overwrite these changes, and make other modifications that break the integration through the rewriter. Upgrading to new releases of either product should be made in a controlled, responsible manner in a testing only environment.


To Create a New Rewriter Ruleset for Exchange

  1. Log in to the Administration Console from a browser that has local access to the scripts and tools that you downloaded for these recipes.

  2. See "Obtaining the Scripts and Tools for this Article" on page 3.

  3. Select View: Service Management.

  4. Under the Portal Server Configuration section in the left view pane, select the link next to Rewriter.

  5. In the right view pane, select New under the Rules section.

  6. Change the Ruleset id attribute value to something easily identifiable like owa_sp3_ruleset.

  7. ...
    <RuleSet id="owa_sp3_ruleset">
  8. Select save.

  9. Select Upload link next to the new ruleset name.

  10. As the local file, choose the owa_sp3_ruleset.xml file (one of the downloadable files for this article)

  11. Select the Gateway link under the SRAP Configuration section of the left view pane.

  12. Select the Edit link for the profile which will be used by the Gateway node accessing the Exchange server.

  13. Under the Domain-Based Rulesets section in the right view pane, add the domain for the Exchange server if it is not there already, or modify the existing mapping to use the new ruleset.

  14. sub.domain.com|owa_sp3_ruleset

    Sub and domain are the subdomain if one exists, and DNS domain of the Exchange server.

  15. Select Save.

  16. Restart the gateway node(s) to reread the new profile information.

To Install Portal 6 Patch Containing Exchange-Related Fixes

For information on how to obtain Sun ONE Secure Portal patches, see "Obtaining the Required Patches" on page 5.

The patch you need for this recipe is called 6.0SRAExchangeFixes (patch ID 115156-01).

  1. If you have added or changed files in the Portal web-apps directory, back it up in case the changes are overwritten or lost when the service is redeployed.

  2. # cp install_dir/SUNWps/web_apps \
  3. Uncompress and untar the patch contents.

  4. # gunzip 6.0SRAExchangeFixes.tar.gz
    # tar -xvf 6.0SRAExchangeFixes.tar 
  5. Install the patch using the Solaris patchadd command, first on the profile and platform nodes, and then on the Gateway node.

  6. # patchadd 115156-01
    Checking installed patches...
    Executing prepatch script...
    Verifying sufficient filesystem capacity (dry run method)...
    Installing patch packages...
    Patch number 115156-01 has been successfully installed.
    See /var/sadm/patch/115156-01/log for details
    Executing postpatch script...
    Checking for previous patch revisions...
    Restarting SunONE Portal Server Gateway w/ original settings.
    stopping gateway ... done.
    starting gateway ...
    Gateway restarted. Please wait a moment before connecting to it.
    Postpatch processing complete.
    Patch packages installed:

To Make Necessary Modifications to Exchange Controls Files.

Follow the steps outlined in the 3.0 Rewriter recipe for making changes to these files using the modfiles.ksh script, or by editing the files directly. See "To Update the Exchange Files" on page 28.

To Enable Rewriting of CSS Content

  1. Log in to the Portal Administration Console.

  2. Select View: Service Management.

  3. Select the link next to Gateway in the left view pane.

  4. Select the Edit link next to the appropriate Gateway profile in the right view pane.

  5. Under the MIME mappings sections, add CSS=text/html.

  6. Select Save.

  7. Restart the Gateway.


Do I Need to Create a New Rewriter Ruleset?

By creating a separate ruleset specifically for Exchange-related integration, the ruleset can be maintained and modified independently of other default rulesets to prevent rule trumping and to extend the ability to create a particular Gateway node Exchange users will log in to in order to access OWA. The owa_sp3_ruleset.xml file is a migration of the rewriter rules required for the 3.0 rewriter recipe. For more information about what the rules are and why they are required, refer to the tables in the 3.0 recipe.

Do I Need to Install a Portal Patch For Exchange to Work?

The Exchange integration requires a combination of configuration changes (the rewriter ruleset), Exchange modifications (the control files), and fixes or enhancements in the Portal Server Gateway component. The Portal patch contains the following fixes:

  • BugID 4780863 – Gateway strips off XML declaration tag.

  • Pages or response bodies that contain an XML namespace identifier which look like <?xml version="1.0" ?> end up having the root tag dropped. The direct effect on Exchange is not clear unless something depends on this root element being present.

  • BugID 4788050 – Rewriter should ignore comments which occur prior to opening the XSL tag.

  • If the opening XSL tag is preceded by anything else, the page will be rewritten. The correct fix for this particular problem needs to be carefully considered because there might be times when the XSL code has to be rewritten because it is used in a transform that will control URL values.

  • BugID 4778676 – Gateway should not translate special characters (XML Entities) when rewriting XML.

  • For example, when an email message is expanded, Exchange sends a DAV SEARCH request with the following message body:

    <searchrequest xmlns="DAV:">
    <sql>SELECT "http://schemas.microsoft.com/exchange/x-priority-long" as 
    prop1, "http://schemas.microso
    ft.com/exchange/smallicon" as prop2, 
    "http://schemas.microsoft.com/mapi/proptag/x10900003" as prop3,
    "urn:schemas:httpmail:hasattachment" as 
    prop4,"http://schemas.microsoft.com/mapi/subject" as prop5, "
    urn:schemas:httpmail:datereceived" as prop6, 
    "http://schemas.microsoft.com/mapi/proptag/x0e080003" as
     prop7,"urn:schemas:httpmail:read" as read, 
    s" as messageclass, "DAV:href" as davhref FROM Scope('SHALLOW TRAVERSAL OF 
    ""') WHERE "http://schemas
    .microsoft.com/mapi/proptag/0x67aa000b" = false AND "DAV:isfolder" = false 
    ORDER BY "http://schemas.m
    icrosoft.com/mapi/sent_representing_name" ASC, 
    "urn:schemas:httpmail:datereceived" DESC</sql>
    <range type="find" rows="1">WHERE 
    " >= CAST("System Administrator" AS "string")</range>

    There are no URL references which matter that are not being rewritten correctly, but the > character is being translated by the Gateway XML parser. By the time it gets to the Exchange backend, the XML is no longer syntactically correct for the request to be serviced and a multistatus response is sent with a 404 status in the response body.

  • BugID 4781754 – Not rewriting the URLs in CSS Content. CSS is used in many places through the OWA code. This is a fix for added functionality done in Portal 3 that has not yet been ported to the portal server 6 software.

  • Do I Need to Make Modifications to Exchange Files?

    For more information about the specific reasons these changes must be made for the integration to work, refer to the 3.0 Rewriter recipe.

    Why Do I Need to Enable the Rewriting of CSS Content?

    CSS content is used in various places throughout OWA. To keep the interface consistent with what a user would see accessing the Exchange server directly, it is necessary to enable the rewriting of CSS content.

InformIT Promotional Mailings & Special Offers

I would like to receive exclusive offers and hear about products from InformIT and its family of brands. I can unsubscribe at any time.


Pearson Education, Inc., 221 River Street, Hoboken, New Jersey 07030, (Pearson) presents this site to provide information about products and services that can be purchased through this site.

This privacy notice provides an overview of our commitment to privacy and describes how we collect, protect, use and share personal information collected through this site. Please note that other Pearson websites and online products and services have their own separate privacy policies.

Collection and Use of Information

To conduct business and deliver products and services, Pearson collects and uses personal information in several ways in connection with this site, including:

Questions and Inquiries

For inquiries and questions, we collect the inquiry or question, together with name, contact details (email address, phone number and mailing address) and any other additional information voluntarily submitted to us through a Contact Us form or an email. We use this information to address the inquiry and respond to the question.

Online Store

For orders and purchases placed through our online store on this site, we collect order details, name, institution name and address (if applicable), email address, phone number, shipping and billing addresses, credit/debit card information, shipping options and any instructions. We use this information to complete transactions, fulfill orders, communicate with individuals placing orders or visiting the online store, and for related purposes.


Pearson may offer opportunities to provide feedback or participate in surveys, including surveys evaluating Pearson products, services or sites. Participation is voluntary. Pearson collects information requested in the survey questions and uses the information to evaluate, support, maintain and improve products, services or sites, develop new products and services, conduct educational research and for other purposes specified in the survey.

Contests and Drawings

Occasionally, we may sponsor a contest or drawing. Participation is optional. Pearson collects name, contact information and other information specified on the entry form for the contest or drawing to conduct the contest or drawing. Pearson may collect additional personal information from the winners of a contest or drawing in order to award the prize and for tax reporting purposes, as required by law.


If you have elected to receive email newsletters or promotional mailings and special offers but want to unsubscribe, simply email information@informit.com.

Service Announcements

On rare occasions it is necessary to send out a strictly service related announcement. For instance, if our service is temporarily suspended for maintenance we might send users an email. Generally, users may not opt-out of these communications, though they can deactivate their account information. However, these communications are not promotional in nature.

Customer Service

We communicate with users on a regular basis to provide requested services and in regard to issues relating to their account we reply via email or phone in accordance with the users' wishes when a user submits their information through our Contact Us form.

Other Collection and Use of Information

Application and System Logs

Pearson automatically collects log data to help ensure the delivery, availability and security of this site. Log data may include technical information about how a user or visitor connected to this site, such as browser type, type of computer/device, operating system, internet service provider and IP address. We use this information for support purposes and to monitor the health of the site, identify problems, improve service, detect unauthorized access and fraudulent activity, prevent and respond to security incidents and appropriately scale computing resources.

Web Analytics

Pearson may use third party web trend analytical services, including Google Analytics, to collect visitor information, such as IP addresses, browser types, referring pages, pages visited and time spent on a particular site. While these analytical services collect and report information on an anonymous basis, they may use cookies to gather web trend information. The information gathered may enable Pearson (but not the third party web trend services) to link information with application and system log data. Pearson uses this information for system administration and to identify problems, improve service, detect unauthorized access and fraudulent activity, prevent and respond to security incidents, appropriately scale computing resources and otherwise support and deliver this site and its services.

Cookies and Related Technologies

This site uses cookies and similar technologies to personalize content, measure traffic patterns, control security, track use and access of information on this site, and provide interest-based messages and advertising. Users can manage and block the use of cookies through their browser. Disabling or blocking certain cookies may limit the functionality of this site.

Do Not Track

This site currently does not respond to Do Not Track signals.


Pearson uses appropriate physical, administrative and technical security measures to protect personal information from unauthorized access, use and disclosure.


This site is not directed to children under the age of 13.


Pearson may send or direct marketing communications to users, provided that

  • Pearson will not use personal information collected or processed as a K-12 school service provider for the purpose of directed or targeted advertising.
  • Such marketing is consistent with applicable law and Pearson's legal obligations.
  • Pearson will not knowingly direct or send marketing communications to an individual who has expressed a preference not to receive marketing.
  • Where required by applicable law, express or implied consent to marketing exists and has not been withdrawn.

Pearson may provide personal information to a third party service provider on a restricted basis to provide marketing solely on behalf of Pearson or an affiliate or customer for whom Pearson is a service provider. Marketing preferences may be changed at any time.

Correcting/Updating Personal Information

If a user's personally identifiable information changes (such as your postal address or email address), we provide a way to correct or update that user's personal data provided to us. This can be done on the Account page. If a user no longer desires our service and desires to delete his or her account, please contact us at customer-service@informit.com and we will process the deletion of a user's account.


Users can always make an informed choice as to whether they should proceed with certain services offered by InformIT. If you choose to remove yourself from our mailing list(s) simply visit the following page and uncheck any communication you no longer want to receive: www.informit.com/u.aspx.

Sale of Personal Information

Pearson does not rent or sell personal information in exchange for any payment of money.

While Pearson does not sell personal information, as defined in Nevada law, Nevada residents may email a request for no sale of their personal information to NevadaDesignatedRequest@pearson.com.

Supplemental Privacy Statement for California Residents

California residents should read our Supplemental privacy statement for California residents in conjunction with this Privacy Notice. The Supplemental privacy statement for California residents explains Pearson's commitment to comply with California law and applies to personal information of California residents collected in connection with this site and the Services.

Sharing and Disclosure

Pearson may disclose personal information, as follows:

  • As required by law.
  • With the consent of the individual (or their parent, if the individual is a minor)
  • In response to a subpoena, court order or legal process, to the extent permitted or required by law
  • To protect the security and safety of individuals, data, assets and systems, consistent with applicable law
  • In connection the sale, joint venture or other transfer of some or all of its company or assets, subject to the provisions of this Privacy Notice
  • To investigate or address actual or suspected fraud or other illegal activities
  • To exercise its legal rights, including enforcement of the Terms of Use for this site or another contract
  • To affiliated Pearson companies and other companies and organizations who perform work for Pearson and are obligated to protect the privacy of personal information consistent with this Privacy Notice
  • To a school, organization, company or government agency, where Pearson collects or processes the personal information in a school setting or on behalf of such organization, company or government agency.


This web site contains links to other sites. Please be aware that we are not responsible for the privacy practices of such other sites. We encourage our users to be aware when they leave our site and to read the privacy statements of each and every web site that collects Personal Information. This privacy statement applies solely to information collected by this web site.

Requests and Contact

Please contact us about this Privacy Notice or if you have any requests or questions relating to the privacy of your personal information.

Changes to this Privacy Notice

We may revise this Privacy Notice through an updated posting. We will identify the effective date of the revision in the posting. Often, updates are made to provide greater clarity or to comply with changes in regulatory requirements. If the updates involve material changes to the collection, protection, use or disclosure of Personal Information, Pearson will provide notice of the change through a conspicuous notice on this site or other appropriate way. Continued use of the site after the effective date of a posted revision evidences acceptance. Please contact us if you have questions or concerns about the Privacy Notice or any objection to any revisions.

Last Update: November 17, 2020