Meilleure alternative à Apache Tuiles
Je suis à la recherche d'un cadre qui est mieux et plus facile à utiliser que Apache Tuiles (qui jusqu'à présent, j'ai utilisé une couple de fois).
Avec des Tuiles, il semble que lorsque j'ai 100 actions j'ai besoin de crée 100 pages jsp et la création de 100 définitions dans tiles.xml
.
Est-il un meilleur cadre pour la gestion de mes modèles? Je veux créer, par exemple, 2 modèles:
un menu et une colonne pour le contenu
b) menu de la colonne de contenu, colonne de droite avec la bannière
Dans les deux modèles, le menu est constante. Dans template b
, la colonne de droite est constante, de sorte que seul le contenu de la colonne est différente. Pour cet exemple simple, je ne veux pas définir chaque fichier JSP qui s'étend de la template a
(juste pour donner un corps). C'est la lame de l'omi. Ou peut-être que je suis nul et je peux définir un modèle par DÉFAUT de Apache Carreaux et je ne suis pas à l'utiliser. Dans anycase, toute aide appréciée.
OriginalL'auteur Fixus | 2012-03-17
Vous devez vous connecter pour publier un commentaire.
Dans l'ensemble, je recommanderais SiteMesh sur les Tuiles.
Voici configuration de SiteMesh 3
Vous pouvez utiliser des Tuiles pour les modèles de page, mais l'utilisation de SiteMesh pour site-modèle large. Néanmoins...
Comment faire des Tuiles sucer moins:
Utiliser convention over configuration. Par exemple, placez vos définitions dans
webapp/WEB-INF/tiles.xml
et il n'y a pas besoin de dire à carreaux où il est.Utiliser des caractères génériques:
Si votre contrôleur retourne le nom de la vue
index
, elle correspond à la définition*
, et l'utilisation du fichier JSP/WEB-INF/views/index.jsp
pour le corps, et l'utilisation de la propriété messageindex.title
.Si votre contrôleur retourne le nom de la vue
contact-us
, elle correspond à la définition*
, et l'utilisation du fichier JSP/WEB-INF/views/contact-us.jsp
pour le corps, et l'utilisation de la propriété messagecontact-us.title
Dans votre modèle, ajouter:
et
Ajouter
ReloadableResourceBundleMessageSource
fève de votre servlet contexte de l'application.Faire un fichier
/src/main/resources/messages.properties
, avec un contenu comme:OriginalL'auteur Neil McGuigan
Une autre approche est Sitemesh.
Il a été conçu pour maillage de points de vue où vous ne pouvez pas modifier l'original, de sorte qu'il est plus un html transformation/décoration cadre qu'un template cadre comme des Tuiles.
Dans mon opinion personnelle à Carreaux est la meilleure approche pour appliations, et je voudrais essayer de mettre en œuvre une sorte de programme de résolution (en fonction des conventions de nommage) qui rend les fichiers xml obsolète, mais ce n'était pas la question.
@Voir: Cette introductions anciennes montre comment SiteMesh œuvres.
Je ne sais pas, mais je pense que la manière dont le résolveur résout le point de vue est highy application dependend, et sur l'autre manière de s'attendre à ce que il n'est pas difficile d'en écrire un.
Oui, Carreaux-3 est livré avec la résolution de la capacité que vous mentionnez. Checkout le tuto ...( tech.finn.n/the-ultimate-vue-carreaux-3 )
OriginalL'auteur Ralph
(similaire à cette)
Vous n'avez pas besoin d'une définition pour chaque action.
Passe-partout de cette configuration est un hang-up de carreaux-1 jours. Ce n'est pas vraiment nécessaire à carreaux-2 si les jokers ont été introduits, et surtout avec des carreaux-3 avec le OptionsRenderer.
Voici un tutoriel qui va vous aider avec
OriginalL'auteur mck
J'ai fini par utiliser JSF + Facelets. Je l'ai combiné avec Spring MVC et il fonctionne comme un charme.
OriginalL'auteur Fixus
Basé sur l'expérience, j'ai fortement recommandé de Apache Wicket.
OriginalL'auteur archetype