WebSphere

 

Portal Express, Version 6.0
Operating systems: i5/OS, Linux, Windows

 

Registration, Edit My Profile and Login

 

+

Search Tips   |   Advanced Search

 

There are Registration and Edit My Profile processes for subscriber management. Registration allows users to register for access and information entered during Registration can be updated in Edit My Profile.

This version of IBM® WebSphere® Portal Express allows you the option of using portlets or screens (JSPs) to view Registration, Login, and Edit My Profile. The default is portlets. These portlets reside on special pages where the anonymous user has access rights based on the User role.

The unique name wps.Login is assigned to the page holding the login portlet, and the unique name wps.Selfcare is assigned to the page holding the Registration and Edit my profile portlets.

Login and Selfcare work in unison, so both need to be configured either as a portlet or as a screen.

Using portlets will allow for themes and skins that can be turned on or off, whereas using screens will allow customized JSPs. The portlet option allows for different themes and skins for each virtual portal.

The screen option, however, will be the same for all virtual portals. For more information on screens, themes, and skins, see Layout of the portal page.

The examples in this topic use the 'portal-xxx:' prefix to designate JSP tags from the tag library in portal.tld.

Your custom JSPs might use a different tag prefix.

This topic is divided into the following subtopics:

 

Registration

During Registration, the user enters mandatory data, such as the user ID and first and last names. The user has the option to select the preferred language from a list of available languages. WebSphere Portal Express uses this language in all interactions and makes this information available to all portlets so that they can adapt to the user preference. If a language is not selected, WebSphere Portal Express determines which language to use from the users' browser settings. In the screen version, the user also has the option to select an interest, which is used by the Portal Personalization sample portlet to customize the displayed content.

The Registration process uses commands to allow the user to register for access.

The following JSPs are used when WebSphere Portal Express has been configured to use screens for Registration:

mainMenu.jsp Enable modification of registration through screens.
UserProfileForm.jsp Enter or reenter user information such as personal data.
UserProfileConf.jsp Review user information such as personal data. Click Continue to register the user and save the user data in LDAP and in the database. Click Cancel to return to the personal information form.
Congrats.jsp Confirms that the user is registered.
RegistrationError.jsp Displayed if an error occurs.

Using portlets for registration

The same portlet is used for Registration and for Edit My Profile; this portlet option is the default option. Click Sign up in the theme to access the Registration/Edit My Profile portlet.

Since the Registration/Edit My Profile portlets exist for each virtual portal, it is possible to have different customized portlets for each virtual portal.

Using screens for Registration

The Registration screen is located under:

In order to enable screens for registration it is necessary to set authentication.screen.login = true in Authentication Service

This property determines whether screens or portlets are being used and also determines some error processing during login.

When using screens instead of the Selfcare or Login portlet, add the puma.controllerHTML = com.ibm.wps.puma.PumaControllerHTML property to the following file:

Update the property file as described in Setting configuration properties.

In each of the themes directory and subdirectories, there is a mainMenu.jsp file.

This section describes how to find this file in every theme you will be using, including the default, and how to modify each file to enable login through a screen.

The default theme, IBM, is available in:

...and other themes (subdirectories), each having a mainMenu.jsp file, are in that same directory path excepting that the IBM subdirectory is instead the particular name of the theme.

The following sample code for the enroll button section of mainMenu.jsp represents using the default link to the Registration Portlet because the second code section, intended for enabling registration through a screen, is commented out. To enable registration through a screen reverse the commenting in this code, and do this in the default and every other mainMenu.jsp theme you will be using:

<%-- Enrollment aka Sign Up --%>

<%-- Comment out to enable sign up using screens --%>

<portal-logic:if loggedIn="no" portletSolo="no">

 <portal-internal:adminlinkinfo name="SELFCARE">

  <portal-navigation:urlGeneration contentNode="<%=wpsContentNode%>" 
                                   compositionNode='<%= wpsCompositionNode %>' 
                                   portletWindowState="Normal" 
                                   themeTemplate="">

  <portal-navigation:urlParam type="render" 
                              name="ao" 
                              value="thm"/>

  <portal-navigation:urlParam type="render" 
                              name="OCN" 
                              value="<%= wpsContentNodeID %>" />

    <c:set var="menuTitle">
        <portal-fmt:text key="link.enrollment" 
                         bundle="nls.engine" />
    </c:set>

    contents[i]="asynchDoFormSubmit('<% wpsURL.write(escapeXmlWriter); %>');";

    i = i+1;

    contents[i]='<c-rt:out value="${menuTitle}" escapeXml="true" />';

    i = i+1;

    contents[i]="";

    i = i+1;

  </portal-navigation:urlGeneration>

 </portal-internal:adminlinkinfo>

</portal-logic:if>

<%--Uncomment to enable sign up using screens  
<portal-logic:if loggedIn="no" portletSolo="no"> 
 <c:set var="menuTitle"><portal-fmt:text key="link.enrollment" bundle="nls.engine" /></c:set>
  contents[i]="asynchDoFormSubmit('<portal:url command="PrepareEnrollment" 
  home="public" reqid="no"/>');";
  i = i+1;
  contents[i]='<c-rt:out value="${menuTitle}" escapeXml="true" />';
  i = i+1;
  contents[i]="";
  i = i+1;
