Domanda

Stavo esaminando GWT. Sembra carino, ma i nostri software devono funzionare senza i requisiti di JS. È possibile?

È stato utile?

Soluzione

No, non lo è. GWT fornisce un toolkit per finestre appositamente progettato per essere eseguito sul client, non sul server. Il codice degradato (ad es. Non javascript) dovrebbe fornire HTML completo al browser, cosa che GWT semplicemente non fa. Compila il tuo codice java in un file javascript che viene consegnato al client e crea l'interfaccia utente tramite manipolazione DOM sul client. Poi c'è del codice per rispondere al server, alcuni impliciti, altri scritti da te. Questo modello non si presta bene al degrado con grazia.

L'unico modo per degradare in qualche modo con grazia è fornire una seconda interfaccia utente non javascript o utilizzare un altro toolkit che non esegue il rendering del frontend sul client ma fornisce HTML. Siamo spiacenti.

Altri suggerimenti

Potresti degradare con garbo creando una struttura html che è semplicemente "abbastanza buona" (con post dei moduli, menu collegati, ecc.) e quindi avere GWT collegato a ciascuna parte di quella struttura, aumentandone il comportamento. Ad esempio, rendere dinamico un menu a discesa HTML, sostituire un collegamento a un'altra pagina con un componente che apre un lightbox o sostituire un collegamento a un'altra pagina con una richiesta http XML per fare la stessa cosa (ad esempio esprimere un voto).

L'ho fatto diverse volte per i clienti.

È il modo opposto in cui viene sviluppata la maggior parte dei GWT, ma può funzionare.

Stavo esaminando questo problema da solo durante la progettazione del mio sito Web. GWT non è affatto migliore della semplice scrittura di file Javascript in quanto la loro sintassi è quasi identica. Il vero vantaggio deriva dalla condivisione di librerie client e server. Spero che tu abbia risolto questo problema negli ultimi due anni, ma in ogni caso qui ci sono un paio di esempi che potresti trovare utili.

Creazione di Gmail: con GWT, puoi creare un EmailFormatter in un pacchetto condiviso che esegue il markup dell'elenco e-mail in modo che il tuo server non debba farlo. Puoi quindi aggiungere il supporto per i browser legacy (" versione precedente ") utilizzando la stessa classe EmailFormatter sul lato server.

Verifica del modulo: sebbene sia assolutamente necessario dal punto di vista della sicurezza per convalidare il lato server di input dell'utente, è più conveniente per la maggior parte degli utenti che Javascript controlli un modulo prima che venga inviato. A tale scopo, puoi utilizzare lo stesso codice Java con GWT.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top