Configuration Changes and Options introduced in WP/WCM V7.0.0.1 and 7.0.0.2 Combined Cumulative Fixes

Release notes


Abstract

To address some changes or updates in code, occasionally there are new options added that must be manually added or configured to use them. This page provides a list of those changes delivered in the CFs and integrated into the fix pack.

Content

Introduced in 7.0.0.1 & 7.0.0.2 CF017
APAR Abstract Details and Notes
PM71358 Drag and drop from palette in CSA mode not functioning for PortalWeb2 theme If you are using a PortalWeb2 based theme on Portal 7.0.0.1 or 7.0.0.2, you will need to integrate the DND.js from installer/wp.ear/installableApps/wps.ear/wps.war/dnd into the similar directory structure on your custom PortalWeb2 theme.
Introduced in 7.0.0.1 & 7.0.0.2 CF014
APAR Abstract Details and Notes
PM64584 Launching dynamic page gives error Run configuration task "action-deploy-transformation-dynamicui-wp.dynamicui.config":

On Windows: ConfigEngine.bat action-deploy-transformation-dynamicui-wp.dynamicui.config
On other platforms: ./ConfigEngine.sh action-deploy-transformation-dynamicui-wp.dynamicui.config

Note: WebSphere Portal must be started prior to executing the configuration task.
Note: In a clustered environment this configuration task only should be executed on the primary node.
Introduced in 7.0.0.1 & 7.0.0.2 CF012
APAR Abstract Details and Notes
PM56244 Missing SDD components for migration from 6152 to 7001 Note: THE FOLLOWING STEP(S) ARE ONLY REQUIRED IF YOU HAVE ALREADY MIGRATED AND HAD THAT MIGRATION FAIL OR HAVE A FRESH 7.0.0.2 ENVIRONMENT (WITH A PROFILE) THAT YOU ARE ADDING THIS FIX TO. IF YOU ARE INSTALLING THIS FIX IN "BINARY-ONLY" MODE (NO PROFILE) IN PREPARATION FOR MIGRATION, THERE IS NO NEED TO DO THE FOLLOWING STEP(S).
  1. Run the following command from your <profile>/ConfigEngine directory:
    • WIN) ConfigEngine.bat -uninstall -offeringList PortalServer -unregisterOnly
    • OTHER) ./ConfigEngine.sh -uninstall -offeringList PortalServer -unregisterOnly
  2. Run the following command from your <profile>/ConfigEngine directory:
    • WIN) ConfigEngine.bat -install -offeringRoot <path_to_PortalServer_readonly_dir> -installPath <path_to_PortalServer_readonly_dir> -expandBinaries false
      ex) ConfigEngine.bat -install -offeringRoot C:/IBM/WebSphere/PortalServer -installPath C:/IBM/WebSphere/PortalServer -expandBinaries false
    • OTHER) ./ConfigEngine.sh -install -offeringRoot <path_to_PortalServer_readonly_dir> -installPath <path_to_PortalServer_readonly_dir> -expandBinaries false
      ex) ./ConfigEngine.sh -install -offeringRoot /opt/IBM/WebSphere/PortalServer -installPath /opt/IBM/WebSphere/PortalServer -expandBinaries false
  3. Ensure that your PortalServer/shared directory is writable
  4. Run the following command from your <profile>/ConfigEngine directory:
    • WIN) ConfigEngine.bat gather-shared-objects
    • OTHER) ./ConfigEngine.sh gather-shared-objects
Introduced in 7.0.0.1 & 7.0.0.2 CF011
APAR Abstract Details and Notes
PM46824 (new in 7.0.0.2 CF011, was already provided for 7.0.0.1 in CF008, below) URI Home Substitution does not work 1. Start portal server
2. Open WAS admin console
3. Select "Resources" -> "Resource Environment" -> "Resource Environment Providers"
4. Select resource environment provider "WP ConfigService"
5. Click "custom properties"
6. Add entry "uri.home.sub_sessionuser" with value "true"
7. Save the changes
8. Restart portal server
PM43638 Process server does not propagate window resize To enable the new functionality, perform the following steps.

a) uncomment the following lines in bootstrap.jspf

// if (themeConfig.get("behaviors.rendering.handleBrowserResize") != null) {
// pageContext.setAttribute("handleBrowserResize", themeConfig.get("behaviors.rendering.handleBrowserResize"), PageContext.REQUEST_SCOPE);
//}

b) touch Default.jsp

