Páginas de conexión de la tienda de ejemplo

Las páginas de conexión de la tienda de ejemplo permiten que los clientes registrados se conecten. 

Cuando  los clientes registrados pulsan el enlace Regístrese ahora y reciba avisos anticipados de nuestras promociones en la barra lateral, se visualiza la página Regístrese o conéctese (account.jsp). Después de que los clientes proporcionan sus direcciones de correo electrónico y contraseñas y pulsan Conexión, se visualiza la página Mi cuenta (myaccount.jsp). Para obtener más información, consulte el Ejemplo de uso de Conexión.

El procedimiento de conexión de la tienda de ejemplo utiliza los siguientes archivos JSP:


Mandatos

account.jsp utiliza los mandatos siguientes:

myaccount.jsp utiliza los mandatos siguientes:

forgetpassword.jsp utiliza los mandatos siguientes:

ChangePasswordForm.jsp utiliza los mandatos siguientes:

forgetpassword_err.jsp utiliza los mandatos siguientes:

password.jsp utiliza los mandatos siguientes:

Beans

forgetpassword.jsp utiliza el bean siguiente:

forgetpassword_err.jsp utiliza los beans siguientes:

Detalles sobre implementación

Nota: Para obtener información sobre las técnicas de implementación comunes a todas las páginas de la tienda de ejemplo, incluida la información multicultural, consulte Páginas de la tienda de ejemplo: técnicas de implementación comunes.

Después de que los clientes se han registrado en la página de registro, o han escrito sus direcciones de correo electrónico y contraseñas en la página de conexión (account.jsp), los valores se convierten a minúsculas utilizando el código siguiente:

function prepareSubmit(form)
{
form.<%=ECUserConstants.EC_UREG_LOGONID%>.value =
form.<%= ECUserConstants.EC_UREG_LOGONID%>.value.toLowerCase()
form.submit()
}

account.jsp también establece los campos que espera el mandato Logon, por ejemplo:

<INPUT TYPE="hidden" NAME="URL" VALUE="LogonForm?page=account">

Cuando los clientes pulsan Conexión desde la página Regístrese o conéctese, se llama al mandato Logon. Logon está registrado en la base de datos con LoginForm.jsp. LoginForm.jsp utiliza el parámetro page para determinar qué página (myaccount.jsp o account.jsp) ha de cargar. 

String state = request.getParameter("page");
.
.
.
if (state == null)
{
incfile = "/" + storeDir + "/myaccount.jsp";

}
else if (state.equals("account"))
{
incfile = "/" + storeDir + "/account.jsp";

}

Si se ha especificado una combinación de dirección de correo electrónico y contraseña correcta, LoginForm.jsp carga la página Mi Cuenta (myaccount.jsp). Si se ha especificado una combinación de dirección de correo electrónico y contraseña incorrecta, LoginForm.jsp vuelve a cargar la página Regístrese o conéctese (account.jsp).

Si los clientes olvidan la contraseña y pulsan ¿Ha olvidado su contraseña?, se llama al mandato Logoff, con el parámetro state=forgetpassword. El mandato Logoff está registrado con Logoff.jsp en la base de datos. Logoff.jsp comprueba el estado del parámetro, como se describe a continuación:

if (state == null)
{
String [] arrstate = (String []) request.getAttribute("state");
if (arrstate != null)
state = arrstate[0];
}

if (state == null || state.length() == 0)
{
incfile = "/" + storeDir + "/UserRegistrationForm.jsp";

}
else if (state.equals("forgetpassword"))
{
incfile = "/" + storeDir + "/forgetpassword.jsp";

}

Se carga la página Contraseña olvidada (forgetpassword.jsp) si  el estado es igual a forgetpassword. Cuando los clientes cumplimentan los campos de la página y pulsan Envíenme mi contraseña, se llama al mandato ResetPassword. La contraseña antigua se establece como caducada en la base de datos y la contraseña nueva se envía por correo electrónico a los clientes. Cuando los clientes se conectan utilizando la contraseña nueva, se les obliga a cambiar la contraseña y se les envía a la página Cambiar contraseña (ChangePasswordForm.jsp). 

Nota: Si las contraseñas de los clientes están establecidas para que que caduquen, se les dirigirá automáticamente a la página Cambiar contraseña la próxima vez que se conecten.

Manejo de errores
Si los clientes proporcionan una dirección de correo electrónico o una contraseña incorrecta, o no cumplimentan los campos, se visualiza un mensaje de error y el mandato Logon vuelve a cargar la página Regístrese o conéctese sin establecer el parámetro page. Si se ha entrado una contraseña incorrecta, los clientes tienen que esperar unos segundos antes de conectarse o se visualizará el error siguiente:

Espere unos segundos antes de intentar conectarse otra vez.

Conceptos relacionados

Tareas relacionadas

Referencia relacionada

IBM copyright