2008-10-13 6 views
1

Je travaille à la fois dans les mondes Ruby et Java. J'ai été quelque peu inspiré par le projet merb-assets, qui fournit diverses fonctionnalités pour faciliter la référence des ressources (images, CSS, etc.) situées sur un sous-domaine (ou CDN).Comment puis-je référencer des actifs d'un sous-domaine différent (ou CDN) en production?

Je veux faire la même chose en Java:

  • dans développement et de test, je veux utiliser soit <c:url> de JSTL ou <s:url value=""/> balises de Struts 2 pour des actifs de référence.
  • mais dans production, je veux déplacer la plupart de ces actifs vers un sous-domaine distinct (ou CDN).

Y a-t-il des taglibs (ou d'autres méthodes) qui peuvent vous aider? Je ne veux pas particulièrement joncher mes vues avec <c:if et teste localhost, chaque fois que j'insère un <img> ou <link> tag. J'utilise Struts 2 + JSP.

Répondre

1

Je ne connais pas vraiment Struts 2, mais je pense à une solution qui implique l'utilisation de fonctionnalités Maven2 ... Donc, dans le cas où vous utilisez effectivement Maven2 pour construire votre application, vous pouvez résoudre votre problème. problème avec le filtre de ressources et les fonctionnalités de profils.

Filtrage des ressources: Vous pouvez demander à Maven2 de filtrer les fichiers de ressources (dans notre cas, les fichiers JSP). Filtrer signifie remplacer tous les $ {xxx} par leur valeur. Cela sera utile pour remplacer un paramètre ($ {domain.url} par exemple) par la valeur que vous devez avoir ("localhost", "http: // ...").

Ensuite, vous définissez 2 profils: "développement-test" et "production". Chaque profil définira son propre domaine pour ces actifs. Par exemple, dans development-test, vous pouvez définir le domaine comme "localhost", en production, le domaine sera "http: // ....".

Je ne sais pas si cela peut résoudre votre problème, mais vous pouvez essayer: o)

Références: Filtrer les ressources: http://maven.apache.org/plugins/maven-resources-plugin/examples/filter.html Profils: http://maven.apache.org/guides/introduction/introduction-to-profiles.html

+0

Je suis entièrement investi dans l'utilisation de Maven 2, donc cette solution semble intéressante (bien que complètement différente des solutions que j'avais envisagées!). 2 questions: 1. le filtrage est-il en conflit avec les variables JSTL? 2. comment puis-je configurer ceci si je veux que mes JSP restent dans mon dossier WEB-INF /? – myabc

Questions connexes