Vous regardez une version antérieure (v. /confluence/display/BM35/Frontend+UI) de cette page.

afficher les différences afficher l'historique de la page

Vous regardez la version actuelle de cette page. (v. 1) afficher la version suivante »

 

Sur cette page :

En rapport :

Prérequis

  • Avoir installé une machine virtuelle avec un BlueMind 3.5 à jour
  • Sur la VM, il faut créer le fichier /root/dev-unsecure-cookies (peut être vide). 
  • Installer un nginx ou un apache sur la machine de développement.

Développement avec Plovr

Afin de pouvoir développer avec Plovr :

  1. Configuration Plovr
    1. Effectuer un clean maven dans bluemind-all/open/ui :

      mvn -Dmaven.test.skip=true clean install
    2. Toujours dans bluemind-all/open/ui executer le script plovr :

      $ ./plovr.sh
  2. Configuration du proxy Nginx

    /etc/nginx/sites-available/default
    upstream plovr {
      ip_hash;
      server 127.0.0.1:9810;
    }
    
    upstream core2 {
      server bluemind.vm.lan:443;
    }
    
    server {
      [...]
     
      location / {
        proxy_pass https://core2/
        client_max_body_size 10m;
      }
    
      location /sourcemap {
        proxy_pass http://plovr;
      }
     
    # CALENDAR 
      
      location /cal/css/calendar.css {
        rewrite ^(.*)$ /css/calendar/ break;
        proxy_pass http://plovr;
      }
     
      location /cal/js/compile/calendar.js {
        rewrite ^(.*)$ /compile?id=calendar break;
        proxy_pass http://plovr;
      }
     
    # CONTACT
      
      location /contact/css/contact.css {
        rewrite ^(.*)$ /css/contact/ break;
        proxy_pass http://plovr;
      }
    
      location /contact/js/compile/contact.js {
        rewrite ^(.*)$ /compile?id=contact break;
        proxy_pass http://plovr;
      }
    
    # TASK
    
      location /task/css/net.bluemind.task.application.closure.css {
        rewrite ^(.*)$ /css/net-bluemind-task-application-closure/ break;
        proxy_pass http://plovr;
      }
    
      location /task/js/compile/net.bluemind.task.application.closure.js {
        rewrite ^(.*)$ /compile?id=net-bluemind-task-application-closure break;
        proxy_pass http://plovr;
      }
    
    }
  3. Configuration du proxy Apache

    RewriteEngine On
    
    
    # CALENDAR
    RewriteRule "^/cal/js/compile/calendar.js$" "http://127.0.0.1:9810/compile?id=calendar" [R]
    RewriteRule "^/cal/css/calendar.css$" "http://127.0.0.1:9810/css/calendar/calendar.css" [R]
    
    # CONTACT
    RewriteRule "^/contact/js/compile/contact.js$" "http://127.0.0.1:9810/compile?id=contact" [R]
    RewriteRule "^/contact/css/contact.css$" "http://127.0.0.1:9810/css/contact/contact.css" [R]
    
    
    # TASK
    RewriteRule "^/task/js/compile/net.bluemind.task.application.closure.js$" "http://127.0.0.1:9810/compile?id=net-bluemind-task-application-closure" [R]
    RewriteRule "^/task/css/net.bluemind.task.application.closure.css$" "http://127.0.0.1:9810/css/net-bluemind-task-application-closure/net.bluemind.task.application.closure.css" [R]
    
    
  4. Redémarrer le proxy

  5. Vérifier en allant sur http://localhost/cal/ par exemple

Développement avec gwt (SuperDevMode)

Prérequis

BlueMind nécessite une version 2.7.X ou supérieure de GWT.

Effectuer un clean maven des librairies gwt-libs :

$ cd open/ui/gwt-libs
$ mvn clean install

Configurer le projet à tester de la manière suivante :

  • Dans Properties > Google > Web Toolkit > use Google Web Toolkit
  • Dans Properties > Google > Web application, "This project has a war directory" = web-resources
  • Mettre la lib GWT en premier dans le classpath


  • Configuration proxy sur la machine de dev pour l'IW par exemple :

    NGINX:
     
    location /setup/installationwizard {
      proxy_pass http://127.0.0.1:8888/installationwizard;
      client_max_body_size 10m;
    }
    
    location / {
      proxy_pass http://bluemind.vm.lan/
      client_max_body_size 10m;
    }
     
    location /eventbus/ {
      proxy_pass http://bluemind.vm.lan/eventbus/;
      proxy_http_version 1.1;
      proxy_set_header Upgrade $http_upgrade;
      proxy_set_header Connection "upgrade";
    }
     
    APACHE (conf issue d'un mac)
    
    ProxyRequests On
    ProxyTimeout 1200
    
    LoadModule ssl_module libexec/apache2/mod_ssl.so
    SSLProxyEngine on
    
    ProxyPass /adminconsole/adminconsole http://127.0.0.1:9876/adminconsole
    ProxyPassReverse /adminconsole/adminconsole http://127.0.0.1:9876/adminconsole
     
    ProxyPass /eventbus http://127.0.0.1:9876/eventbus
    ProxyPassReverse /eventbus http://127.0.0.1:9876/eventbus
    
    ProxyPass / https://bm.vagrant.vmw:443/
    ProxyPassReverse / https://bm.vagrant.vmw:443/

Exécuter :

  • clic-droit sur le projet > Run as Web Application (GWT Super Dev Mode)
  • se rendre à l'url http://localhost/setup/index.html :

Enregistrer

Enregistrer

  • Aucune étiquette