Frage

Ich arbeite schon seit einiger Zeit mit Struts, aber für ein Projekt, das ich gerade abschließe, wurde ich gebeten, Vorlagen (Velocity .vm-Dateien) und Konfigurationen (struts.xml, persistence.xml) von der Haupt-WAR-Datei zu trennen.

Ich habe alles in der Standardstruktur wie:

    application
    |-- META-INF            -- Some configs are here
    |-- WEB-INF             -- others here
    |   |-- classes
    |   |   |-- META-INF
    |   |   `-- mypackage
    |   |       `-- class-files
    |   `-- lib
    |-- css
    `-- tpl                 -- Template dir to be relocated

Und ich kann anscheinend keine Dokumentation darüber finden, wie ich (wahrscheinlich in struts.xml) einrichte, wo meine Vorlagen abgelegt werden und wo sich die Konfigurationsdateien befinden.

Ich denke, dass ich auch Konfigurationen auf dem Anwendungsserver verwenden muss (ich verwende Jetty 5.1.14).

Gibt es Hinweise darauf, wie man es konfiguriert?

Danke


Nun, die ganze Sache beim Ändern des Vorlagenplatzes besteht darin, die Vorlagen in einem für Designer zugänglichen Bereich abzulegen, sodass der Designer sie bei jeder erforderlichen Änderung auf seinen Computer laden, bearbeiten und erneut hochladen kann.Ich denke, das ist ein häufiges Szenario.Wahrscheinlich habe ich bei meiner Recherche also etwas übersehen.Vielleicht konzentriere ich mich darauf, es an der falschen Stelle zu konfigurieren ...Irgendwelche Gedanken?

War es hilfreich?

Lösung

Wenn ich Ihre Frage zu Struts-Konfigurationsdateien richtig verstanden habe, sind diese in web.xml angegeben.Suchen Sie den Struts-Servlet-Konfigurationsparameter.Der Parameterwert kann eine durch Kommas getrennte Liste der zu ladenden XML-Dateien sein.Z.B:

<servlet>
    <servlet-name>action</servlet-name>
    <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
    <init-param>
        <param-name>config</param-name>
        <param-value>
            WEB-INF/config/struts-config.xml,
            WEB-INF/config/struts-config-stuff.xml,
            WEB-INF/config/struts-config-good.xml,
            WEB-INF/config/struts-config-bad.xml,
            WEB-INF/config/struts-config-ugly.xml
        </param-value>
    </init-param>
    ...
</servlet>

Sieh dir das an Leitfaden für Federbeine unter 5.3.2.Und ja, das gilt auch für 2.x.

Andere Tipps

Für persistence.xml, Konkret können Sie eine Persistenzeinheit in einem separaten JAR ablegen, das Sie separat von Ihrer Webanwendungs-WAR bereitstellen können, oder beides zusammen in einem EAR-Archiv, je nachdem, was Ihr Anwendungsserver unterstützt.Das JBoss-Handbuch beschreibt dies beispielsweise als Stellen Sie EAR mit EJB3 JAR bereit.

Für struts-config.xml Ich gehe davon aus, dass Sie den Struts-Code, der es lädt, überschreiben müssen, wenn Sie einen nicht standardmäßigen Speicherort verwenden möchten.

Ich weiß nichts über die Velocity-Vorlagen.

Im Allgemeinen laden Webanwendungen aus Sicherheitsgründen nur Ressourcen aus dem WAR.Es gibt noch andere Techniken, die Sie verwenden können, aber es ist vielleicht einfacher, sie auszuprobieren Weblets, bei dem es sich offenbar um ein Framework handelt, mit dem Sie Ressourcen aus einem separaten JAR laden können.

Sie müssen nachsehen velocity.properties Datei in Ihrem WEB_INF-Ordner. Meiner Meinung nach müssen Sie hier Ihre Datei ändern Vorlagenstamm die Eigenschaft ändern file.resource.loader.path.

Hoffe es hilft, Petr

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top