Le pagine della rubrica del negozio di esempio consentono agli utenti registrati di aggiungere gli indirizzi di spedizione e di fatturazione ad una rubrica.
Un cliente registrato si collega, quindi fa clic su Modifica rubrica dalla pagina Conto (myaccount.jsp). La rubrica visualizza la pagina (addressbookform.jsp). In tale pagina è possibile aggiungere un nuovo indirizzo oppure modificarne uno esistente. Per ulteriori informazioni, consultare il file Caso di utilizzo di aggiunta di un nuovo indirizzo e il Caso di utilizzo di modifica di un indirizzo.
La rubrica del negozio di esempio utilizza i seguenti file JSP:
Comandi
account.jsp utilizza i seguenti comandi:
addressbookform.jsp utilizza i seguenti comandi:
address.jsp utilizza i seguenti comandi:
Bean
addressbook.jsp utilizza i seguenti bean:
address.jsp utilizza i seguenti bean:
Dettagli sull'implementazione
Nota: Per informazioni sulle tecniche di implementazione comuni a tutte le pagine del negozio di esempio, incluse le informazioni multi-culturali, consultare Pagine del negozio di esempio: tecniche di implementazioni comuni.
Quando un cliente fa clic su Modifica rubrica dalla pagina Conto, viene richiamato il comando AddressBookForm. AddressBookForm quindi carica la pagina Rubrica(addressbookform.jsp). Se un cliente fa clic su Aggiungi un nuovo indirizzo, viene richiamato il comando AddressForm. AddressForm viene registrato conAddressForm.jsp nel database e controlla il parametro page. Se page è impostato su newshipaddress viene caricata la pagina Verifica 1: Aggiungi indirizzo di fatturazione (billingaddress.jsp); altrimenti viene caricata la pagina Aggiungi la pagina indirizzo (address.jsp).
Nota: AddressForm caricherà la pagina billingaddress.jsp se è impostato su newshipaddress a causa dell'errore nella gestione dell'aggiunta dell'indirizzo di fatturazione. Se la pagina page è uguale a newshipaddress, significa che sono stati creati nuovi indirizzi per i clienti dalla pagina indirizzo di fatturazione, provando ad andare alla pagina indirizzo di spedizione, ma si verifica un errore. Risulta che i clienti vengono riportati alla pagina indirizzo di fatturazione.
Dopo che il cliente ha compilato i campi nella pagina Aggiungi indirizzo (address.jsp), il sistema verifica l'esistenza di addressId. Se addressId esiste, la rubrica viene aggiornata. Se ciò non si verifica, viene creato un nuovo indirizzo. Se viene fornito l'addressId, il file address.jsp viene caricato come una pagina Aggiorna indirizzo. Altrimenti, verrà caricato come pagina di indirizzo aggiunta. Nella pagina indirizzo di aggiornamento,i campi di immissione vengono precompilati con i valori immessi precedentemente come riportato di seguito:
if (addressId != null)
bUpdateAddress = true;
oppure
bUpdateAddress = false;
Quando un cliente completa l'indirizzo e fa clic su Inoltra sia nella pagina Aggiungi indirizzo (address.jsp) che nella pagina Aggiorna indirizzo (address.jsp), viene richiamato il comando AddressAdd. La pagina rubrica (addressbookform.jsp) visualizza gli indirizzi esistenti .
I clienti possono fare clic su Modifica Rubrica dalla pagina Seleziona indirizzi di spedizione per andare alla Rubrica. Se i clienti vanno alla pagina Rubrica dalla pagina Seleziona indirizzi di spedizione, la pagina Rubrica visualizza un collegamento Ritorna alla verifica . Questi clienti non consentono di rimuovere un indirizzo dalla pagina Rubrica. Risulta che viene aggiunto un nuovo codice per verificare se i clienti provengono dalla pagina Seleziona indirizzi di spedizione come riportato di seguito:
String mode = jhelper.getParameter("mode"); if (mode.equals("AddressBookReturnToCheckout"))
Gestione errori
Se il cliente non completa i campi richiesti nella pagina Aggiungi indirizzo (address.jsp) o nella pagina Aggiorna indirizzo (address.jsp), il sistema richiede al cliente di inserire di nuovo i campi. Il seguente codice gestisce l'errore:
TypedProperty hshErrorProperties = bnError.getExceptionData();
if (hshErrorProperties != null)
{
//Nell'indirizzo presentato è presente un errore.
strErrorCode = hshErrorProperties.getString(ECConstants.EC_ERROR_CODE, "");
if (strErrorCode.equals(ECUserConstants.EC_ADDR_ERR_BAD_NICKNAME))
strErrorMessage = infashiontext.getString("ERROR_MESSAGE1");
...
}
![]() |