Question

Je créer un projet Wicket squelette en utilisant

mvn archetype:create -DarchetypeGroupId=org.apache.wicket -DarchetypeArtifactId=wicket-archetype-quickstart -DarchetypeVersion=1.4-rc4 -DgroupId=com.mycompany -DartifactId=myproject

Toute la configuration / importation nouveau projet avec Maven / Intellij a bien fonctionné. Je continuai d'ajouter un fichier CSS de base sur ma page de démarrage, par la suite méthode recommandée de le faire dans Wicket 1.4

public class BasePage extends WebPage {
    public BasePage() {
        add(CSSPackageResource.getHeaderContribution(BasePage.class, "main.css"));
    }
}

Le fichier main.css a été mis le long du côté BasePage.java et BasePage.html dans / src / main / java. Je lance l'application avec Start.java. Le problème est quand je modifie le fichier CSS il n'est pas ramassé quand je RELANCE Start.java. (Les modifications apportées aux fichiers Java et HTML sont mis à jour quand je les change)

Je me suis assuré le cache du navigateur était effacé, et même valided la demande / réponse dans Firfox / Firebug. Il semble que quelque part entre la magie de Wicket et l'instance de la jetée Start.java crée le fichier CSS est mise en mémoire cache et non mis à jour. Toutes les idées?

Était-ce utile?

La solution

Je déplacé les fichiers CSS dans le répertoire / webapp et qui semblait résoudre le problème d'obtenir Start.java pour enregistrer les changements. Je suis en train de faire la même chose pour les fichiers js et images. Étrangement, j'ai lu (sur plusieurs sites) personnes qui font de différentes manières (Bien que le consensus pour les classes HTML et Java est toujours de les avoir au même endroit).

Autres conseils

Je trouve une autre solution qui me aide. Vous pouvez configurer Wicket pour ajouter un horodatage à la demande d'une ressource pour résoudre le problème de la mise en cache. Dans la méthode d'initialisation de l'appel de classe l'application setAddLastModifiedTimeToResourceReferenceUrl des paramètres Recource.

public class MyApplication extends WebApplication {
    @Override
    protected void init() {
        getResourceSettings().setAddLastModifiedTimeToResourceReferenceUrl(true);
    }
}

original: http://old.nabble.com/Javascript-CSS-being-cached-by-the-browser-even-when-it -Est-changed.-Si-setAddLastModifiedTimeToResourceReferenceUrl% 28true% 29-be-the-default - td14886538.html

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top