Beispielgeschäft - Seite 'Registrierung'

Mit der Seite Registrierung des Beispielgeschäfts können Kunden sich im Beispielgeschäft registrieren. Bei der Registrierung muss ein Kunde seinen Vor- und Nachnamen sowie eine E-Mail-Adresse eingeben und anschließend ein Kennwort erstellen.

Wenn ein Kunde Jetzt registrieren und einkaufen! anklickt, wird die Registrierungs- oder Anmeldeseite angezeigt. Der Kunde klickt anschließend Registrieren an, und die Registrierungsseite (register.jsp) wird aufgerufen.

Wenn ein Kunde seine Registrierungsinformationen aktualisieren möchte, klickt er Informationen zur Person ändern auf der Seite Mein Konto an. Die Seite Informationen zur Person ändern (edit_registration.jsp) wird angezeigt.

Befehle

register.jsp verwendet die folgenden Befehle:

Beans

register.jsp verwendet die folgenden Beans:

edit_registration.jsp verwendet die folgenden Beans:

Implementierungsdetails

Hinweis: Informationen zu Implementierungstechniken, die allen Beispielgeschäftsseiten gemein sind, finden Sie in Beispielgeschäftsseiten: Allgemeine Implementierungstechniken.

Registrierung
Der Link Registrieren von der Seite Registrieren oder Anmelden (account.jsp) zeigt das Registrierungsformular an. WebSphere Commerce verwendet den Befehl "UserRegistrationAdd" zum Erstellen einer neuen Registrierung. Wenn der Kunde angemeldet ist, arbeitet "UserRegistrationAdd" wie "UserRegistrationUpdate". Das bedeutet: ein angemeldeter Kunde kann sich nicht erneut anmelden und ein neues Konto anlegen. Da jedoch das Beispielgeschäft dem Benutzer die Möglichkeit gibt, sich mehrmals anzumelden und mehrere Konten zu erstellen, muss ein angemeldeter Kunde vor einer erneuten Registrierung zunächst abgemeldet sein. Um dies zu erreichen, ist der Link Registieren für angemeldete Kunden automatisch auf den Befehl "Logoff" eingestellt und für Gastkunden auf die Sicht "UserRegistrationForm". Der Befehl "Logoff" ruft automatisch die Task "LogoffView" auf. Die Task "LogoffView" ist mit Logoff.jsp in der Datenbank registriert. Logoff.jsp prüft den URL-Parameter state. Ist der Parameter auf "forgetpassword" gesetzt, wird forgetpassword.jsp geladen. Andernfalls wird UserRegistrationForm.jsp geladen. Die Sicht "UserRegistrationForm" ist der Datei UserRegistrationForm.jsp in der Tabelle VIEWREG zugeordnet. UserRegistrationForm.jsp überprüft den "neuen" URL-Parameter. Ist der Parameter auf "Y" eingestellt, wird das neue Registrierungsformular angezeigt, indem register.jsp einbezogen wird. Andernfalls wird das Formular zur Aktualisierung der Registrierung angezeigt, indem edit_registration.jsp einbezogen wird.

register.jsp
enthält ein neues Registrierungsformular. Das neue Registrierungsformular wird an den Befehl "UserRegistrationAdd" übergeben. Standardmäßig erwartet der Befehl "UserRegistrationAdd" mehrere Musseingabefelder, die für das Beispielgeschäft nicht erforderlich sind. Diese Felder sind daher als als verdeckte HTML-Felder konfiguriert, und die Werte sind wie im folgenden Beispiel auf "-" gesetzt.

<INPUT TYPE="hidden" NAME="personTitle" Value="-">
 
Hinweis: Im Geschäft NewFashion wurde das Name/Wert-Paar nicht übergeben. Wenn das Name/Wert-Paar nicht übergeben wird, überprüft der Befehl "UserRegistrationAdd" den URL-Parameter nicht.

Wenn sich Kunden registrieren und ihr Profil ausfüllen, kann dieses Profil mit einem der Profile in WebSphere Commerce Accelerator übereinstimmen. Ist dem Profil in WebSphere Commerce Accelerator ein Rabatt zugeordnet, erhalten die Kunden diesen Rabatt.

