Author: echatellier Date: 2013-03-15 15:17:25 +0100 (Fri, 15 Mar 2013) New Revision: 44 Url: http://nuiton.org/projects/nuiton-js/repository/revisions/44 Log: Update site Added: trunk/src/site/fr/ trunk/src/site/fr/rst/ trunk/src/site/fr/rst/index.rst trunk/src/site/site_en.xml Modified: trunk/pom.xml trunk/src/site/rst/index.rst trunk/src/site/site_fr.xml Modified: trunk/pom.xml =================================================================== --- trunk/pom.xml 2013-03-15 14:06:40 UTC (rev 43) +++ trunk/pom.xml 2013-03-15 14:17:25 UTC (rev 44) @@ -129,6 +129,9 @@ <plugin> <artifactId>maven-site-plugin</artifactId> + <configuration> + <locales>en,fr</locales> + </configuration> <dependencies> <dependency> <groupId>org.nuiton.jrst</groupId> Added: trunk/src/site/fr/rst/index.rst =================================================================== --- trunk/src/site/fr/rst/index.rst (rev 0) +++ trunk/src/site/fr/rst/index.rst 2013-03-15 14:17:25 UTC (rev 44) @@ -0,0 +1,263 @@ +.. - +.. * #%L +.. * Nuiton JS +.. * $Id:$ +.. * $HeadURL:$ +.. * %% +.. * Copyright (C) 2012 - 2013 CodeLutin +.. * %% +.. * This program is free software: you can redistribute it and/or modify +.. * it under the terms of the GNU Lesser General Public License as +.. * published by the Free Software Foundation, either version 3 of the +.. * License, or (at your option) any later version. +.. * +.. * This program is distributed in the hope that it will be useful, +.. * but WITHOUT ANY WARRANTY; without even the implied warranty of +.. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +.. * GNU General Lesser Public License for more details. +.. * +.. * You should have received a copy of the GNU General Lesser Public +.. * License along with this program. If not, see +.. * <http://www.gnu.org/licenses/lgpl-3.0.html>. +.. * #L% +.. - + +Utilisation +=========== + +Déclaration pour Servlet 3 +-------------------------- + +Pour utiliser nuiton-js dans un environnement Servlet 3 vous devez déclarer dans +vos dépendances Maven:: + + <dependency> + <groupId>org.nuiton.js</groupId> + <artifactId>nuiton-js-wro</artifactId> + <version>${versionNuitonJs}</version> + </dependency> + +Déclaration pour Servlet 2 +-------------------------- + +Si vous n'êtes pas dans un environnement Servlet 3, il vous faudra déclarer +vous même le filtre en plus de la déclaration de la dépendance Maven:: + + <filter> + <filter-name>WebResourceOptimizer</filter-name> + <filter-class>org.nuiton.js.wro.NuitonJsFilter</filter-class> + </filter> + <filter-mapping> + <filter-name>WebResourceOptimizer</filter-name> + <url-pattern>/nuiton-js/*</url-pattern> + </filter-mapping> + + +Déclaration commune à toutes les versions de Servlets +----------------------------------------------------- + +Il faut ensuite ajouter en dépendance Maven les librairies JS et CSS que vous +souhaiter utiliser. Ne vous préocupé par des dépendances Nuiton-js est la pour +ça. + +Par exemple si vous avez besoin de jquery et jquery-ui:: + + <dependency> + <groupId>org.nuiton.js</groupId> + <artifactId>nuiton-js-jquery</artifactId> + <version>${versionJQuery}</version> + </dependency> + + <dependency> + <groupId>org.nuiton.js</groupId> + <artifactId>nuiton-js-jquery-ui</artifactId> + <version>${versionJQueryUI}</version> + </dependency> + +Dans vos pages JSP vous pouvez alors récupérer les resources via par exemple l'url:: + + /nuiton-js/jquery.js + +ce qui donne dans la page JSP:: + + <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> + ... + <script type="text/javascript" src="<c:url value="/nuiton-js/jquery.js"/>"></script> + +Si vous souhaitez que le javascript ne soit pas minimisé, vous pouvez ajouter à +l'url "?minimize=false" ce qui donne (ne fonctionne qu'en mode debug=true:: + + <script type="text/javascript" src="<c:url value="/nuiton-js/jquery.js?minimize=false"/>"></script> + +Lorsque vous voulez passer le site en production vous devez créer le fichier +WEB-INF/nuiton-js.properties et y mettre:: + + debug=false + +Utilisation de wro pour ses propres ressources +============================================== + +Il est possible de définir un fichier WEB-INF/wro.xml pour gérer ses propres +ressources via wro. Vous pouvez aussi dans ce fichier faire références aux +librairies packagées par nuiton-js. Le nom du groupe des librairies de nuiton-js +est le nom de la ressources. Par exemple si vous avez en dépendance +**nuiton-js-jquery** alors le groupe se nommera **jquery** + +Pour plus d'explication sur le format de ce fichier reportez-vous à la documentation +de wro https://code.google.com/p/wro4j/wiki/WroFileFormat + +exemple d'un fichier WEB-INF/wro.xml:: + + <groups xmlns="http://www.isdc.ro/wro"> + <group name='MonApp'> + <group-ref>jquery</group-ref> + <group-ref>bootstrap-responsive</group-ref> + <group-ref>jquery-ui</group-ref> + <group-ref>jqplot</group-ref> + <!-- plugin jqplot --> + <group-ref>jqplot.canvasAxisTickRenderer</group-ref> + <group-ref>jqplot.canvasTextRenderer</group-ref> + <group-ref>jqplot.categoryAxisRenderer</group-ref> + <group-ref>jqplot.cursor</group-ref> + <group-ref>jqplot.highlighter</group-ref> + <!-- js et css specifique a l'application --> + <css>/css/MonApp.css</css> + <js>/js/MonApp.js</js> + </group> + </groups> + +puis dans vos fichier html ou jsp:: + + <link href="<c:url value='/nuiton-js/MonApp.css'/>" rel="stylesheet" type="text/css"/> + <script type="text/javascript" src="<c:url value='/nuiton-js/MonApp.js'/>"></script> + + +Utilisation avancée +=================== + +Il est possible de forcer le rechargement du modèle ou de vider le cache en +demandant les URLs:: + + /nuiton-js/wroAPI/reloadModel + /nuiton-js/wroAPI/reloadCache + +Paramétrage possible +==================== +Via le fichier WEB-INF/nuiton-js.properties vous pouvez modifier le comportement +pour voir toutes les options vous pouvez vous reporter à la documentation de wro +https://code.google.com/p/wro4j/wiki/ConfigurationOptions + +Nuiton-js force par défaut les options suivantes:: + + debug=true + managerFactoryClassName=org.nuiton.js.wro.NuitonJsWroManagerFactory + preProcessors=cssUrlRewriting,cssImport,semicolonAppender,cssMin + postProcessors=cssVariables,jsMin + uriLocators=servletContext,uri,classpath + +Utilisation du plugin Maven pour générer les ressources +======================================================= + +Voici un exemple d'utilisation. La différence avec la configuraiton standard +est la déclaration de **org.nuiton.js.wro.NuitonJsMavenWroManagerFactory** comme +wroManagerFactory et la déclation des dépendances vers les ressources js et css:: + + <build> + <plugins> + <plugin> + <groupId>ro.isdc.wro4j</groupId> + <artifactId>wro4j-maven-plugin</artifactId> + <version>1.6.2</version> + + <dependencies> + <dependency> + <groupId>org.nuiton.js</groupId> + <artifactId>nuiton-js-jquery</artifactId> + <version>1.8.3-1</version> + </dependency> + <dependency> + <groupId>org.nuiton.js</groupId> + <artifactId>nuiton-js-jqgrid</artifactId> + <version>4.4.1-1</version> + </dependency> + </dependencies> + + <executions> + <execution> + <phase>compile</phase> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + + <configuration> + <targetGroups>MonApp</targetGroups> + <minimize>true</minimize> + <destinationFolder>${basedir}/src/main/webapp/wro/</destinationFolder> + <contextFolder>${basedir}/src/main/webapp/</contextFolder> + <wroFile>${basedir}/src/main/webapp/WEB-INF/wro.xml</wroFile> + <wroManagerFactory>org.nuiton.js.wro.NuitonJsMavenWroManagerFactory</wroManagerFactory> + <extraConfigFile>${basedir}/src/main/webapp/WEB-INF/wro.properties</extraConfigFile> + </configuration> + </plugin> + </plugin> + </build> + +Vous pouvez alors dans vos pages utiliser:: + + <link href="<c:url value='/wro/MonApp.css'/>" rel="stylesheet" type="text/css"/> + <script type="text/javascript" src="<c:url value='/wro/MonApp.js'/>"></script> + + +Création d'un nouveau module +============================ + +Pour créer un nouveau module il faut respecter quelques règles: + +- mettre en numéro de version du module maven le numero de version de la ressource à packager + avec en plus un numero de packaging. Par exemple pour jquery 1.8.3 la version + du module maven doit être 1.8.3-1 pour la première version de packaging +- mettre les ressources dans le répertoire: src/main/resources/nuiton-js-<nom de la ressource> +- créer le fichier de déclaration: src/main/resources/META-INF/nuiton-js/wro-<nom de la ressource>.xml +- il doit y avoir dans ce fichier de déclaration un groupe partant le nom de la ressource. + +Il ne faut mettre que la version normale des fichiers (pas minimisé) car la +librairie s'occupe elle même de minimiser les fichiers. + +le nom du répertoire pourrait être autre chose, mais en le préfixant par +nuiton-js et avec le nom de la ressource, on évite que l'utilisateur ait le même +répertoire dans son classpath ce qui ferait que ces ressources seraient elles aussi +prises en charge sans qu'il le souhaite. + +la déclaration peut ressembler à:: + + <groups xmlns="http://www.isdc.ro/wro"> + <import>classpath:META-INF/nuiton-js/wro-jquery.xml</import> + <group name='jquery-ui'> + <group-ref>jquery</group-ref> + <js>classpath:nuiton-js-jquery-ui/js/**.js</js> + <css>classpath:nuiton-js-jquery-ui/css/**.css</css> + </group> + </groups> + +Pour plus d'explication sur le format de ce fichier reportez-vous à la documentation +de wro https://code.google.com/p/wro4j/wiki/WroFileFormat + +Si la librairie a une dépendance sur une autre, il faut le faire ressortir dans +le pom.xml et aussi dans la déclaration en faisant référence au groupe dont il +dépend (comme dans l'exemple ci-dessus). + +Dans le fichier pom.xml, il ne faut pas mettre la version du dernier package mais +la version annoncé comme minimal par la librairie dont elle dépand. Par exemple +jquery-ui 1.9.2 dépend de jquery 1.6.x il faut donc mettre dans le pom.xml +de nuiton-js-jquery-ui la dépendance:: + + <dependency> + <groupId>org.nuiton.js</groupId> + <artifactId>nuiton-js-jquery</artifactId> + <version>[1.6,)</version> <!-- jquery ui compatible avec jquery >= 1.6 --> + <scope>runtime</scope> + </dependency> + + Modified: trunk/src/site/rst/index.rst =================================================================== --- trunk/src/site/rst/index.rst 2013-03-15 14:06:40 UTC (rev 43) +++ trunk/src/site/rst/index.rst 2013-03-15 14:17:25 UTC (rev 44) @@ -22,26 +22,33 @@ .. * #L% .. - -Utilisation -=========== +Presentation +============ -Déclaration pour Servlet 3 --------------------------- +Nuiton-js is a libraries used to: + * package javascript and css libraries as `maven <http://maven.apache.org/>`_ artifacts + * aggregate severals libraries into a single file + * minimize and reduce size using wro mechanisms + * simply package new libraries -Pour utiliser nuiton-js dans un environnement Servlet 3 vous devez déclarer dans -vos dépendances Maven:: +Using Servlet 3 API +------------------- +To use nuiton-js in a servlet 3 container, you just have to add following +dependencies in your project pom.xml file:: + <dependency> <groupId>org.nuiton.js</groupId> <artifactId>nuiton-js-wro</artifactId> <version>${versionNuitonJs}</version> </dependency> -Déclaration pour Servlet 2 --------------------------- +Using Servlet 2 API +------------------- -Si vous n'êtes pas dans un environnement Servlet 3, il vous faudra déclarer -vous même le filtre en plus de la déclaration de la dépendance Maven:: +If you're not using a servlet 3 container, you will have to add following +configuration in your application's ``web.xml`` file (in addition to maven +dependencies into your pom file):: <filter> <filter-name>WebResourceOptimizer</filter-name> @@ -53,14 +60,13 @@ </filter-mapping> -Déclaration commune à toutes les versions de Servlets ------------------------------------------------------ +Common configuration +-------------------- -Il faut ensuite ajouter en dépendance Maven les librairies JS et CSS que vous -souhaiter utiliser. Ne vous préocupé par des dépendances Nuiton-js est la pour -ça. +Then, you will have to add the js or css libraries your want to use packaged +as maven dependencies. Nuiton-js will take care about transitive dependencies. -Par exemple si vous avez besoin de jquery et jquery-ui:: +For example, to use ``jquery`` and ``jquery-ui``:: <dependency> <groupId>org.nuiton.js</groupId> @@ -74,42 +80,41 @@ <version>${versionJQueryUI}</version> </dependency> -Dans vos pages JSP vous pouvez alors récupérer les resources via par exemple l'url:: +In your JSP pages, you could then retrieve ``jquery`` resources with following url:: /nuiton-js/jquery.js -ce qui donne dans la page JSP:: +JSP will use following code to import it:: <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> ... <script type="text/javascript" src="<c:url value="/nuiton-js/jquery.js"/>"></script> -Si vous souhaitez que le javascript ne soit pas minimisé, vous pouvez ajouter à -l'url "?minimize=false" ce qui donne (ne fonctionne qu'en mode debug=true:: +If you don't want javascript code to be minimized by nuiton-js, you could append +``?minimize=false`` to the url (if you're using the default ``debug=true`` configuration):: <script type="text/javascript" src="<c:url value="/nuiton-js/jquery.js?minimize=false"/>"></script> -Lorsque vous voulez passer le site en production vous devez créer le fichier -WEB-INF/nuiton-js.properties et y mettre:: +When deploying your site in production, you could change default configuration +editing file ``WEB-INF/nuiton-js.properties`` by adding:: debug=false -Utilisation de wro pour ses propres ressources -============================================== +Using wro to manage application own resources +============================================= -Il est possible de définir un fichier WEB-INF/wro.xml pour gérer ses propres -ressources via wro. Vous pouvez aussi dans ce fichier faire références aux -librairies packagées par nuiton-js. Le nom du groupe des librairies de nuiton-js -est le nom de la ressources. Par exemple si vous avez en dépendance -**nuiton-js-jquery** alors le groupe se nommera **jquery** +You can create a file in W``EB-INF/wro.xml`` to manage your own resources +with wro. You can also reference libraries package by nuiton-js. Libraries +group name is resources group name. For example, if you use ``nuiton-js-jquery``, +group name will be ``jquery``. -Pour plus d'explication sur le format de ce fichier reportez-vous à la documentation -de wro https://code.google.com/p/wro4j/wiki/WroFileFormat +For more information about wro.xml file format, please refer to wro documentation +at https://code.google.com/p/wro4j/wiki/WroFileFormat -exemple d'un fichier WEB-INF/wro.xml:: +``WEB-INF/wro.xml`` file example:: <groups xmlns="http://www.isdc.ro/wro"> - <group name='MonApp'> + <group name='MyApp'> <group-ref>jquery</group-ref> <group-ref>bootstrap-responsive</group-ref> <group-ref>jquery-ui</group-ref> @@ -126,28 +131,25 @@ </group> </groups> -puis dans vos fichier html ou jsp:: +and, in your html or jsp files:: - <link href="<c:url value='/nuiton-js/MonApp.css'/>" rel="stylesheet" type="text/css"/> - <script type="text/javascript" src="<c:url value='/nuiton-js/MonApp.js'/>"></script> + <link href="<c:url value='/nuiton-js/MyApp.css'/>" rel="stylesheet" type="text/css"/> + <script type="text/javascript" src="<c:url value='/nuiton-js/MyApp.js'/>"></script> -Utilisation avancée -=================== +Advanced use +============ -Il est possible de forcer le rechargement du modèle ou de vider le cache en -demandant les URLs:: +You can force model reload or cache cleaning using following urls:: /nuiton-js/wroAPI/reloadModel /nuiton-js/wroAPI/reloadCache -Paramétrage possible -==================== -Via le fichier WEB-INF/nuiton-js.properties vous pouvez modifier le comportement -pour voir toutes les options vous pouvez vous reporter à la documentation de wro -https://code.google.com/p/wro4j/wiki/ConfigurationOptions +Available configuration +======================= +Using file ``WEB-INF/nuiton-js.properties``, you can change wro behaviour. -Nuiton-js force par défaut les options suivantes:: +Nuiton-js use following options by default:: debug=true managerFactoryClassName=org.nuiton.js.wro.NuitonJsWroManagerFactory @@ -155,9 +157,12 @@ postProcessors=cssVariables,jsMin uriLocators=servletContext,uri,classpath -Utilisation du plugin Maven pour générer les ressources -======================================================= +For more details about wro configuration, refer to following url: +https://code.google.com/p/wro4j/wiki/ConfigurationOptions +Using maven plugin to generate static resources +=============================================== + Voici un exemple d'utilisation. La différence avec la configuraiton standard est la déclaration de **org.nuiton.js.wro.NuitonJsMavenWroManagerFactory** comme wroManagerFactory et la déclation des dépendances vers les ressources js et css:: Added: trunk/src/site/site_en.xml =================================================================== --- trunk/src/site/site_en.xml (rev 0) +++ trunk/src/site/site_en.xml 2013-03-15 14:17:25 UTC (rev 44) @@ -0,0 +1,111 @@ +<!-- + #%L + Nuiton JS + $Id:$ + $HeadURL:$ + %% + Copyright (C) 2012 - 2013 CodeLutin + %% + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Lesser General Public License as + published by the Free Software Foundation, either version 3 of the + License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Lesser Public License for more details. + + You should have received a copy of the GNU General Lesser Public + License along with this program. If not, see + <http://www.gnu.org/licenses/lgpl-3.0.html>. + #L% + --> +<project name="${project.name}"> + + <skin> + <groupId>org.apache.maven.skins</groupId> + <artifactId>maven-fluido-skin</artifactId> + <version>1.3.0</version> + </skin> + + <custom> + <fluidoSkin> + <topBarEnabled>true</topBarEnabled> + <sideBarEnabled>false</sideBarEnabled> + <searchEnabled>false</searchEnabled> + <sourceLineNumbersEnabled>true</sourceLineNumbersEnabled> + </fluidoSkin> + </custom> + + <bannerLeft> + <name>${project.name}</name> + <href>index.html</href> + </bannerLeft> + + <bannerRight> + <src>http://www.codelutin.com/images/lutinorange-codelutin.png</src> + <href>http://www.codelutin.com</href> + </bannerRight> + + <publishDate position="right" format="dd/MM/yyyy"/> + <version position="right"/> + + <poweredBy> + <logo href="http://maven.apache.org" name="Maven" + img="images/logos/maven-feather.png"/> + + <logo href="http://docutils.sourceforge.net/rst.html" + name="ReStructuredText" + img="images/logos/restructuredtext-logo.png"/> + + <logo href="http://maven-site.nuiton.org/jrst" name="JRst" + img="images/logos/jrst-logo.png"/> + </poweredBy> + + <body> + + <head> + <script type="text/javascript" + src="http://maven-site.nuiton.org/public/js/mavenpom-site.js"> + </script> + + <link rel="stylesheet" type="text/css" + href="http://maven-site.nuiton.org/public/css/mavenpom-site.css"/> + </head> + + <breadcrumbs> + <item name="${project.name}" href="${project.url}"/> + </breadcrumbs> + + <links> + <item name="nuiton.org" href="http://www.nuiton.org"/> + <item name="chorem.org" href="http://www.chorem.org"/> + <item name="CodeLutin" href="http://codelutin.com"/> + <item name="Libre-Entreprise" href="http://www.libre-entreprise.org/"/> + </links> + + <menu name="Utilisateurs"> + <item name="Accueil" href="index.html"/> + </menu> + + <menu ref="modules"/> + + <footer> + + <div id='projectMetas' + projectversion='${project.version}' + platform='${project.platform}' + projectid='${project.projectId}' + scm='${project.scm.connection}' + scmwebeditorenabled='${project.scmwebeditorEnabled}' + scmwebeditorurl='${project.scmwebeditorUrl}' + siteSourcesType='${project.siteSourcesType}' + piwikEnabled='${project.piwikEnabled}' + piwikId='${project.piwikId}'> + </div> + </footer> + + </body> + +</project> Modified: trunk/src/site/site_fr.xml =================================================================== --- trunk/src/site/site_fr.xml 2013-03-15 14:06:40 UTC (rev 43) +++ trunk/src/site/site_fr.xml 2013-03-15 14:17:25 UTC (rev 44) @@ -31,16 +31,14 @@ <custom> <fluidoSkin> - <topBarEnabled>false</topBarEnabled> - <googleSearch/> - <sideBarEnabled>true</sideBarEnabled> - <searchEnabled>true</searchEnabled> + <topBarEnabled>true</topBarEnabled> + <sideBarEnabled>false</sideBarEnabled> + <searchEnabled>false</searchEnabled> <sourceLineNumbersEnabled>true</sourceLineNumbersEnabled> </fluidoSkin> </custom> <bannerLeft> - <src alt="NuitonJS">logo.jpg</src> <name>${project.name}</name> <href>index.html</href> </bannerLeft> @@ -93,8 +91,6 @@ <menu ref="modules"/> - <menu ref="reports"/> - <footer> <div id='projectMetas'
participants (1)
-
echatellier@users.nuiton.org