custom:produzione_war_da_progetto_template_custom

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Entrambe le parti precedenti la revisione Revisione precedente
Prossima revisione
Revisione precedente
custom:produzione_war_da_progetto_template_custom [2023/01/24 17:21]
giorgio.scali [Passaggio 1: Generazione della folder del progetto maven (esecuzione del file makeproj*.bat)]
custom:produzione_war_da_progetto_template_custom [2024/10/07 10:50] (versione attuale)
giorgio.scali [Creazione Webadmin war]
Linea 12: Linea 12:
 === Procedura === === Procedura ===
 La prima cosa da fare per creare un progetto di base nel proprio pc cliccare sul seguente link e avviare il download della cartella ZIP, in base alla versione major del progetto da generare: La prima cosa da fare per creare un progetto di base nel proprio pc cliccare sul seguente link e avviare il download della cartella ZIP, in base alla versione major del progetto da generare:
-  * {{ :​custom:​makegproj-4.6.x.zip |}}+  * {{ :​custom:​makegproj-4.6.x-release.zip |}} 
 +  * {{ :​custom:​makegproj-4.6.x.zip | makegproj-4.6.x.zip (PRE-RELEASE,​ @Deprecated)}}
   * {{ :​custom:​makegproj-4.5.x.zip |}}   * {{ :​custom:​makegproj-4.5.x.zip |}}
   * {{ :​custom:​makegproj.zip |}} (per le versioni precedenti alla 4.5.X)   * {{ :​custom:​makegproj.zip |}} (per le versioni precedenti alla 4.5.X)
Linea 19: Linea 20:
   * doppio click su makegproj-X.bat   * doppio click su makegproj-X.bat
   * inserire il nome del nuovo progetto maven da generare. Es: **mvn_project_name**   * inserire il nome del nuovo progetto maven da generare. Es: **mvn_project_name**
-  * inserire ​ la versione di GeowebFramework,​ scelta tra quelle disponibili su Artifactory Es: **4.6.0****4.6.0-SNAPSHOT****4.5.4****4.4.19****4.4.19-HOTFIX**+  * inserire ​ la versione di GeowebFramework,​ scelta tra quelle disponibili su ArtifactoryEs:  
 +    * **4.6.0** 
 +    * **4.6.0-SNAPSHOT** 
 +    * **4.5.4** 
 +    * **4.4.19** 
 +    * **4.4.19-HOTFIX**
  
 La finestra di //shell// mostrerà l'​avanzamento del download. {{ :​custom:​shell_makeproj.png?​400 |}} La finestra di //shell// mostrerà l'​avanzamento del download. {{ :​custom:​shell_makeproj.png?​400 |}}
Linea 50: Linea 56:
    
 Le modifiche apportate ai vari file dipendono dal progetto, ma anche dall'​ambiente in cui il progetto deve essere utilizzato. Le modifiche apportate ai vari file dipendono dal progetto, ma anche dall'​ambiente in cui il progetto deve essere utilizzato.
 +
 +=== Note war versioni 4.6.x-release ===
 +
 +Sono provvisti nel modello 3 file spring-security.xml
 +  - **spring-security.xml** (senza keycloak, da arricchire con eventuale configurazione Identity Provider del cliente)
 +  - **spring-security-keycloak.xml** (specifico per keycloak)
 +  - **spring-security-deprecated.xml** (senza keycloak, con vari meccanismi di autenticazione usati in passato, anche @Deprecated)
 +
 +Di default è utilizzato lo //​spring-security-keycloak.xml//​
 +Questa configurazione può essere modificata nel file **web.xml**
 +
 +<code xml>
 +<!-- Spring Security STARTS -->
 +<​context-param>​
 + <​param-name>​contextConfigLocation</​param-name>​
 + <​param-value>​
 + <!-- TODO CONFIGURE, choose one between: -->
 + <!-- /​WEB-INF/​spring-security.xml -->
 + <!-- /​WEB-INF/​spring-security-keycloak.xml -->
 + /​WEB-INF/​spring-security-keycloak.xml
 + </​param-value>​
 +</​context-param>​
 +</​code>​
 +
 +Lasciare solo lo spring-security*.xml di interesse, eliminando gli altri, e verificare la coerenza nel web.xml
 +
 +
 +Nel **pom.xml** sono commentati tutti i plugin disponibili allo stato attuale nel repository del framework.
 +Come sempre, decommentare i necessari moduli ed eliminare gli altri.
 +Aggiungere inoltre le dipendenze di eventuali repository di prodotto o di commessa.
  
  
