2012-05-29 6 views
5

Sono stato creato un sito Web in JSF 2 (primefaces 3.3) e ora voglio creare una versione mobile. Ho diverse visualizzazioni per desktop/mobile. Ho già creato un viewhandler personalizzato per rilevare i browser mobili. Si vede che funziona bene. Ma ciò che non capisco è come reindirizzare l'utente alle pagine mobili. Ho cercato molto e nessuno dice dove si verifica questo passaggio. In quale passaggio dovrei farlo? Reindirizzare l'utente e come?Primefaces - Come reindirizzare alla versione mobile?

risposta

3

In genere non si desidera reindirizzare a un sito per dispositivi mobili, ma utilizzare le query multimediali in css per determinare qual è la dimensione del browser e utilizzare css diversi per tale scopo. Ecco un rapido esempio

http://css-tricks.com/resolution-specific-stylesheets/

+1

+1 per la risposta generale. Ma primefaces ha un api/gui mobile che ha disegni molto diversi rispetto alla versione desktop. – djmj

8

fare il lavoro di rilevamento del browser in un Filter mappato sul FacesServlet anziché in un ViewHandler.

E 'quindi facile come

if (needsRedirectToMobileURL) { 
    response.sendRedirect(mobileURL); 
} 
else { 
    chain.doFilter(request, response); 
} 

Un ViewHandler non è intented di manipolare la richiesta/risposta. È intuito per gestire la vista JSF per la richiesta specificata.