2016-07-01 5 views
0

Ich entwickle eine Spring MVC Webanwendung mit Apache Tiles. Ich habe einige JavaScript-Bibliotheken wie JQuery mit pom.xml Abhängigkeitseinträgen heruntergeladen. Meine Frage ist, kann ich mich auf die Skripte innerhalb der jar in meiner Kacheln-Konfiguration beziehen? Wenn ja, wie füge ich es hinzu? Wenn ich den gesamten Pfad zur js Datei im jar gebe und wird es gelöst?Können wir auf ein JavaScript innerhalb der JAR-Datei einer Maven-Abhängigkeit verweisen?

<tiles-definitions> 
    <definition name="base.definition" 
       template="/WEB-INF/jsp/layout.jsp"> 
     <put-attribute name="title" value="" /> 
     <put-attribute name="header" value="/WEB-INF/jsp/header.jsp" /> 
     <put-attribute name="menu" value="/WEB-INF/jsp/menu.jsp" /> 
     <put-attribute name="body" value="" /> 
     <put-attribute name="footer" value="/WEB-INF/jsp/footer.jsp" /> 
     <put-list-attribute name="javascripts"> 
      <add-attribute value="<CAN THIS BE A LOCATION TO JAR??>" /> 
     </put-list-attribute> 
    <definition> 
    <!--More stuff--> 
</tiles-definitions> 

Beispielszenario: I heruntergeladene Datentabellen-1.9.4-2.jar und der Maven-Build-Put ist es unter \ WEB-INF \ lib. Innerhalb des jar das Javascript, das ich will, ist \ META-INF \ Ressourcen \ webjars \ datatables \ 1.9.4 \ media \ js \ jquery.dataTables.min.js In dieser Situation, was wäre meine Ressourcenzuordnung und wie beziehe ich mich dazu im add-Attribut Element?

Antwort

0

Sie sollten in der Lage sein, dies zu tun, indem sie eine Ressourcenzuordnung in Spring MVC definieren:

<mvc:resources mapping="/js/**" location="classpath:/scripts"/> 

Und es dann wie folgt zugreifen:

<add-attribute value="/js/myscript.js"/> 

Auch da Sie webjars verwenden, ich habe einen relevanten Teil der Spring Framework Reference Documentation, 22.16.9 Serving of Resources zitiert:

Webjars auch mit WebJarsResourceResolver unterstützt werden, welches automatisch registriert wird, wenn sich die Bibliothek "org.webjars:webjars-locator" im Klassenpfad befindet. Dieser Resolver ermöglicht es der Ressourcen-Kette, versionsunabhängige Bibliotheken von HTTP-GET-Anforderungen aufzulösen. "GET /jquery/jquery.min.js" gibt die Ressource "/jquery/1.2.0/jquery.min.js" zurück.

+0

Ich bin immer noch nicht in der Lage, das funktioniert zu bekommen. Könnten Sie das bitte anhand meines Updates mit einem bestimmten Szenario erläutern? – user3885927