I'm Migrating my application built on Portal(JSR-168) 5.1 and WAS 5.1 environment to Portal and WAS 6.1 environment on RA 7.5.
In some of the modules I'm facing issues when I try to pass data from
JSP page to Action class setting the value on session object.
In one of the Module:
The records are visible from database,however , the application throws a Null Pointer exception when any record on the page for view.
id of the record set in jsp page is not being retrieved in the Action class. Please find below the code extract on the jsp page and the corresponding action it is being forwarded to.
In JSP:
<html:link action="/ACViewCertificateAction.do" paramName="innerCertAddenList" paramId="CERT_ID"paramProperty="certificateId">
<bean:write name="innerCertAddenList" property="clientName" />
</html:link>
In Action:
certificateID = request.getParameter(ACCommonConstantsIF.AC_CERTIFICATE_ID);(PortletRequest request,public static final
String AC_CERTIFICATE_ID = "CERT_ID";)
In User Administration:
The List of records fetched into the Action class,set in the PortletSession is not being recognized in the forwarded JSP page:
In ACUserListAction:
fullList = getLDAPList();
System.out.println("*******fullList in User List Action*******"+fullList.size());//Size is 1490
request.getPortletSession().setAttribute(
ACCommonConstantsIF.LDAP_FULL_LIST, fullList);
servletRequest.getSession().setAttribute(
ACCommonConstantsIF.LDAP_FULL_LIST, fullList);
Collections.sort(fullList, comparator);
acUserForm.setAcOrganisationList(organisationList);
acUserForm.setAcLdapUsersList(fullList);
request.getPortletSession().setAttribute(
ACCommonConstantsIF.LDAP_USERS_LIST, fullList);
marshUsers = (ArrayList) ACCommonUtil.doPaging(request,
selectedPage, fullList,
ACCommonConstantsIF.VIEW_LIST_PAGEITERATOR);
request.getPortletSession().setAttribute(
ACCommonConstantsIF.LDAP_SELECTED_USERS_LIST, marshUsers);
servletRequest.getSession().setAttribute(
ACCommonConstantsIF.LDAP_SELECTED_USERS_LIST, marshUsers);
In ACUserViewByName.jsp:
<table class="portlet-menu">
<TBODY>
<logic:notEmpty name="LDAPSelectedUsersList" scope="session">
<tr class="wpsTableHead">
<td class="wpsTableSectionHead"><bean:message
key="User.LoginName.List" /></td>
<td class="wpsTableSectionHead"><bean:message
key="User.Name.List" /></td>
<td class="wpsTableSectionHead"><bean:message
key="User.Company.List" /></td>
<td class="wpsTableSectionHead"><bean:message
key="User.EmailAddress.List" /></td>
</tr>
<logic:iterate name="LDAPSelectedUsersList" id="userList1"
type=" com.marsh.ac.dvo.ACUserDVO" scope="session">
<%com.marsh.ac.dvo.ACUserDVO userDVO = null;
if (userList1 instanceof com.marsh.ac.dvo.ACUserDVO) {
userDVO = (com.marsh.ac.dvo.ACUserDVO) userList1;
%>
<tr class="wpsTableRow">
<TD class="wpsTableHeadLink"
<br /> >
<bean:write name="userList1" property="loginName" />
</td>
<td class="portlet-menu"><bean:write name="userList1"
property="firstName" /> <bean:write name="userList1"
property="lastName" /></td>
<td class="portlet-menu"><logic:notEmpty name="userList1"
property="company">
<bean:write name="userList1" property="company" />
</logic:notEmpty>
<logic:empty name="userList1"
property="company"> </logic:empty></td>
<td class="portlet-menu"><bean:write name="userList1"
property="emailAddress" /></td>
</tr>
<%
}
%>
</logic:iterate>
</logic:notEmpty>
<logic:empty name="LDAPSelectedUsersList" scope="session">
<tr>
<td class="wpsPortletHead"><bean:message key="User.RecordsNotFound" /></td>
</tr>
</logic:empty>
(Currently control in returning to the JSP without any list of records).
If anybody has faced such issue in MIgration can you please help.