Linea 92: Linea 128:
 Doppio click per eseguire il file. Si aprirà una finestra di //shell// che mostrerà l'​avanzamento dell'​operazione. Al termine della procedura, nella finestra verrà riportato un messaggio di successo se tutto è andato a buon fine, oppure un messaggio di errore in caso di eventuali problemi. Doppio click per eseguire il file. Si aprirà una finestra di //shell// che mostrerà l'​avanzamento dell'​operazione. Al termine della procedura, nella finestra verrà riportato un messaggio di successo se tutto è andato a buon fine, oppure un messaggio di errore in caso di eventuali problemi.
 Il file WAR viene automaticamente salvato all'​interno si **mvn_project_name/​target**. ​ Il file WAR viene automaticamente salvato all'​interno si **mvn_project_name/​target**. ​
- + 
 + 
 +--------------------------------- 
 + 
 +==== Creazione Webadmin war ==== 
 +**(Dalla versione 4.6.12)** 
 +[[https://​gitlab.com/​geowebframework/​geowebframework/​-/​issues/​1257|issue #1257]] 
 + 
 +=== Premessa === 
 +L'​eccessivo ingombro degli artefatti webadmin (circa 250MB), che andavano a finire su Artifactory ad ogni tag, combinato al contestuale cambiamento delle policy di rilascio che ha previsto un tag esclusivo per ogni fix (sulla quarta cifra di versionamento 4.6.x.y), ha spinto per la trasformazione del modulo maven gw-webadmin in jar, in maniera che potesse essere inglobato in un pom.xml generico per la creazione del war. 
 + 
 +Considerando anche gli effetti della [[https://​gitlab.com/​geowebframework/​geowebframework/​-/​issues/​1256|issue #1256]], i peso dell'​artifact gw-webadmin è passato da 250MB a meno di 2MB su Artifactory 
 + 
 +=== Procedura === 
 +Analogamente alla metodologia di produzione del war del webclient, è disponibile un template specifico da cui partire (valido per 4.6.* e 4.7.*) 
 + 
 +  * {{ :​custom:​makewebadmin-4.6.x.zip |}} 
 + 
 +Vanno eseguiti passaggi del tutto simili alla produzione dei war webclient. 
 + 
 +=== Note === 
 +In generale non ci sarà mai bisogno di aggiungere maven dependency al pom.xml. 
 + 
 +Le dipendenze che erano supportate precedentemente continuano ad esserlo 
 +Widget e servizi interni al progetto geowebframework di: 
 +  - gw-advanced 
 +  - gw-cms 
 +  - gw-approvals 
 +  - gw-mnemonic-code 
 +  - gw-3d-visualizer 
 +  - gw-workflow 
 +   
 +Widget e servizi esterni al progetto geowebframework 
 +  - gw-tree-collection (2.1.3) 
 + 
 +Widget e servizi deprecati:​ 
 +  - postevita 
 +  - gw-smartplatform 
 + 
 +Se necessario ulteriori plugin di commessa/​progetto che coinvolgano widget/tipi di menu possono essere sviluppati con la medesima modalità. 
 +L'​unica accortezza, nell'​eventuale aggiunta della relativa dependency al pom.xml del webadmin, **e solo se questa abbia come propria dependency webclient**, ​ è quella di aggiungere solo le class: 
 +  - pojo dei widget 
 +  - pojo modello dati 
 +  - XInitializerService.class che registra widget, tipi di menu e tipi di schede 
 + 
 +Questo dovrebbe essere fatto in una delle modalità consentite da maven, da adattare in base al caso specifico. 
 + 
  • custom/produzione_war_da_progetto_template_custom.1674577284.txt.gz
  • Ultima modifica: 2023/01/24 17:21
  • da giorgio.scali