Configure the proxy server in IBM® WebSphere® Portal. To avoid
cross-site scripting (XSS) vulnerabilities, many browsers deny JavaScript commands on a
remote server. The commands are denied because the remote server is on a different domain
than the WebSphere Portal server. Therefore, the function
of Forms that are created on Forms
Experience Builder are
limited. When you configure the HTTP Outbound connection, a proxy rule is enabled on the
portal server that allows the JavaScript commands on the remote server.
Before you begin
Make a backup copy of the
proxy-config.xml file. This file is in the
wp_profile_root/wp_profile/config/cells/applications/AJAX Proxy Configuration.ear/deployments/AJAX
Proxy Configuration/wp.proxy.config.war/WEB-INF/ directory. Keep the copy so that you can
revert to the original version if an error occurs.
Procedure
- Open the proxy-config.xml file.
- Add the following <policy url="...">...</policy> content after the last
entry:
Note: Change {$serverHostname} and {$serverPort} to reflect the
IBM Forms
Experience Builder server
configuration. /forms/ is the standard context-root of the
Forms
Experience Builder application.
Change the /forms/ context-root if it was configured
differently during the setup. Change {$token.ltpa.name} and
{$token.ltpa2.name} to reflect the single sign-on (SSO)
configuration page on the portal server. If the fields are blank, then use
LtpaToken and
LtpaToken2.
<policy url="{http|https}://{$serverHostname}:{$serverPort}/forms/*"" name="feb">
<actions>
<method>GET</method>
<method>HEAD</method>
<method>POST</method>
<method>PUT</method>
<method>DELETE</method>
</actions>
<headers>
<header>x-lfn-url-callback</header>
<header>User-Agent</header>
<header>Accept*</header>
<header>Vary</header>
<header>Location</header>
<header>Content*</header>
<header>Authorization*</header>
<header>X-Method-Override</header>
<header>Set-Cookie</header>
<header>If-Modified-Since</header>
<header>If-None-Match</header>
<header>X-Server</header>
<header>X-Update-Nonce</header>
<header>X-Requested-With</header>
<header>com.ibm.lotus.openajax.virtualhost</header>
<header>com.ibm.lotus.openajax.virtualport</header>
</headers>
<cookie-rule name="feb">
<cookie>LTPA</cookie>
<cookie>LTPA2</cookie>
<cookie>JSESSIONID</cookie>
<cookie>{$token.ltpa.name}</cookie>
<cookie>{$token.ltpa2.name}</cookie>
<cookie>SimpleToken</cookie>
</cookie-rule>
</policy>
- Add the following information to the metadata section of the
proxy-config.xml file:
<meta-data>
<name>forward-http-errors</name>
<value>true</value>
</meta-data>
- Open a command prompt on the portal server. Change to the wp_profile_root\ConfigEngine directory.
- Run the following command to configure the proxy:
- AIX®
HP-UX
Linux
Solaris: ./ConfigEngine.sh
-DWasPassword=wpsadmin
-DPortalAdminPwd=wpsadmin checkin-wp-proxy-config
-DProxyConfigFileName=/proxy-config.xml
- IBM i:
ConfigEngine.sh
-DWasPassword=wpsadmin
-DPortalAdminPwd=wpsadmin checkin-wp-proxy-config
-DProxyConfigFileName=/proxy-config.xml
- Windows: ConfigEngine.bat
-DWasPassword=wpsadmin
-DPortalAdminPwd=wpsadmin checkin-wp-proxy-config
-DProxyConfigFileName=C:\proxy-config.xml
- Restart the WebSphere_Portal server.