c) use the WebSphere Application Server administrative console and open Resources
-> Resource Environment Providers
-> WP GlobalThemeConfig
-> custom properties
to add/modify the following new setting:
setting: behaviors.rendering.handleBrowserResize
values: true|false (default = false)

Save, synchronize, and restart all nodes after any changes.
PM54248 Update PortalWeb2 theme to handle either /NM/OID or /NM:OID URL structure To accommodate the change in URL handling from /NM/OID to /NM:OID URL structure, the PortalWeb2 theme needed to be changed to recognize either URL structure. While the PortalWeb2 theme is not shipped for v7 and above, customers might have a custom theme based on it from an older v6.1 migrated system. Customers should be aware that if running a custom or migrated theme based on PortalWeb2, you will need to manually integrate these changes into your custom theme. To do this, you must examine your head_extras.jspf, find this section of code:

try {
com.ibm.portal.resolver.accessors.url.PocURLFactory urlFct = pocSvc.getURLFactory();
com.ibm.portal.resolver.PocURL url = urlFct.newURL(Boolean.FALSE);
java.net.URI contentHandlerURI = new java.net.URI("nm:oid:wps.portal.root");
url.setURI( contentHandlerURI );
url.setMode("download");
java.io.StringWriter sw = new java.io.StringWriter();
url.writeDispose(sw);
String pocUrl = sw.toString();
int endIndex = pocUrl.indexOf("?");
contentHandlerRoot = pocUrl.substring(0, endIndex > 0 ? endIndex : pocUrl.length());

com.ibm.portal.resolver.PocURL url2 = urlFct.newURL(Boolean.TRUE);
java.net.URI contentModelURI = new java.net.URI("cm:oid:-----oid-----");
url2.setURI( contentModelURI );
url2.setMode("view");

and change it to look like this:

try {
com.ibm.portal.resolver.accessors.url.PocURLFactory urlFct = pocSvc.getURLFactory();
com.ibm.portal.resolver.PocURL url = urlFct.newURL(Boolean.FALSE);
java.net.URI contentHandlerURI = new java.net.URI("nm:oid:wps.portal.root");
url.setURI( contentHandlerURI );
url.setMode("download");
java.io.StringWriter sw = new java.io.StringWriter();
url.writeDispose(sw);
String pocUrl = sw.toString();
int endIndex = pocUrl.indexOf("?");
contentHandlerRoot = pocUrl.substring(0, endIndex > 0 ? endIndex : pocUrl.length());
endIndex = pocUrl.indexOf("/nm/oid");
contentHandlerRoot = pocUrl.substring(0, endIndex > 0 ? endIndex : pocUrl.length());

com.ibm.portal.resolver.PocURL url2 = urlFct.newURL(Boolean.TRUE);
java.net.URI contentModelURI = new java.net.URI("cm:oid:-----oid-----");
url2.setURI( contentModelURI );
url2.setMode("view");

If you are also running with a custom build of Dojo_Resources, you need to note the changes being made to com/ibm/portal/services/PortalRestServiceRequest.js and integrate those into your environment as well.
**All changes mentioned below are also integrated into the 7.0.0.2 fix pack base level**
Introduced in 7.0.0.1 CF009
APAR Abstract Details and Notes
PM17681 New cluster invalidation strategy for Portal Access Control (PAC) related caches To enable the new strategy, use the WebSphere Application Server administrative console and open
Resources ->
-> Resource Environment Providers
-> WPAccessControlDataManagementService
-> custom properties
to add/modify the following new setting:

setting: accessControlDataManagement
enableCacheEventPropagation
values: true|false (default = false)

Save, synchronize, and restart all nodes after any changes.
Introduced in 7.0.0.1 CF008
APAR Abstract Details and Notes
PM46824 URI home substitution does not work Home substitution does not work. If an authenticated portal user accesses a public portal URL, he will be forced to log in again.
Special instructions:
1. Start the portal application server.
2. Open WebSphere Application Server administrative console.
3. Select "Resources" -> "Resource Environment" -> "Resource Environment Providers".
4. Select resource environment provider, "WP ConfigService".
5. Click "custom properties".
6. Add entry "uri.home.sub_sessionuser" with value "true".
7. Save the changes.
8. Restart the portal application server.
Introduced in 7.0.0.1 CF006
APAR Abstract Details and Notes
PM43116 Error loading mapped users After installing CF006, you must take the following steps to leverage the fix.
1. Create a new resource environment provider. From the WAS Integrated Solutions Console (ISC):
  a.  Select scope node=(node name), server=WebSphere_Portal.
  b.  Click "New".
  c.  Set Name = WP PumaService.
  d.  Save to master configuration.

2.  Add a custom property to this service.
   a.  In ISC, go to Resource Environment Providers > WP PumaService.
   b.  Select "Custom properties".
   c.  Click "New".
   d.  Set Name = invalidate.users.not.in.user_desc and Value = true.
   e.  Save to master configuration.

3.  Restart WebSphere_Portal.

4.  Determine which entities must be cleaned up. Review SystemOut.log for:
[datetime] 0000003c RoleManager   W com.ibm.wps.ac.impl.RoleManager loadMappedPrincipals EJPSB0014E: Exception occurred while loading the mapped roles for a principal with ObjectID [ExtIDImpl 'Z8eAeL9D43R86NPD4JMO6IPDCMMG6IPC8JM47
KHDIJMO6K9DC6R473RC63H96I1', USER_GROUP, 55262772-627f-4234-9469-645f69c33b22, [Domain: rel]] .
[datetime] 00000039 RoleManager   W com.ibm.wps.ac.impl.RoleManager loadMappedPrincipals EJPSB0014E: Exception occurred while loading the mapped roles for a principal with ObjectID [ExtIDImpl 'Z9eAePPDGJG574RD4MMO6N1E4MMG
6MHO8MM8CM9PGJM8CMPDA6PKCG1DG3O8C53', USER, 978a9d7b-678b-46bd-b6e8-b67e2e0480be, [Domain: rel]] .

5.  Write XML to leverage PM43116. For the messages in (4) above, the XML would be:
<?xml version="1.0" encoding="UTF-8"?>
<request
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instancexsi:noNamespaceSchemaLocation="PortalConfig_7.0.0.xsd"       
    type="update" create-oids="true" cleanup-users="invalid">    
        <portal action="locate"> 
        <group action="delete" objectid="Z8eAeL9D43R86NPD4JMO6IPDCM
MG6IPC8JM47KHDIJMO6K9DC6R473RC63H96I1"/>
        <user action="delete" objectid="Z9eAePPDGJG574RD4MMO6N1
E4MMG6MHO8MM8CM9PGJM8CMPDA6PKCG1DG3O8C53"/>
</portal> 
</request>

6.  Use the XML from (5) as input to XMLAccess to remove references to these entities from the Portal database, for example:
xmlaccess.sh -in step5.xml -out results.xml -url http://portalserver.com:10040/wps/config

7. The EJPSB0014E messages should no longer appear in SystemOut.log.
PM41067 Provide device classification for Mobile WebKit Theme Provide a device classification component that evaluates the user agent string to determine the device class for a client's request. The device classification is made available as part of the CCPP profile. The component is disabled by default.

1. Run ConfigEngine enable-device-classification.

2. Run ConfigEngine action-create-resource -
    -environment-provider-wp
    .devicesupport.impl

3. Edit
WP_HOME/PortalServer/theme/wp.mashup.cc.theme/installedApps/wp.mashup.cc.theme.ear/PageBuilder2.war/themes/html/Default.jsp.
Add the following line at the end of the file:
Device Class: <c:out value="${wp.clientProfile['DeviceClass']} " />

4. Restart the server.

5. Verify that on the Home page at the bottom, there is a line reading "Device Class: desktop".

6. Repeat Step 5 using an iPhone and verify that the device class is smartphone.

7. Repeat Step 5 using an iPad and verify that the device class is tablet.
Introduced in 7.0.0.1 CF004:
APAR Abstract Details and Notes
PM34793, PM34763, and PM34772 PM34793 (SelfCare portlet update), PM34763 (Login Portlet update), and PM34772 (core function update) To allow the OpenID Authentication functionality with Portal to function properly, enablement code was integrated into this cumulative fix. If you want to use the new functionality in addition to the steps on the catalog, you must do the following manual actions:

Redeploy the Selfcare and Login Portlets after applying the CF. You can do this either with the Manage Web Modules Admin portlet or use xmlaccess. The portlet binaries are located in the following location:
<PortalServer>\ap\wp.ap.login\installableApps\login.war
<PortalServer>\ap\wp.ap.selfcare\installableApps\selfcare.war

NOTE: The feature "IBM Portal for OpenID Authentication" has recently been provided in the WebSphere Portal catalog.
PM37085 WebDAV Directory cannot be recreated The fix for this APAR activates a dependency cache by changing the default value for cacheinstance.com.ibm.wps.filestore.JCRItemsCache.supportsDependencies = true. If the customer has previously configured this manually in the respective resource environment provider "WP CacheManagerService", that value must be changed to match the above default.
Introduced in 7.0.0.1 CF003:
APAR Abstract Details and Notes
PM36546 A new DOJO layer provided for use with Portlet Factory or Connections portlets that optimizes DOJO Resource Loading. Portlet Factory and Connections portlets use a set of Dojo modules that may not be loaded already by the out-of-the-box theme in Portal. As a result, when these portlets are on a page where the theme does not load all the necessary Dojo modules in a layer file, the portlets will send individual requests for each module, resulting in degraded performance.

The code fix for APAR PM36546 provides a new layer file that can be optionally included in a theme to avoid the performance hit of using such portlets. This new layer file is located within the Dojo Resource application under ibm/portletLayer.js for Dojo 1.3.2 and v1.4.3/ibm/portletLayer.js for Dojo 1.4.3. It can be loaded in the head section of the page by addressing it via the context root of the Dojo Resources application in conjunction with the file path to the appropriate version of the layer file.
PM28337 Portlet move issue in enhanced theme When using the Portal enhanced theme, if a portlet is moved to the bottom of a column of portlets with the pulldown menu "Move down" function, it does not remain at the bottom when the page is saved and refreshed.

The following theme files were updated as part of the fix for this APAR and if you need the fix then these updated files need to be applied to your theme:
portal_dojo_143.profile.js and
portal_dojo.profile.js.
PM27451 Redirect for Home Substitution omitted With URI Home Substitution enabled, it is possible for the necessary redirect to get lost in the state processing that follows (and should ideally be skipped entirely).

The fix for this APAR reimplements the entire URI Home Substitution as servlet filter, thus eliminating the risk of the redirect to get as in the rest of the state processing.

In order to enable URI Home Substitution functionality, the following two steps will be necessary:

1. Using the WAS Admin Console, set the following configuration property in the resource environment provider, "WP ConfigService": uri.home.substitution=true

2. Add the following servlet filter and filter mapping to the web.xml of the wps.war file:
    <filter>
    <filter-name>Home Substitution Filter</filter-name>
    <filter-class>com.ibm.wps.engine.ServletSubstitutionFilter</filter-class>
    </filter>

    <filter-mapping>
    <filter-name>Home Substitution Filter</filter-name>
    <url-pattern>/portal/*</url-pattern>
    </filter-mapping>

The above filter mapping must be added as the first mapping to the list of existing filter and filter mappings in the web.xml file in WebSphere Portal.

Please see the sections on Exporting and Redeploying the portal EAR file in the information center.
Introduced in 7.0.0.1 CF002:
APAR Abstract Details and Notes
PM28557 User name missing in welcome mail The name of the user who is added to or removed from the Place is missing within the content body of the mail that a user gets when he was added to or removed from a Place.

NOTE: If using the Place functionality and leveraging the email notification feature:

Configure the "WP UserAttributeMappingService" in the WebSphere Application Server Resource Environment Provider. Add the following key to set the recipient name in the body of the mail that is sent when users are added to or removed from a place and restart the server: store.address_book.displayName=<your attribute, i.e. uid>
Note that only one attribute is allowed.
PM30212 Object doesn't support this property or method in CSA_DND.js CSADND_getPortletsContainer was changed to be able to return a null value such as for a help window.

NOTE: If you customize the PortalWeb2 theme and leverage the CSA_getPortletsContainer function, all references to CSA_getPortletsContainer from a custom theme or custom skin based on PortalWeb2 theme must be modified to handle a null as well.
PM30704 FORM BEANS USING SPF FOR JSR 168 PORTLETS MAY BE EMPTY Form beans in a JSR SPF (Struts Portlet Framework) portlet may be empty as a result of the RequestProcessor and the FormTag storing the bean into different scopes.

If using the Struts example files or having customized the PeopleFinder application:

This fix provides new Struts example war file(s) and the PeopleFinder ear file in the <PortalServerHome>/installableApps subdirectory:

- SPFStandardBlank.war
- SPFStandardClock.war
- SPFStandardCommandManager.war
- SPFStandardCustomConfigMode.war
- SPFStandardEditMode.war
- SPFStandardEditMode.war
- SPFStandardLookupAction.war
- SPFStandardMailReader.war
- SPFStandardMultipleServletContexts.war
- SPFStandardMultipleServletContexts.war
- SPFStandardTiles.war
- SPFStandardTransformation.war
- lwp.peoplefinder.jsr168.ear

You should update these .war files if you have them installed on your portal. If any customizations were made to the PeopleFinder portlet, merge those changes back in after the update.
PM31160 SSL for login page not working Portal not working when customers try to implement SSL on the login page alone.

NOTE: If requiring SSL for the login page, the login.war file should be updated via Administration Portlet Management Web Modules after the installation completes.
PM31775 Portlet deletion fails, co-requisite apar to PM30212. All references to CSADND_getPortletsContainer must check for a null value.

NOTE: If you customize the IBM Skin inside the theme, this fix contains the updates to the IBM Skin. The skin.js file located at PortalServer\theme\wp.theme.dojo
\installedApps\dojo.ear\dojo.war\com\ibm
\portal\aggregation and can be used to diff the changes for a skin based off IBM skin.
PM33583 Allow to choose the HTTPS protocol via xmlaccess client Prior to this fix, XMLAccess attempts to open an HTTPS connection using the SSL context, if the XMLAccess servlet URL specifies the https:// protocol. There is no option to select a different context, such as TLS, or SSLv3.

If you want to use SSL with XMLAccess and want to use a specific SSL protocol:

After this fix is installed, the XML Configuration Interface (xmlaccess) supports a new command line parameter,
which can be used to determine the protocol of the https connection to the xmlaccess servlet.

The syntax of the parameter is
-protocol <protocol>
, where <protocol> specifies the protocol, as for example SSL, SSLv1, SSLv3, TLS.

Note that only protocols can be selected that are supported and enabled by the application server. The parameter is only evaluated if the URL of the xmlaccess servlet selects a https: connection. Otherwise, the parameter is ignored.

Usage example:
xmlaccess.sh -url https://www.samplehost.com:10040/wps/config -parameter SSLv3 ...
This determines that the SSLv3 protocol is selected to connect to the xmlaccess servlet.
PM34046 Too long URLs lead to errors in certain browsers Some browsers have a limit for the length of URLs. By navigating to many pages and interacting with portlets on these pages, the navigational state of portal, i. e. the portal URL, can exceed this length limit. This even can apply if long render parameters are swapped to the session.

If facing issues with the URL length, with this fix, some new configuration possibilities are introduced. These can be set in the resource environment provider, "WP StateManagerService":

1. Go to the WebSphere Application Server administrative console --> Resources -> Resource Environment -> Resource Environment Providers.
2. Click WP StateManagerService --> Custom properties.
3. Add the properties as needed.
4. Save the changes to the master configuration.
5. Restart the portal server.

The following properties are available:

- "historymanager.enabled"
The HistoryManager allows a cleanup state for pages visited some time ago. Allowed values are True (default) or False.
Example: historymanager.enabled = true

- "hstorymanager.threshold"
The threshold means the number of pages whose portlets and shared state should be kept. Must be a positive integer.
Default is 10.
Example: historymanager.threshold = 10

- "historymanager.prp.removalstrategy"
Defines a strategy how the shared state is cleaned up.
Possible values are "no_removal", "wcm_id" or "explicit_bucket_assignment".
The meaning of these values is as follows:
- "no_removal": public render parameters will not be removed, i. e. only portlet specific state will be removed.
- "wcm_id": public render parameters will be removed if the expired page has an explicit shared state bucket assigned that starts with the string "ibm.wcm."
- explicit_bucket_assignment": public render parameters will be removed if the expired page has an explicit shared state bucket assigned regardless of a prefix. This is a more general strategy than "wcm_id".

Default value is "explicit_bucket_assignment"
Example: historymanager.prp.removalstrategy = explicit_bucket_assignment

Cross reference information
Segment Product Component Platform Version Edition
Enterprise Content Management IBM Web Content Manager General AIX, HP-UX, IBM i, Linux, Solaris, Windows, z/OS 7.0.0.2, 7.0.0.1 Java edition

Rate this page:

(0 users)Average rating

Add comments

Document information


More support for:

WebSphere Portal
Installation & Configuration

Software version:

7.0.0.1, 7.0.0.2

Operating system(s):

AIX, IBM i, Linux, Solaris, Windows, z/OS

Software edition:

Enable, Express, Extend, Server

Reference #:

7021250

Modified date:

2013-05-15

Translate my page

Machine Translation

Content navigation