</portal-logic:if>

 

--%>

The previous example uses the portal-xxx: prefix to designate JSP tags from the tag library in portal.tld.

Your custom JSPs might use a different tag prefix.

 

Every operating system: Touch the Default.jsp file after editing any JSP files and before any restart. This updates the timestamp on the file to the current time and will signal a recompile of Default.jsp to incorporate the edit changes from other JSP files. Type: touch Default.jsp.

An alternative is to edit (open and save) Default.jsp, which has the same effect as the touch command.

After updating mainMenu.jsp, restart WebSphere Portal Express unless reloading is enabled.

Creating new attributes for the Registration JSPs

The Registration JSPs can be expanded for your requirements by adding new attributes to them, such as attributes for creating new information input fields. When adding an attribute to the JSPs, use a name such as wps.Name, where Name represents the name you specify. If the attribute Name already exists in the inetOrgPerson user schema in the LDAP directory, as mapped by the attributeMap.xml discussed above, the value that the user enters will be written to the LDAP directory.

Otherwise, the attribute name and value will be stored in the WebSphere Portal Express database, where the following limitations apply: the name cannot be longer than 64 characters and the value cannot be longer than 255 characters.

 

Login

This version of WebSphere Portal Express allows you the option of using screens or portlets to view Login. Using a screen will allow you to customize the JSP that is used for the screen, whereas a portlet will have themes and skins that can be turned on or off.

Using portlets for Login

The portlet option is the default option for this version of WebSphere Portal Express. Access the Login portlet by clicking Login in the theme. The Login portlet can also be placed on any page.

Since the Login portlets exist for each virtual portal, it is possible to have different customized portlets for each virtual portal.

Using screens for Login

The Login screen is located under:

In order to enable screens for login it is necessary to set authentication.screen.login = true in Authentication Service; as described in Setting configuration properties. Also, remove the Login portlet from the Welcome page.

When using screens instead of the Selfcare or Login portlet, add the property...

puma.controllerHTML = com.ibm.wps.puma.PumaControllerHTML

...to the following file...

Update the property file as described in Setting configuration properties.

In each of the themes directory and subdirectories, there is a banner_toolbar.jspf and a mainMenu.jsp file.

This section describes how to find both these files in every theme you will be using, including the default, and how to modify each of the files to enable login through a screen.

The default theme, IBM, is available in:

and other themes (subdirectories), each having a banner_toolbar.jspf and mainMenu.jsp file, are in that same directory path excepting that the IBM subdirectory is instead the particular name of the theme.

To enable login through a screen, edit each appropriate banner_toolbar.jspf and mainMenu.jsp file and find the login button section. The following sample code for the login button section of banner_toolbar.jspf represents using the default link to the Login Portlet because the second section, intended for enabling the Login Screen, is commented out. The sample mainMenu.jsp code shipped with WebSphere Portal Express is much the same. To enable login through a screen reverse the commenting in this code, and do this in the default and every other banner_toolbar.jspf and mainMenu.jsp theme you will be using:

(banner_toolbar.jspf)    

 

<%-- comment this to enable screen login --%> <portal-logic:if loggedIn="no"> <portal-navigation:urlGeneration contentNode="wps.Login"> <a tabIndex="7" class="toolbarLink" href='<% wpsURL.write(escapeXmlWriter); %>'> <portal-fmt:text key="link.login" bundle="nls.engine"/></a> </portal-navigation:urlGeneration> </portal-logic:if>

 

<%-- Uncomment this to enable screen login <portal-logic:if loggedIn="no" notScreen="Login"> <a class="toolbarLink" href='<portal-navigation:url home="public" screen="Login" ssl="false"/>'><portal-fmt:text key="link.login" bundle="nls.engine" /> </a> </portal-logic:if>

 

--%>

Notes:

 

Every operating system: Touch the Default.jsp file after editing any JSP files and before any restart. This updates the timestamp on the file to the current time and will signal a recompile of Default.jsp to incorporate the edit changes from other JSP files. Type: touch Default.jsp.

An alternative is to edit (open and save) Default.jsp, which has the same effect as the touch command.

After updating banner_toolbar.jspf and mainMenu.jsp, restart WebSphere Portal Express unless reloading is enabled.

 

Edit My Profile

The Edit My Profile process is used to change mandatory and optional information entered by the user during Registration, with the exception of the user ID.

This function is provided in two ways; either through a portlet or through screens. By default a portlet is used. The portlet version receives the information about mandatory attributes from the used Member Manager configuration. Optional attributes can be added using the configuration mode of the portlet. To enable the screens functionality, please use the instructions under section below entitled Using screens for Edit My Profile.

Theme JSPs and configuration files are managed as part of the main enterprise application and thus are part of the EAR file.

The EAR file must be updated and redeployed when changing JSPs or configuration related files. Failure to do this could cause the modifications to be deleted when the EAR file is subsequently updated. Basic instructions on updating and redeploying the EAR file with modified files are in Deploying themes and skins in a production environment.

