When the user is redirected from the LoginPortlet to a custom ChangePasswordPortlet due to an expired password, the actionURL points to the original page rather than the currently rendered page. This prevents the processAction from being executed and does not allow the user's password change to be executed.
Steps to reproduce:
1- Create a new user with an expiration in the near future.
2- Validate that the user can log in prior to the expiration. Log out and wait until password has expired.
3- Login to new account. User is redirected to the Update My Account page displaying the Change Password portlet.
4- View source to examine actionURL.