E-Mail-Adresse als Anmeldung
Bei den Beispielgeschäften müssen Kunden ihre E-Mail-Adresse als Anmelde-ID eingeben. WebSphere Commerce hingegen benötigt als Anmelde-ID die Benutzer-ID. Die Beispielgeschäfte fordern daher den Benutzer auf, seine E-Mail-Adresse im Registrierungsformular einzugeben. Anschließend werden vor dem Abschicken des Formulars die Felder E-Mail und Benutzer-ID mit dem folgenden Java-Script auf den Wert der E-Mail-Adresse gesetzt:
function prepareSubmit(form) 

form.<%=ECUserConstants.EC_ADDR_EMAIL1%>.value = 
form.<%= ECUserConstants.EC_UREG_LOGONID%>.value.toLowerCase() form.<%=ECUserConstants.EC_UREG_LOGONID%>.value = 
form.<%= ECUserConstants.EC_UREG_LOGONID%>.value.toLowerCase()
form.submit() 
}
Informationen zur Person ändern 
Durch Anklicken der Option Informationen zur Person ändern wird der Befehl UserRegistrationForm aufgerufen, der in der Datenbank UserRegistrationForm.jsp zugeordnet ist. Wenn der Parameter new nicht Null ist, wird register.jsp geladen. Andernfalls wird edit_registration.jsp geladen.
Der Befehl "UserRegistrationUpdate" wird in edit_registration.jsp zum Aktualisieren der Registrierungsinformationen des Benutzers verwendet. Wenn ein Kunde das Feld Kennwort oder das Feld Kennwort bestätigen nicht ausfüllt, stellt das System das Registrierungskennwort bereit und verwendet hierzu den folgenden Code:
function prepareSubmit(form)
{
form.<%= ECUserConstants.EC_ADDR_EMAIL1 %>.value=form.<%=ECUserConstants.EC_UREG_LOGONID%>.value
form.<%=ECUserConstants.EC_UREG_LOGONID%>.value =
form.<%= ECUserConstants.EC_UREG_LOGONID%>.value.toLowerCase()
if (form.<%=ECUserConstants.EC_UREG_LOGONPASSWORD%>.value.length == 0)
{
form.<%=ECUserConstants.EC_UREG_LOGONPASSWORD%>.value = '<%=strPassword%>'
}
if (form.<%=ECUserConstants.EC_UREG_LOGONPASSWORDVERIFY%>.value.length == 0)
{
form.<%=ECUserConstants.EC_UREG_LOGONPASSWORDVERIFY%>.value = '<%=strPassword%>'
}
form.submit()
}

Hat ein Kunde zuvor Informationen zu Geschlecht und Alter eingegeben, sind die Felder Geschlecht und Alter bereits ausgefüllt. Die Bean "DemographicsAccessBean" extrahiert die Informationen zu Geschlecht und Alter aus der Datenbank.

Fehlerbehandlung 

Bei einem Fehler ruft der Befehl "UserRegistrationAdd" die Fehlerseite "UserRegistrationErrorView" auf, die in der Datenbank mit UserRegistrationForm.jsp registriert ist. Dieselbe Fehlersicht wird allerdings auch von "UserRegistrationUpdate" aufgerufen. Zur Unterscheidung zwischen einem neuen Registrierungsformular und einem Änderungsformular enthält das neue Registrierungsformular einen verdeckten Parameter mit dem Namen new. Wenn dieser Parameter vorhanden ist, enthält UserRegistrationForm.jsp register.jsp. Andernfalls wird edit_registration.jsp geladen.

register.jsp wird bei normalen und bei Fehlerbedingungen verwendet. "ErrorDataBean" und die Fehlerprüfung werden verwendet, um zu ermitteln, unter welchen Bedingungen register.jsp ausgeführt wird. Wenn ein Fehler vorliegt, zeigt register.jsp die Fehlernachricht an.

Hinweis: Kennwortfehler werden durch die Befehle "UserRegistrationAdd" und "UserRegistrationUpdate" abgefangen; diese Befehle rufen jedoch beim Auftreten eines Kennwortfehlers "AuthenticationPolicyErrorView" auf.

Verwandte Konzepte

Verwandte Aufgaben

Verwandte Referenzen

IBM Copyright