The following JSPs are used when WebSphere Portal Express has been configured to use screens for Edit My Profile:

Creating new attributes for the Edit My Profile JSPs

The Edit My Profile JSPs can be expanded for your requirements by adding new attributes to them, such as attributes for creating new information input fields. When adding an attribute to the JSPs, use a name such as wps.Name, where Name represents the name you specify. If the attribute Name already exists in the inetOrgPerson user schema in the LDAP directory, as mapped by the attributeMap.xml discussed above, the value the user enters will be written to the LDAP directory. Otherwise, the attribute name and value will be stored in the WebSphere Portal Express database, where the following limitations apply: the name cannot be longer than 64 characters, and the value cannot be longer than 255 characters.

Creating new attributes for the Edit My Profile portlets

Edit My Profile allows users to change information entered at registration. Administrators can determine what information appears in the profile by editing the list found in the configure link. LDAP or member management fields determine what fields appear as potential fields for the user profile. Some fields are disabled because they are required fields in PUMA (user management), and cannot be removed.

You must define the attribute in the wmmAttributes.xml file and the repository specific file:

If you want to add the attribute before enabling security, choose the Template for the appropriate LDAP server (wmmLDAPAttributes_IDS.xml for IBM Tivoli® Directory Server). If you want to add it after enabling security, use the wmmLDAPServerAttributes.xml file.

Using portlets for Edit My Profile

The portlet option is the default option. Access the Edit My Profile portlet by clicking Edit My Profile or Sign up in the theme.

Since the Edit My Profile portlets exist for each virtual portal, it is possible to have different customized portlets for each virtual portal.

Using screens for Edit My Profile

The Edit My Profile screen is located in the expanded ear file under:

When using screens instead of the Selfcare or Login portlet, add the puma.controllerHTML = com.ibm.wps.puma.PumaControllerHTML property to the following file:

Update the property file as described in Setting configuration properties.

In each of the themes directory and subdirectories, there is a mainMenu.jsp file.

This section describes how to find this file in every theme you will be using, including the default, and how to modify each file to enable Edit My Profile through a screen.

The default theme, IBM, is available in:

...and other themes (subdirectories), each having a mainMenu.jsp file, are in that same directory path excepting that the IBM subdirectory is instead the particular name of the theme.

The following sample code for the Selfcare button section of mainMenu.jsp represents using the default link to the Edit my profile Portlet because the second section, intended for enabling Edit My Profile through a screen, is commented out. To enable Edit My Profile through a screen reverse the commenting in this code, and do this in the default and every other mainMenu.jsp theme you will be using:

<%-- Comment out to enable edit profile using screens --%> 
<c-rt:if test = "${themePolicy.renderSelfCare}"> 
 <portal-logic:if loggedIn="yes" portletSolo="no"> 
  <portal-internal:adminlinkinfo name="SELFCARE"> 
  <portal-navigation:urlGeneration contentNode="<%=wpsContentNode%>" 
    compositionNode='<%= wpsCompositionNode %>' portletWindowState="Normal" 
    themeTemplate=""> 
  <portal-navigation:urlParam type="render" name="ao" value="thm"/> 
  <portal-navigation:urlParam type="render" name="OCN" value="<%= wpsContentNodeID %>" /> 
    <c:set var="menuTitle"><portal-fmt:text key="link.selfcare" bundle="nls.engine" /> 
    </c:set> 
      contents[i]="asynchDoFormSubmit('<% wpsURL.write(escapeXmlWriter); %>');"; 
      i = i+1; 
      contents[i]='<c-rt:out value="${menuTitle}" escapeXml="true" />'; 
      i = i+1;
      contents[i]=""; 
      i = i+1; 
  </portal-navigation:urlGeneration> 
  </portal-internal:adminlinkinfo> 
 </portal-logic:if> 
</c-rt:if> //end renderSelfCare 

 

<%-- Uncomment to enable edit profile using screens> <c-rt:if test = "${themePolicy.renderSelfCare}"> <portal-logic:if loggedIn="yes" portletSolo="no" notScreen="SelfcareUserForm,SelfcareUserConf"> <c:set var="menuTitle"><portal-fmt:text key="link.selfcare" bundle="nls.engine" /> </c:set> contents[i]="asynchDoFormSubmit('<portal-navigation:url command="PrepareSelfcare" reqid="no" />');"; i = i+1; contents[i]='<c-rt:out value="${menuTitle}" escapeXml="true" />'; i = i+1; contents[i]=""; i = i+1; </portal-logic:if> </c-rt:if> //end renderSelfCare

 

--%>

The previous example uses the portal-xxx: prefix to designate JSP tags from the tag library in portal.tld.

Your custom JSPs might use a different tag prefix.

 

Every operating system: Touch the Default.jsp file after editing any JSP files and before any restart. This updates the timestamp on the file to the current time and will signal a recompile of Default.jsp to incorporate the edit changes from other JSP files. Type: touch Default.jsp.

An alternative is to edit (open and save) Default.jsp, which has the same effect as the touch command.

After updating mainMenu.jsp, restart WebSphere Portal Express unless reloading is enabled.

 

Related information

 

Parent topic:

Users and groups