Utilizzo dei Framework Java Server Faces ed Hibernate per lo sviluppo di un servizio internet per i cittadini del Comune di Grosseto

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Utilizzo dei Framework Java Server Faces ed Hibernate per lo sviluppo di un servizio internet per i cittadini del Comune di Grosseto"

Transcript

1 Università degli Studi di Pisa Facoltà di Scienze Matematiche, Fisiche e Naturali Corso di Laurea Triennale in Informatica Utilizzo dei Framework Java Server Faces ed Hibernate per lo sviluppo di un servizio internet per i cittadini del Comune di Grosseto Tutore Aziendale Dott. Ludwig Bargagli Candidato Giulio Rossetti Tutore Accademico Prof. Vincenzo Gervasi Addì 12 Ottobre 2007

2 2

3 Capitolo 1 Introduzione L oggetto di questa relazione è il progetto di tirocinio svolto presso il Comune di Grosseto nel periodo che va dal 12/03/2007 al 25/07/2007. Il lavoro di progettazione, sviluppo e test del codice prodotto è stato eseguito negli uffici del SED (il centro servizi informatici del comune) sotto la supervisione del dott. Ludwig Bargagli. Durante il tirocinio ho realizzato un applicazione per la gestione degli oggetti smarriti sul territorio comunale che verrà utilizzata da parte della Polizia Municipale e dal Provveditorato. Tale applocazione nasce per rendere più agevole la raccolta dei dati riguardanti le denunce di smarrimento e ritrovo degli oggetti nel territorio provinciale: offre infatti uno sportello online tramite cui il cittadino può comunicare direttamente con gli impiegati della pubblica amministrazione per effettuare denunce di smarrimento e ricerche nel catalogo degli oggetti smarriti e ritrovati. Inoltre gli impiegati della Polizia Municipale e del Provveditorato possono, tramite un ulteriore interfaccia web loro dedicata, controllare lo stato delle denunce, consultare l archivio delle stesse, e tenere traccia della dislocazione degli oggetti ritrovati nei depositi atti a tale scopo. Alcuni di questi servizi erano già in passato resi fruibili da un applicazione web realizzata in tempi brevi per la necessità di averla disponibile nell immediato: per questo motivo il servizio fornito risultava incompleto e non esente da alcuni problemi di gestione e di lentezza nell esecuzione in caso di un moderato sovrannumero di richieste contemporanee. Ho quindi riprogettato da zero una nuova versione dell applicazione tenendo conto delle necessità degli utenti finali, cercando di renderla più intuitiva possibile per limitare le difficoltà di utilizzo, e allo stesso tempo migliorando la capacità del servizio stesso nei casi di richieste multiple. Altro motivo per 3

4 4 CAPITOLO 1. INTRODUZIONE cui si è resa necessaria la riscrittura dell applicazione è che era stata realizzata con tecnologie che non ne consentivano più una facile manutenzione e aggiornamento, rendendola di fatto inutilizzabile per la gestione degli archivi ormai memorizzati nel database con tempi di accesso accettabili. Proprio per non perdere gli archivi già presenti, e poter in tal modo operare una sostituzione a caldo del precedente servizio, ho mantenuto la struttura delle tabelle del database: questa scelta ha comportato delle limitazioni in fase di progettazione e creato la necessità di valutare varie soluzioni per la gestione degli accessi al database. Tali alternative sono riportate nella sezione IV di questa relazione. Il servizio web realizzato consta quindi di due parti: un interfaccia di amministrazione e una per la fruizione del servizio da parte del cittadino. Il deployment dell applicazione è stato effettuato su una macchina avente come sistema operativo Linux Ubuntu Server e Apache Tomcat come Servlet/JSP container. Tale macchina risiede all interno della rete aziendale e per tale motivo è stato necessario configurare una macchina posta in una DMZ come reverse proxy (Apache http server) per rendere il servizio fruibile su internet. 1.1 Organizzazione della relazione La relazione qui presentata è strutturata in modo da dare una visione d insieme dell applicazione realizzata. Per mostrare con maggiore chiarezza le parti principali del servizio verranno presentate nel seguito di questa introduzione le tecnologie utilizzate, si passerà poi ad analizzare la parte riguardante l interfaccia grafica (sezione I), la logica di backend (sezione II), la struttura del database (sezione III), i casi di studio relativi alle varie versioni dell applicazione realizzate (sezione IV) ed una postfazione contenente le considerazioni sul tirocinio svolto e la bibliografia essenziale (sezione V). Ogni sezione tecnica è introdotta da un paragrafo di descrizione della parte dell applicazione presa in esame e si completa con la discussione delle metodologie di implementazione focalizzando l attenzione sui problemi incontrati durante lo sviluppo e sulle soluzioni proposte. Inoltre nei casi in cui ho dovuto operare delle scelte tra varie tecnologie propostemi o da me presentate ho presentato le motivazioni che mi hanno indotto a discriminare tra le varie alternative.

5 Capitolo 2 Requisiti del progetto 2.1 Dettagli precedente versione del servizio Realizzata nel 2003, la precedente versione del servizio era implementata in Java (J2EE 1.3) secondo il paradigma JSP Model 1 e implementava le chiamate al database (Oracle) tramite l ausilio di driver jdbc. Tale implementazione prevedeva l uso per la parte di View di pagine JSP (Java server pages) e per la parte relativa al Controller di Servlet. La sua limitata manutenibilità è dovuta al pesante uso di scriptlet e procedure Javascript nelle pagine JSP che rendono, in molti casi, poco leggibile i sorgenti realizzati e inoltre quasi del tutto assente la separazione della logica applicativa da quella di presentazione. Un inconveniente di questa versione è senza dubbio la scarsa possibilità di riuso del codice che mi ha costretto ad una fase di reverse engineering prima di poter iniziare a strutturare la nuova versione. 2.2 Nuova implementazione I requisiti tecnici che sono stati richiesti esplicitamente per la realizzazione del progetto sono i seguenti: Implementazione del pattern MVC (JSP Model 2) Uso del Framework Java Server Faces (nella implementazione MyFaces fornita da Apache) Gestione della stampa dei report in PDF Gestione delle informazioni riguardanti le inserzioni tramite 5

6 6 CAPITOLO 2. REQUISITI DEL PROGETTO Integrazione con sistema di autenticazione di tipo Single Sign On Portabilità su più modelli di database Studio di fattibilità per il possibile impiego del Framework Hibernate Inoltre sono state aggiunte, durante la fase di sviluppo, altre modifiche che hanno portato alla realizzazione di quattro differenti versioni del progetto: La versione attualmente in uso (che soddisfa i requisiti richiesti) Una versione facente uso di EJB3 Una versione in cui la parte di business logic è realizzata (per alcuni servizi) tramite l uso del Framework Hibernate Una versione in cui la parte di business logic è realizzata (per alcuni servizi) tramite l uso del Framework ibatis Le ultime tre versioni sono state realizzate solo come caso di studio per verificare la possibilità di introdurre nel progetto finale le tecnologie di volta in volta analizzate. In seguito verrà motivata la decisione per cui non sono state introdotte nella versione definitiva. Inoltre la versione definitiva dell applicazione è stata resa disponibile, oltre che come applicazione web monolitica, anche come portlet per il CMS (Content Management System) Jetspeed2 distribuito da Apache. La procedura è stata scritta per integrarsi con il sistema di autenticazione (Single Sign On) dell ente che permette l accesso ai servizi tramite l uso di un unico identificativo e di un unica password oppure tramite l uso di smart card come la carta di identità elettronica (cie) o carta nazionale dei servizi (cns). Per lo sviluppo ho fatto uso principalmente di strumenti Open Source e di Software Libero. L ambiente di sviluppo utilizzato è stato Eclipse (ver ), con installato il plugin MyEclipse (ver GA) per lo sviluppo di applicazioni enterprise. Altre librerie utilizzate sono Tomahawk (package aggiuntivo di componenti per MyFaces). La fase di deployment è stata effettuata sul servlet container Apache Tomcat (ver ). Il progetto è stato sviluppato su Linux (inizialmente su Fedora Core 6 e successivamente su Ubuntu Feisty 7.04).

7 2.2. NUOVA IMPLEMENTAZIONE 7 Nel prossimo capitolo illustrerò le varie tecnologie utilizzate per la realizzazione del servizio (ed il principale pattern di programmazione seguito), in seguito entrerò nello specifico proponendo i dettagli implementativi del servizio realizzato.

8 8 CAPITOLO 2. REQUISITI DEL PROGETTO

9 Capitolo 3 Tecnologie 3.1 Pattern MVC Model-View-Controller è il nome di un design pattern di fondamentale importanza per la realizzazione di applicazioni con interfacce grafiche nei linguaggi Object-Oriented (OO). Tale pattern obbliga il programmatore a scindere in modo netto i livelli fondamentali dell applicazione, i componenti software che implementano il modello delle funzionalità business (model), quelli che si preoccupano di realizzare la logica di presentazione (view) e i componenti che utilizzano tali funzionalità (controller). Il sempre più diffuso uso di questo pattern ha fatto si che negli ultimi anni fiorissero numerosi framework, soprattutto per il web, atti a fornire agli sviluppatori la possibilità di realizzare applicazioni sempre più aderenti a tale modello con una sempre maggiore facilità e flessibilità d uso. Alcuni dei più famosi framework che applicano tale pattern, attualmente disponibili per Java enterprise sono Java Server Faces, Struts e Velocity. Per rendere gestibile in modo efficiente lo sviluppo e la manutenzione del codice è quindi stato deciso di seguire un approccio basato sulla strutturazione del progetto secondo il pattern MVC. La parte di View e di Controller, conformemente al JSP model 2, è stata quindi realizzata tramite Java Server Faces (nell implementazione MyFaces di Apache) mentre il Model tramite JavaBeans. 3.2 Java Server Faces Il framework utilizzato ai fini della realizzazione della logica di presentazione è stato JSF. JSF applica sistematicamente il pattern MVC, rappresenta inoltre uno 9

10 10 CAPITOLO 3. TECNOLOGIE standard gestito da Sun (codice JSR 172). Di questo framework esistono varie implementazioni: oltre a quella della Sun le principali sono quelle di Oracle e Apache. Le Gui realizzate in JSF sono configurabili tramite un file XML (faces-config.xml) in cui vengono definite le pagine facenti parte della view (pagine JSP facenti uso esclusivamente di particolari taglibrary), le regole di navigazione tra di esse e i bean utilizzati per implementare la parte di controller. Ogni implementazione usa una servlet di base FacesServlet o un filtro il cui mapping è solitamente /faces/* o *.faces. 1 I principali vantaggi nell uso di questo framework risultano essere: Esistenza di componenti predefiniti che avvicinano la programmazione web a quella degli ambienti RAD, consentendo allo sviluppatore di realizzare in breve tempo interfacce web con la stessa semplicità offerta da ambienti come.net, semplicemente collegando elementi di business logic lato server tramite catene di eventi. Elementi GUI intelligenti in grado di validare in prima persona i dati inseriti dall utente e di archiviare e caricare on-demand il proprio stato da bean memorizzati lato server denominati model-object. Definizione di un nuovo paradigma di Event Handling che avvicina la programmazione in ambito web alla tipologia di gestione asincrona degli eventi utilizzata nelle applicazioni client-server. Indipendenza dal markup language: ogni modello di interazione lato server viene realizzato lato client tramite Renderer diversificati che producono un interfaccia utente in grado di soddisfare i requisiti funzionali del server al meglio delle possibilità della piattaforma utilizzata dall utente. 3.3 JasperReport Del progetto fa parte anche la gestione della stampa dei verbali delle denunce di smarrimento e ritrovo degli oggetti: per gestire la creazione di report in formato pdf ho utilizzato le librerie messe a disposizione da JasperReport poiché essendo rilasciate sotto licenza GPL sono liberamente utilizzabili e distribuibili. 1 In JSF le pagine JSP vengono, per convenzione, refenziate con estenzione.faces sul server. Tale convenzione di naming è introdotta per mostrare una separazione tra il precedente JSP Model 1 e il nuovo Framework pur mantenendo come base la stessa struttura di visualizzazione (entrambi utilizzano pagine JSP).

11 3.4. DATABASE 11 JasperReport è una libreria scritta in Java che permette di creare dei report in maniera semplice e di automatizzarne il popolamento. Il procedimento per la creazione del report, reso intuitivo dal tool ireport che consente di definire la struttura del documento in modo visuale, consta di poche semplici fasi: 1. Creazione della struttura del documento; 2. Definizione del DataSource da cui prelevare le informazioni per popolare il report; 3. Scrittura del codice necessario ad associare DataSorurce e struttura del documento. A seguito della prima fase verrà creato un file di tipo.jxrml che definisce, in xml appunto, la struttura definita in modo visuale. Tale file (che abbiamo deciso di salvare nella cartella WEB-INF/conf) contiene le associazioni necessarie per il popolamento del documento. I DataSource definibili sono di svariato tipo (è possibile, tra varie alternative, passare connessioni jdbc alle librerie jasperreport e associare al documento da popolare una query SQL), nel nostro caso abbiamo optato per un DataSource popolato dai campi di un Bean preesistente. 3.4 Database La precedente versione dell applicazione sfruttava come DBMS Oracle 9; per rendere possibile la distribuzione anche su DBMS OpenSource abbiamo strutturato la nuova versione dell applicazione in modo da garantire la compatibilità con MySQL e Postgres. Le tabelle hanno mantenuto la struttura della versione presente su Oracle per garantire la compatibilità con le pratiche precedenti alla nuova implementazione. E stata aggiunta una sola tabella per motivi che renderò noti nella sezione dedicata all analisi dello schema del database. 3.5 Log4J Sempre per rendere più facilmente gestibili future modifiche al codice tutto il progetto ho implementato funzionalità di logging tramite le librerie log4j fornite da Apache. In seguito verranno mostrati esempi di uso. Ho introdotto il logger non solo per rendere più rapida la fase di debug del progetto durante

12 12 CAPITOLO 3. TECNOLOGIE lo sviluppo ma anche per rendere la manutenzione (e le future modifiche) del servizio gestibile a chi non ha partecipato al suo sviluppo. 3.6 EJB3 A seguito della conclusione del progetto abbiamo valutato la possibilità di introdurre l uso di Enterprise Java Beans all interno del Model ed ho quindi realizzato una versione dello stesso in cui è utilizzata questa tecnologia: tale implementazione non verrà usata ed è stata introdotta solo per valutarne l usabilità. Le specifiche EJB intendono fornire una metodologia standard per implementare la logica di funzionamento delle applicazioni di tipo enterprise, applicazioni cioe che forniscono servizi via Internet. Esistono tre tipi di EJB: Entity, Session e Message Bean. Gli Entity hanno come fine la memorizzazione delle istanze degli oggetti sul server. Tali EJB di entità forniscono quindi la caratteristica della persistenza dei dati. I Session Bean gestiscono l elaborazione delle informazioni sul server. Generalmente sono una interfaccia tra i client e i servizi offerti dai componenti disponibili sul server. I Message Bean sono gli unici con funzionamento asincrono. Tramite il Java Message Service (JMS), si iscrivono a un argomento o a una coda e si attivano alla ricezione di un messaggio inviato all argomento o alla coda a cui sono iscritti. Non richiedono una istanziazione da parte dei client. Nella nostra applicazione abbiamo fatto uso di Session Bean, nello specifico degli Stateless Session Bean, per gestire le richieste al database da parte delle varie entità in gioco. Come specificato dal nome gli Stateless Session Bean non tengono traccia, a seguito della invocazione di un loro metodo, dello stato dell oggetto sul server; per ottenere una persistenza simile sarebbe stato invece necessario l impiego di Statefull Session Bean. Per permettere l uso di questa tecnologia è stato necessario configurare un application Server: i dettagli relativi alla scelta dell application server usato verranno trattati nella sezione dedicata alla implementazione del progetto contenente EJB3.

13 3.7. HIBERNATE Hibernate Hibernate è un middleware open source per lo sviluppo di applicazioni Java che fornisce un supporto di tipo ORM (object relational mapping); il suo compito è gestire la rappresentazione e il mantenimento su database relazionale di un sistema a oggetti Java. Distribuito sotto licenza LGPL, fornisce allo sviluppatore un mapping delle classi Java sulle tabelle del database e, sulla base di tale mapping, gestisce il salvataggio degli oggetti sul database. Inoltre si occupa del reperimento degli oggetti dal database, eseguendo automaticamente le query SQL necessarie a ottenere gli stessi e occupandosi del successivo instanzizione delle entità ottenute. L obbiettivo di questo middleware è esonerare il programmatore dal lavoro inerente la gestione della persistenza dei dati. Le strade per utilizzare Hibernate in un progetto sono due: 1. è possibile, contestualmente alla fase di progettazione, definire l uso di tale middleware nel progetto, in modo da strutturare il database nel modo ottimale per una gestione ad oggetti; 2. è altresìpossibile introdurre Hibernate in un progetto già in fase di sviluppo, il cui database non sia stato necessariamente studiato per una sua applicazione, effettuando un reverse engeneering delle tabelle su cui si decide di introdurre l uso del middleware. Hibernate è tipicamente usato sia in applicazioni Swing che J2EE facenti uso di servlet o EJB session beans. In un approccio MVC rientra nella parte dell applicazione dedicata al Model. A causa della decisione di non modificare in modo pesante la struttura del database preesistente, presa a seguito dell analisi dei requisiti, l introduzione di questo framework per la persistenza dei dati è stata valutata solo al termine della messa in opera dell applicazione. 3.8 ibatis Un approccio ulteriore per la gestione del Model, alternativo a quello offerto da Hibernate, è quello proposto da ibatis. Questo Framework non rientra nella categoria degli ORM, il suo fine è di rendere più facilmente manutenibile un applicazione che faccia uso di query SQL. Tramite l uso di alcuni file xml di configurazione, infatti, tale framework consente di disaccoppiare la logica applicativa dalle query al database facendo

14 14 CAPITOLO 3. TECNOLOGIE in modo da rendere una modifica relativa all SQL prodotto non influente, in modo strutturale, sul codice che ne fa uso. ibatis, inoltre, toglie al programmatore l onere della gestione delle connessioni al database rendendo possibile configurare nel dettaglio in un ulteriore file xml i dettagli con cui queste debbano avvenire.

15 Parte I La View 15

16

17 Capitolo 4 L interfaccia utente rivolta al cittadino 4.1 Analisi dei Requisiti Il servizio offerto ai cittadini ha come fine ultimo facilitare la presentazione delle denunce di smarrimento e la ricerca nel database delle pratiche avviate (sia per lo smarrimento che per il ritrovo degli oggetti). Considerando come base il servizio precedentemente esistente, ho quindi cercato di diminuire il numero di interazioni necessarie al cittadino per ottenere le informazioni ricercate. Per la parte di compilazione della denuncia di smarrimento è adesso necessario riempire un unico form con i propri dati mentre per effettuare la ricerca, dopo averne impostato i parametri, scegliere da una lista di possibili risultati quello da visualizzare. Rendendo minimali le procedure, si è quindi provato a spostare l operazione di dennucia di smarrimento dal classico servizio di ufficio, offerto dalla Pubblica Aministrazione, ad un servizio più snello e veloce affidato esclusivamente al cittadino. 17

18 18CAPITOLO 4. L INTERFACCIA UTENTE RIVOLTA AL CITTADINO 4.2 Descrizione L interfaccia pubblica del servizio consente la ricerca, da parte del cittadino, all interno del database degli oggetti che sono stati ritrovati nel territorio comunale. Precedentemente tale funzione prevedeva una ricerca vincolata a: Comune di smarrimento Categoria dell oggetto smarrito Sottocategoria Data di inserimento nel database Data di ritrovamento Tipologia di oggetto (Smarrito/Trovato) Per rendere più elastica la ricerca nella nuova versione ho sostituito archi temporali alle ricerche su singola data. Inoltre per evitare immissioni errate delle date stesse ho previsto per ogni campo data l inserzione tramite un calendario a popup. I campi riguardanti il Comune, le Categorie e le Sottocategorie prevedono una selezione da apposito menu drop down popolato al caricamento della pagina tramite tre diverse chiamate al database. I risultati della ricerca sono visualizzati in una tabella dinamica dalla quale è possibile raggiungere per ogni oggetto visualizzato una scheda dettagliata. Altra funzione resa disponibile dall interfaccia pubblica riguarda l inserimento da parte dell utente di segnalazioni di smarrimento di oggetti. Tali inserzioni nel database non vengono considerate attendibili fintanto che non sono validate da un operatore preposto allo scopo e quindi non compaiono subito come risultati di un eventuale ricerca.

19 4.2. DESCRIZIONE 19

20 20CAPITOLO 4. L INTERFACCIA UTENTE RIVOLTA AL CITTADINO 4.3 Dettagli implementativi form di Ricerca La form di ricerca presenta tre selectonemenu dedicati alla selezione del comune di interesse, della categoria e della sottocategoria dell oggetto da ricercare, quattro inputcalendar per consentire la ricerca in base all arco temporale di inserimento nel database e a quello di ritrovamento, due select- BooleanCheckbox per definire la tipologia di oggetti da ricercare (Ritrovati,Smarriti o entrambi) ed un commandbutton per eseguire il submit e la navigazione. 1 La pagina di visualizzazione risultati si compone di una datatable che visualizza l immagine (se presente), la descrizione, il luogo e la data di ritrovo di ciascun oggetto che soddisfi i criteri di ricerca. 1 I componenti elencati verranno esaminati nel dettaglio nella sezione successiva

21 4.3. DETTAGLI IMPLEMENTATIVI FORM DI RICERCA 21 Per comodità la capienza massima della tabella per pagina è fissata a 15 elementi, ciò ha comportato l uso di un componente datascroller per la generazione automatica di un indice di pagina riferibile alla tabella. Selezionando uno dei risultati si ottiene una scheda con i dettagli relativi all oggetto.

22 22CAPITOLO 4. L INTERFACCIA UTENTE RIVOLTA AL CITTADINO 4.4 Dettagli dei componenti utilizzati nel progetto selectonemenu: realizza un drop-down menu i cui valori sono caricati tramite il campo value, del componente figlio selectitems, collegato ad un metodo del bean che ha come valore di ritorno un ArrayList. Il valore scelto viene inserito nel bean tramite il campo value del componente. Nel caso del menu riguardante le categorie è stato inserito un campo valuechangelistener che consente di modificare il contenuto del menu delle sottocategorie nel momento in cui viene effettuato il refresh della pagina ad opera del commandbutton agente sul metodo specificato in tale campo. inputcalendar: questo componente sostituisce le l imputtext che precedentemente si occupavano di consentire all utente l immissione delle date di ricerca. Tale componente non necessita di controlli sui campi immessi (a differenza della precedente versione in cui tali controlli erano effettuati in Javascript) poiché valida ed invia solo le date scritte nel formato consentito (dd/mm/yyyy) e forza il refresh della pagina in caso contrario. E stato inoltre utilizzato il campo renderaspopup per consentire la scelta della data desiderata tramite un calendario visualizzato a seguito della pressione di un commandbutton disegnato dal componente. A causa del suo funzionamento il campo value di questo oggetto è utilizzato sia per accedere ai metodi di set che a quelli di get del bean usato, al momento del display infatti carica la data attuale tramite il get e al momento dell invio la aggiorna a quella desiderata tramite il set. selectbooleancheckbox: effettua il display di una checkbox, il campo value effettua il set utilizzando un valore di tipo boolean. commandbutton: il pulsante Cerca è utilizzato per realizzare sia la funzione di navigazione sia quello di ricerca. Il pulsante Sottocategorie si occupa di fare il refresh della pagina e di riottenere il valore del nuovo menu delle sottocategorie tramite il metodo AggiornaCategoria sulla cui azione è in attesa il listener del componente selectonemenu. Il pulsante pulisci si occupa solo di effettuare il refresh della pagina annullando tutte le scelte fatte precedentemente dall utente: ciò è reso possibile dal campo immediate settato a true il quale specifica che i metodi di set chiamati dai componenti debbano essere valutati ed eseguiti solo a seguito dell azione di navigazione.

23 4.5. PROBLEMI RISCONTRATI E SOLUZIONI PROPOSTE 23 DataTable 1 : componente dedicato alla costruzione dinamica di tabelle, similmente a selectitems riceve un ArrayList di cui si preoccupa di fare il display. Tramite i tag column è possibile specificare il numero delle colonne e il loro contenuto nonchè il loro titolo. Il campo rows fissa il numero di righe massimo visibile in una singola pagina della tabella. datascroller: referenziando il componente datatable si occupa del numero massimo di pagine su cui suddividere la tabella e di fornire dei link di navigazione tra le pagine stesse. commandsortheader: permette, tramite l implementzione di alcuni metodi di cui viene effettuato il binding nella datatable, di riordinare il contenuto della stessa relativamente alla colonna selezionata. graphicimage: effettua la visualizzazione di un immagine. inputfileupload: consente il submit di file da form. Per abilitare tale componente è necessario configurare alcuni filtri nel file web.xml per definire la dimensione massima dei file invia inputtext: componente usato per inserire testo nei form. outputtext: componente usato per visualizzare il contenuto dei campi dei bean nelle schede dettagliate, nei risultati delle ricerche e nella sezione di gestione dell applicazione. message: componente usato per effettuare la visualizzazione di messaggi di errore in caso di fallimento nella validazione dei dati inseriti nel form. inputhidden: componente usato per inserire valori nel form non visualizzati dall utente. 4.5 Problemi riscontrati e Soluzioni proposte Durante le fasi iniziali dello sviluppo si sono presentati numerosi problemi non legati strettamente al codice prodotto bensì all ambiente di sviluppo (in particolare al plugin MyEclipse) che proponeva librerie di MyFaces ferme alla versione e quindi solo in parte compatibili con le librerie di Tomahawk di 1 Successivamente all uso nel progetto ho scritto un articolo su questo componente e sulla flessibilità che offre per riordinare dinamicamente, tramite semplici passaggi, il suo contenuto (Tale articolo è stato pubblicato su Dev, numero 152 Agosto 2007 [13])

24 24CAPITOLO 4. L INTERFACCIA UTENTE RIVOLTA AL CITTADINO versione necessarie per l uso di parte dei componenti dei vari form. Con l aggiornamento di MyFaces alla versione i problemi di compatibilità sono stati risolti 2. Alcuni dei principali problemi incontrati sono stati: 1. Impossibilità di effettuare correttamente il submit a seguito dell inserzione dei componenti selectonemenu all interno del form. 2. Aggiornamento del selectonemenu delle sottocategorie in modo da consentire la visualizzazione delle sole sottocategorie inerenti alla categoria selezionata (funzione precedentemente realizzata in Javasript). 3. Errato rendering dei componenti inputcalendar a seguito dell impostazione del campo renderaspopup a true. 4. Formattazione delle date per la ricerca all interno del database. Per le problematiche precedentemente presentate ho applicato le seguenti modifiche alle librerie e/o ai file di configurazione: 1. Il problema era dovuto alla non corretta azione di set/get dei componenti in questione, per risolvere il problema ho aggiornato le librerie usate Ho realizzato l aggiornameto prevedendo il reload della pagina tramite un comandbutton apposito il cui metodo di riferimento viene monitorizzato dal campo valuechangelistener aggiunto nel componente selectonemenu riguardante le categorie. Inoltre durante il primo caricamento della pagina viene effettuata una doppia interrogazione al database in modo da avere a disposizione subito le sottocategorie della prima categoria della lista. <h:selectonemenu value="#{item.categoria} "valuechangelistener="#{categorielist. AggiornaCategoria}"> 2 A seguito di ricerche su forum di numerose comunità ho appreso che la retro compatibilità del package Tomahawk (l unica versione attualmente disponibile che rende correttamente utilizzabile inputcalendar e altri componenti in seguito utilizzati) è limitata alle versioni di MyFaces successive alla a causa di una modifica nella struttura interna che, nelle precedenti relase, prevedeva l inserimento di alcune classi di Tomahawk nel package di base. 3 Al termine della relazione si riporta per completezza la lista delle librerie utilizzate nel progetto (compresa versione)

25 4.5. PROBLEMI RISCONTRATI E SOLUZIONI PROPOSTE 25 <f:selectitems id="ls" value="#{categorielist.categorieitemlist}"/> </h:selectonemenu> <h:commandbutton value="sottocategorie" action="#{categorielist.aggiornacategoria}"> </h:commandbutton> <h:selectonemenu value="#{item.sottocategoria}"> <f:selectitems value="#{categorielist. subcategorieitemlist}"/> </h:selectonemenu> 3. A seguito del persistere del problema, dopo l aggiornamento delle librerie, un analisi del file web.xml di configurazione dell applicazione ha mostrato l errata compilazione dello stesso da parte dell ambiente di sviluppo (l errore è stato rintracciato grazie a interventi in merito sul sito del progetto Apache MyFaces, le impostazioni da inserire per il coretto funzionamento sono quelle di seguito riportate). <filter> <filter-name>myfacesextensionsfilter</filter-name> <filter-class>org.apache.myfaces.webapp. filter.extensionsfilter</filter-class> <init-param> <param-name>maxfilesize</param-name> <param-value>20m</param-value> </init-param> </filter> <filter-mapping> <filter-name>myfacesextensionsfilter</filter-name> <servlet-name>faces Servlet</servlet-name> </filter-mapping> 4. Per effettuare la ricerca su archi temporali ho utilizzato un oggetto di tipo SimpleDateFormat per definire il template per la data coerente a quello preesistente. Inoltre ho appurato che il database Oracle permette in una semplice query SQL di confrontare un campo di tipo Date correttamente con una stringa che rappresenta una data, ma che in caso di ricerca

Corso Android Corso Online Sviluppo su Cellulari con Android

Corso Android Corso Online Sviluppo su Cellulari con Android Corso Android Corso Online Sviluppo su Cellulari con Android Accademia Futuro info@accademiafuturo.it Programma Generale del Corso di Sviluppo su Cellulari con Android Programma Base Modulo Uno - Programmazione

Dettagli

Concetti base. Impianti Informatici. Web application

Concetti base. Impianti Informatici. Web application Concetti base Web application La diffusione del World Wide Web 2 Supporto ai ricercatori Organizzazione documentazione Condivisione informazioni Scambio di informazioni di qualsiasi natura Chat Forum Intranet

Dettagli

SWIM v2 Design Document

SWIM v2 Design Document PROGETTO DI INGEGNERIA DEL SOFTWARE 2 SWIM v2 DD Design Document Matteo Danelli Daniel Cantoni 22 Dicembre 2012 1 Indice Progettazione concettuale Modello ER Entità e relazioni nel dettaglio User Feedback

Dettagli

WEBsfa: l automazione della forza vendita via Web

WEBsfa: l automazione della forza vendita via Web WEBsfa: l automazione della forza vendita via Web White Paper 1 Gennaio 2005 White Paper Pag. 1 1/1/2005 L automazione della Forza Vendita Le aziende commerciali che che sviluppano e alimentano il proprio

Dettagli

UNIVERSITÀ DEGLI STUDI DI FIRENZE FACOLTA DI INGEGNERIA DIPARTIMENTO DI SISTEMI E INFORMATICA. Elaborato di Tecnologie del Software per Internet

UNIVERSITÀ DEGLI STUDI DI FIRENZE FACOLTA DI INGEGNERIA DIPARTIMENTO DI SISTEMI E INFORMATICA. Elaborato di Tecnologie del Software per Internet UNIVERSITÀ DEGLI STUDI DI FIRENZE FACOLTA DI INGEGNERIA DIPARTIMENTO DI SISTEMI E INFORMATICA Elaborato di Tecnologie del Software per Internet JMSWEB 2 SISTEMA PER LO SCAMBIO DI MESSAGGI TRA APPLICAZIONI

Dettagli

JSIS JSIS L architettura JSIS

JSIS JSIS L architettura JSIS JSIS JSIS L architettura JSIS La piattaforma JSIS Java Solution Integrated Suites, interamente realizzata dai nostri laboratori di sviluppo software, è una soluzione che integra la gestione di diverse

Dettagli

Framework di Middleware. per Architetture Enterprise

Framework di Middleware. per Architetture Enterprise Framework di Middleware per Architetture Enterprise Corso di Ingegneria del Software A.A.2011-2012 Un po di storia 1998: Sun Microsystem comprende l importanza del World Wide Web come possibile interfaccia

Dettagli

P.D.M. (Product Document Management) Hierarchycal Tree

P.D.M. (Product Document Management) Hierarchycal Tree DOKMAWEB P.D.M. (Product Document Management) Hierarchycal Tree BBL Technology Srl Via Bruno Buozzi 8 Lissone (MI) Tel 039 2454013 Fax 039 2451959 www.bbl.it www.dokmaweb.it BBL Technology srl (WWW.BBL.IT)

Dettagli

Candidato: Luca Russo Docente: Prof. Raffaele Montella. 27 Marzo 2013

Candidato: Luca Russo Docente: Prof. Raffaele Montella. 27 Marzo 2013 e di e di Candidato: Luca Russo Docente: Corso di laurea in Informatica Applicata Facoltá di Scienze e Tecnologie Programmazione su Reti 27 Marzo 2013 Traccia d esame Sviluppare multitier con disaccoppiamento

Dettagli

Corso Android Corso Online Programmatore Android

Corso Android Corso Online Programmatore Android Corso Android Corso Online Programmatore Android Accademia Domani Via Pietro Blaserna, 101-00146 ROMA (RM) info@accademiadomani.it Programma Generale del Corso Modulo Uno - Programmazione J2ee 1) Programmazione

Dettagli

Corso Analista Programmatore Java Corso Online Analista Programmatore Java

Corso Analista Programmatore Java Corso Online Analista Programmatore Java Corso Analista Programmatore Java Corso Online Analista Programmatore Java Accademia Futuro info@accademiafuturo.it Programma Generale del Corso Analista Programmatore Java Tematiche Trattate Modulo Uno

Dettagli

Progettazione: Tecnologie e ambienti di sviluppo

Progettazione: Tecnologie e ambienti di sviluppo Contratto per l acquisizione di servizi di Assistenza specialistica per la gestione e l evoluzione del patrimonio software della Regione Basilicata. Repertorio n. 11016 del 25/09/2009 Progettazione: Tecnologie

Dettagli

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER L architettura CLIENT SERVER è l architettura standard dei sistemi di rete, dove i computer detti SERVER forniscono servizi, e computer detti CLIENT, richiedono

Dettagli

Corso Programmazione Java Android. Programma

Corso Programmazione Java Android. Programma Corso Programmazione Java Android Programma 1.1 Obiettivo e modalità di fruizione L obiettivo del corso è di fornire le conoscenze tecniche e metodologiche per svolgere la professione di Programmatore

Dettagli

Registro unico Antiriciclaggio

Registro unico Antiriciclaggio Registro unico Antiriciclaggio VERSIONE PROFESSIONISTI E CED VERSIONE 4.0.0 Sommario Introduzione... 4 Requisiti di sistema... 5 Installazione del software... 6 Verifica automatica dei requisiti di installazione...

Dettagli

Programmazione Java Avanzata

Programmazione Java Avanzata Programmazione Java Avanzata Introduzione a Servlet e Struts 2 Ing. Giuseppe D'Aquì 1 Testi Consigliati Java Enterprise in a nutshell, 3 rd edition (O'Reilly) Struts 2 in Action Brown, Davis, Stanlick

Dettagli

Breve introduzione curata da Alessandro Benedetti. Struts2-Introduzione e breve guida

Breve introduzione curata da Alessandro Benedetti. Struts2-Introduzione e breve guida Breve introduzione curata da Alessandro Benedetti Struts2-Introduzione e breve guida 22-11- 2008 1 Struts 2 Costruisci,attiva e mantieni! Apache Struts 2 è un framework elegante ed estensibile per creare

Dettagli

Direzione Centrale per le Politiche dell Immigrazione e dell Asilo

Direzione Centrale per le Politiche dell Immigrazione e dell Asilo Direzione Centrale per le Politiche dell Immigrazione e dell Asilo SUI Sportello Unico Immigrazione Sistema inoltro telematico domande di nulla osta al lavoro, al ricongiungimento familiare e conversioni

Dettagli

Server-side Programming: Java servlets Parte II

Server-side Programming: Java servlets Parte II Corso di Laurea Specialistica in Ingegneria Informatica Corso di Laurea Specialistica in Ingegneria delle Telecomunicazioni Corso di Reti di Applicazioni Telematiche a.a. 2009-2010 Server-side Programming:

Dettagli

Manuale di Integrazione IdM-RAS

Manuale di Integrazione IdM-RAS IdM-RAS Data: 30/11/09 File: Manuale di integrazione IdM-RAS.doc Versione: Redazione: Sardegna IT IdM-RAS Sommario 1 Introduzione... 3 2 Architettura del sistema... 4 2.1 Service Provider... 4 2.2 Local

Dettagli

Corso di Informatica. Prerequisiti. Modulo T3 B3 Programmazione lato server. Architettura client/server Conoscenze generali sui database

Corso di Informatica. Prerequisiti. Modulo T3 B3 Programmazione lato server. Architettura client/server Conoscenze generali sui database Corso di Informatica Modulo T3 B3 Programmazione lato server 1 Prerequisiti Architettura client/server Conoscenze generali sui database 2 1 Introduzione Lo scopo di questa Unità è descrivere gli strumenti

Dettagli

Single Sign On sul web

Single Sign On sul web Single Sign On sul web Abstract Un Sigle Sign On (SSO) è un sistema di autenticazione centralizzata che consente a un utente di fornire le proprie credenziali una sola volta e di accedere a molteplici

Dettagli

MetaMAG METAMAG 1 IL PRODOTTO

MetaMAG METAMAG 1 IL PRODOTTO METAMAG 1 IL PRODOTTO Metamag è un prodotto che permette l acquisizione, l importazione, l analisi e la catalogazione di oggetti digitali per materiale documentale (quali immagini oppure file di testo

Dettagli

Manuale Gestione di OpenSPCoop 1.4 i. Manuale Gestione di OpenSPCoop 1.4

Manuale Gestione di OpenSPCoop 1.4 i. Manuale Gestione di OpenSPCoop 1.4 i Manuale Gestione di OpenSPCoop 1.4 ii Copyright 2005-2011 Link.it srl iii Indice 1 Introduzione 1 2 Prerequisiti per la Configurazione della Porta di Dominio 1 2.1 Verifica dell applicazione di gestione

Dettagli

GUIDA AL PRIMO AVVIO E MANUALE D USO

GUIDA AL PRIMO AVVIO E MANUALE D USO GUIDA AL PRIMO AVVIO E MANUALE D USO Informazioni preliminari Il primo avvio deve essere fatto sul Server (il pc sul quale dovrà risiedere il database). Verificare di aver installato MSDE sul Server prima

Dettagli

DD - Design Document

DD - Design Document Politecnico di Milano Progetto di Ingegneria del Software 2 DD - Design Document Autori: Claudia Foglieni Giovanni Matteo Fumarola Massimo Maggi Professori: Elisabetta Di Nitto Raffaela Mirandola 1 gennaio

Dettagli

Università degli Studi "Roma Tre" Dipartimento di Informatica ed automazione. Facoltà di Ingegneria. Laurea Magistrale in Ingegneria Informatica

Università degli Studi Roma Tre Dipartimento di Informatica ed automazione. Facoltà di Ingegneria. Laurea Magistrale in Ingegneria Informatica Università degli Studi "Roma Tre" Dipartimento di Informatica ed automazione Facoltà di Ingegneria Laurea Magistrale in Ingegneria Informatica Tesi di Laurea Sistema informativo per la gestione dei processi

Dettagli

Compilazione rapporto di Audit in remoto

Compilazione rapporto di Audit in remoto Compilazione rapporto di Audit in remoto Installazione e manuale utente CSI S.p.A. V.le Lombardia 20-20021 Bollate (MI) Tel. 02.383301 Fax 02.3503940 E-mail: info@csi-spa.com Rev. 1.1 23/07/09 Indice Indice...

Dettagli

Programmazione server-side: Java Servlet

Programmazione server-side: Java Servlet Programmazione server-side: Java Servlet Corso di Applicazioni Telematiche A.A. 2006-07 Lezione n.11 parte II Prof. Roberto Canonico Università degli Studi di Napoli Federico II Facoltà di Ingegneria Cos

Dettagli

Programmazione Java Avanzata

Programmazione Java Avanzata Programmazione Java Avanzata Accesso ai Dati Ing. Giuseppe D'Aquì Testi Consigliati Eclipse In Action Core J2EE Patterns - DAO [http://java.sun.com/blueprints/corej2eepatterns/patterns/dataaccessobject.html]

Dettagli

Corso analista programmatore Java. Corso analista programmatore Java Programma

Corso analista programmatore Java. Corso analista programmatore Java Programma Corso analista programmatore Java Programma 1.1 Obiettivo e modalità di fruizione L obiettivo del corso è di fornire le conoscenze tecniche e metodologiche per svolgere la professione di Programmatore

Dettagli

Architetture Software

Architetture Software Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica Ingegneria del Software Architetture Software Giulio Destri Ing. del Sw: Architettura - 1 Scopo del modulo

Dettagli

Progetto ESSE3-VOL. Guida Docenti alla gestione degli Appelli e alla Verbalizzazione degli esami online

Progetto ESSE3-VOL. Guida Docenti alla gestione degli Appelli e alla Verbalizzazione degli esami online Progetto ESSE3-VOL Guida Docenti alla gestione degli Appelli e alla Verbalizzazione degli esami online Redatto da: Diego Nobile (ASI) Verificato da: Approvato da: Distribuito a: INDICE NOTA INTRODUTTIVA...3

Dettagli

Esercitazione 8. Basi di dati e web

Esercitazione 8. Basi di dati e web Esercitazione 8 Basi di dati e web Rev. 1 Basi di dati - prof. Silvio Salza - a.a. 2014-2015 E8-1 Basi di dati e web Una modalità tipica di accesso alle basi di dati è tramite interfacce web Esiste una

Dettagli

2009. STR S.p.A. u.s. Tutti i diritti riservati

2009. STR S.p.A. u.s. Tutti i diritti riservati 2009. STR S.p.A. u.s. Tutti i diritti riservati Sommario COME INSTALLARE STR VISION CPM... 3 Concetti base dell installazione Azienda... 4 Avvio installazione... 4 Scelta del tipo Installazione... 5 INSTALLAZIONE

Dettagli

Design Patterns. Sommario. Architettura a 3 Livelli Concetti Generali Presentazione Dominio Sorgente Dati DIB 1. Design Patterns DIB 2

Design Patterns. Sommario. Architettura a 3 Livelli Concetti Generali Presentazione Dominio Sorgente Dati DIB 1. Design Patterns DIB 2 DIB 1 Sommario Architettura a 3 Livelli Concetti Generali Presentazione Dominio Sorgente Dati DIB 2 Architettura a 3 Livelli DIB 3 Architettura a 3 Livelli Presentazione Gestione dell interazione degli

Dettagli

ALL UTILIZZO DEL SOFTWARE PER I RIVENDITORI

ALL UTILIZZO DEL SOFTWARE PER I RIVENDITORI SISTEMA DISTRIBUZIONE SCHEDE OnDemand GUIDA ALL UTILIZZO DEL SOFTWARE PER I RIVENDITORI un servizio Avviso agli utenti Il prodotto è concesso in licenza come singolo prodotto e le parti che lo compongono

Dettagli

Appunti della lezione del 8/10/2008 del corso di Basi di dati I - Università del Salento

Appunti della lezione del 8/10/2008 del corso di Basi di dati I - Università del Salento Appunti della lezione del 8/10/2008 del corso di Basi di dati I - Università del Salento Tecnologie per lo sviluppo di applicazioni La tendenza attuale dell'ingegneria è quella dell'integrazione di componenti

Dettagli

v. 1.0-7-11-2007 Mistral ArchiWeb 2.0 Manuale utente

v. 1.0-7-11-2007 Mistral ArchiWeb 2.0 Manuale utente v. 1.0-7-11-2007 Mistral ArchiWeb 2.0 Manuale utente Sommario 1. INTRODUZIONE...3 2. DESCRIZIONE FUNZIONALITÀ...3 2.1. LOGIN...3 2.2. SCHEDA ARCHIVIO...3 2.3. GESTIONE ARCHIVI...4 2.3.1 Creazione nuovo

Dettagli

MODEL-VIEW-CONTROLLER PROBLEMA

MODEL-VIEW-CONTROLLER PROBLEMA MODEL VIEW CONTROLLER DESIGN PATTERN MODEL-VIEW-CONTROLLER INGEGNERIA DEL SOFTWARE Università degli Studi di Padova Dipartimento di Matematica Corso di Laurea in Informatica, A.A. 2013 2014 rcardin@math.unipd.it

Dettagli

APPENDICE A Servlet e Java Server Page

APPENDICE A Servlet e Java Server Page APPENDICE A Servlet e Java Server Page A.1 Cosa è una Servlet e come funziona Una servlet è un particolare tipo di applicazione Java, in grado di essere eseguita all'interno di un web server e di estenderne

Dettagli

Dipartimento per le Libertà Civili e l Immigrazione

Dipartimento per le Libertà Civili e l Immigrazione Dipartimento per le Libertà Civili e l Immigrazione Sistema inoltro telematico Manuale utente Versione 10 Data aggiornamento: 14/09/2012 Pagina 1 (25) Sommario 1. Il sistema di inoltro telematico delle

Dettagli

Guida Utente della PddConsole. Guida Utente della PddConsole

Guida Utente della PddConsole. Guida Utente della PddConsole Guida Utente della PddConsole i Guida Utente della PddConsole Guida Utente della PddConsole ii Copyright 2005-2014 Link.it srl Guida Utente della PddConsole iii Indice 1 Introduzione 1 2 Prerequisiti per

Dettagli

Corso Online. We Train Italy info@wetrainitaly.it

Corso Online. We Train Italy info@wetrainitaly.it Corso Online Programmatore Java New Edition We Train Italy info@wetrainitaly.it Programma Generale del Corso Programmatore Java New Edition 1. Introduzione al corso Java da 0 al web Presentazione del corso

Dettagli

SITI-Reports. Progetto SITI. Manuale Utente. SITI-Reports. ABACO S.r.l.

SITI-Reports. Progetto SITI. Manuale Utente. SITI-Reports. ABACO S.r.l. Progetto SITI Manuale Utente SITI-Reports ABACO S.r.l. ABACO S.r.l. C.so Umberto, 43 46100 Mantova (Italy) Tel +39 376 222181 Fax +39 376 222182 www.abacogroup.eu e-mail : info@abacogroup.eu 02/03/2010

Dettagli

Applicazione: SIPER Servizi In linea per il PERsonale

Applicazione: SIPER Servizi In linea per il PERsonale Riusabilità del software - Catalogo delle applicazioni Gestione Personale Applicazione: SIPER Servizi In linea per il PERsonale Amministrazione: Consiglio Nazionale delle Ricerche (CNR) Responsabile dei

Dettagli

Application Server per sviluppare applicazioni Java Enterprise

Application Server per sviluppare applicazioni Java Enterprise Application Server per sviluppare applicazioni Java Enterprise Con il termine Application Server si fa riferimento ad un contenitore, composto da diversi moduli, che offre alle applicazioni Web un ambiente

Dettagli

Tecnologie di Sviluppo per il Web

Tecnologie di Sviluppo per il Web Tecnologie di Sviluppo per il Web Applicazioni Web J2EE Framework per il Modello 2 it.unibas.pinco versione 3.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima

Dettagli

GUIDA UTENTE PRIMA NOTA SEMPLICE

GUIDA UTENTE PRIMA NOTA SEMPLICE GUIDA UTENTE PRIMA NOTA SEMPLICE (Vers. 2.0.0) Installazione... 2 Prima esecuzione... 5 Login... 6 Funzionalità... 7 Prima Nota... 8 Registrazione nuovo movimento... 10 Associazione di file all operazione...

Dettagli

License Service Manuale Tecnico

License Service Manuale Tecnico Manuale Tecnico Sommario 1. BIM Services Console...3 1.1. BIM Services Console: Menu e pulsanti di configurazione...3 1.2. Menù Azioni...4 1.3. Configurazione...4 1.4. Toolbar pulsanti...5 2. Installazione

Dettagli

Guida Utente Rev. 1.01

Guida Utente Rev. 1.01 GateCop - Software Gestione Palestra Guida Utente Rev. 1.01 Installazione e utilizzo applicazione GateCop su PC: avviare il file di installazione Gatecop.Installer.msi. Seguire le istruzioni proposte dalla

Dettagli

SDD System design document

SDD System design document UNIVERSITA DEGLI STUDI DI PALERMO FACOLTA DI INGEGNERIA CORSO DI LAUREA IN INGEGNERIA INFORMATICA TESINA DI INGEGNERIA DEL SOFTWARE Progetto DocS (Documents Sharing) http://www.magsoft.it/progettodocs

Dettagli

LA GESTIONE DELLE VISITE CLIENTI VIA WEB

LA GESTIONE DELLE VISITE CLIENTI VIA WEB LA GESTIONE DELLE VISITE CLIENTI VIA WEB L applicazione realizzata ha lo scopo di consentire agli agenti l inserimento via web dei dati relativi alle visite effettuate alla clientela. I requisiti informatici

Dettagli

Applicazione: GAS - Gestione AcceSsi

Applicazione: GAS - Gestione AcceSsi Riusabilità del software - Catalogo delle applicazioni Gestione ICT Applicazione: GAS - Gestione AcceSsi Amministrazione: Consiglio Nazionale delle Ricerche (CNR) Responsabile dei sistemi informativi Nome

Dettagli

Guida all Installazione della Binary Release di OpenSPCoop2. Guida all Installazione della Binary Release di OpenSPCoop2

Guida all Installazione della Binary Release di OpenSPCoop2. Guida all Installazione della Binary Release di OpenSPCoop2 Guida all Installazione della Binary Release di OpenSPCoop2 i Guida all Installazione della Binary Release di OpenSPCoop2 Guida all Installazione della Binary Release di OpenSPCoop2 ii Copyright 2005-2015

Dettagli

Realizzazione di uno strumento web-based per la simulazione remota di reti di sensori senza filo

Realizzazione di uno strumento web-based per la simulazione remota di reti di sensori senza filo tesi di laurea Realizzazione di uno strumento web-based per la simulazione remota di reti di sensori senza filo Anno Accademico 2009/2010 relatore Ch.mo prof. Marcello Cinque correlatore Ing. Catello di

Dettagli

Manuale d uso. Applicazione client Postecert Firma Digitale per Postemailbox

Manuale d uso. Applicazione client Postecert Firma Digitale per Postemailbox per Postemailbox Documento pubblico Pagina 1 di 22 Indice INTRODUZIONE... 3 REQUISITI... 3 SOFTWARE... 3 HARDWARE... 3 INSTALLAZIONE... 3 AGGIORNAMENTI... 4 AVVIO DELL APPLICAZIONE... 4 UTILIZZO DELL APPLICAZIONE...

Dettagli

Manuale per la compilazione del modello mediante la PROCEDURA ONLINE

Manuale per la compilazione del modello mediante la PROCEDURA ONLINE Programma Statistico Nazionale Rilevazione IST-02082 Le tecnologie dell informazione e della comunicazione nelle Pubbliche amministrazioni locali Manuale per la compilazione del modello mediante la PROCEDURA

Dettagli

Applicazioni web. Sommario. Parte 6 Servlet Java. Applicazioni web - Servlet. Alberto Ferrari 1. Servlet Introduzione alle API ed esempi

Applicazioni web. Sommario. Parte 6 Servlet Java. Applicazioni web - Servlet. Alberto Ferrari 1. Servlet Introduzione alle API ed esempi Applicazioni web Parte 6 Java Alberto Ferrari 1 Sommario Introduzione alle API ed esempi Tomcat Server per applicazioni web Alberto Ferrari 2 Alberto Ferrari 1 Java: da applet a servlet In origine Java

Dettagli

FidelJob gestione Card di fidelizzazione

FidelJob gestione Card di fidelizzazione FidelJob gestione Card di fidelizzazione Software di gestione card con credito in Punti o in Euro ad incremento o a decremento, con funzioni di ricarica Card o scala credito da Card. Versione archivio

Dettagli

InfoWeb - Manuale d utilizzo

InfoWeb - Manuale d utilizzo InfoWeb - Manuale d utilizzo Tipologia Titolo Versione Identificativo Data stampa Manuale utente Edizione 1.2 01-ManualeInfoWeb.Ita.doc 05/12/2007 INDICE 1 INTRODUZIONE... 3 1.1 ACCESSO A INFOWEB... 6

Dettagli

Avvisi di addebito/cartelle di pagamento: domanda di emissione provvedimenti

Avvisi di addebito/cartelle di pagamento: domanda di emissione provvedimenti Avvisi di addebito/cartelle di pagamento: domanda di emissione provvedimenti MANUALE UTENTE Versione procedura 2.0 Avvisi di addebito/cartelle di Pagamento: domanda di emissione provvedimenti: versione

Dettagli

Il Provvedimento del Garante

Il Provvedimento del Garante Il Provvedimento del Garante Il provvedimento del Garante per la Protezione dei dati personali relativo agli Amministratori di Sistema (AdS) Misure e accorgimenti prescritti ai titolari dei trattamenti

Dettagli

Dipartimento per le Libertà Civili e l Immigrazione

Dipartimento per le Libertà Civili e l Immigrazione Dipartimento per le Libertà Civili e l Immigrazione Sistema inoltro telematico Manuale utente Versione 10 Data aggiornamento: 14/09/2012 Pagina 1 (25) Sommario 1. Il sistema di inoltro telematico delle

Dettagli

SOFTWARE MAINTENANCE DESIGN

SOFTWARE MAINTENANCE DESIGN SOFTWARE MAINTENANCE DESIGN INTRODUZIONE... 1 1.1 Identificazione della richiesta di modifica... 2 1.2 Assegnazione di un numero di identificazione alla Change Request... 2 1.3 Classificazione del tipo

Dettagli

Comunicazione Medico Competente

Comunicazione Medico Competente Comunicazione Medico Competente Manuale utente Versione documento v.2.1 In vigore dal 22/12/2014 Numero totale di pagine 52 Indice Manuale Utente 1 Introduzione... 4 2 Registrazione utente al portale...

Dettagli

Mobility Manager 2.7 USER MANUAL. Guida. Pag. 1/11. SISTeMA s.r.l. www.sistemaits.com

Mobility Manager 2.7 USER MANUAL. Guida. Pag. 1/11. SISTeMA s.r.l. www.sistemaits.com Mobility Manager 2.7 Guida Pag. 1/11 1 Introduzione... 3 2 Guida... 4 2.1 Accedere e cambiare la password... 4 2.2 Per il mobility manager... 5 2.2.1 Configurare l indagine... 5 2.2.2 Funzionalità Mappa...

Dettagli

SCP: SCHEDULER LAYER. a cura di. Alberto Boccato

SCP: SCHEDULER LAYER. a cura di. Alberto Boccato SCP: SCHEDULER LAYER a cura di Alberto Boccato PREMESSA: Negli ultimi tre anni la nostra scuola ha portato avanti un progetto al quale ho partecipato chiamato SCP (Scuola di Calcolo Parallelo). Di fatto

Dettagli

Manuale utente Volta Control

Manuale utente Volta Control Manuale utente Volta Control www.satellitevolta.com 1 www.satellitevolta.com 2 Volta Control è un tool che permette la progettazione, l implementazione e la gestione di database Cassandra tramite interfaccia

Dettagli

Turbodoc. Archiviazione Ottica Integrata

Turbodoc. Archiviazione Ottica Integrata Turbodoc Archiviazione Ottica Integrata Archiviazione Ottica... 3 Un nuovo modo di archiviare documenti, dei e immagini... 3 I moduli di TURBODOC... 4 Creazione dell armadio virtuale... 5 Creazione della

Dettagli

Progettazione di Sistemi Interattivi. Gli strati e la rete. Struttura e supporti all implementazione di applicazioni in rete (cenni)

Progettazione di Sistemi Interattivi. Gli strati e la rete. Struttura e supporti all implementazione di applicazioni in rete (cenni) Progettazione di Sistemi Interattivi Struttura e supporti all implementazione di applicazioni in rete (cenni) Docente: Daniela Fogli Gli strati e la rete Stratificazione da un altro punto di vista: i calcolatori

Dettagli

LEZIONE 3. Il pannello di amministrazione di Drupal, configurazione del sito

LEZIONE 3. Il pannello di amministrazione di Drupal, configurazione del sito LEZIONE 3 Il pannello di amministrazione di Drupal, configurazione del sito Figura 12 pannello di controllo di Drupal il back-end Come già descritto nella lezione precedente il pannello di amministrazione

Dettagli

Università degli Studi della Basilicata. Guida Docenti alla gestione degli Appelli e alla Verbalizzazione degli esami online

Università degli Studi della Basilicata. Guida Docenti alla gestione degli Appelli e alla Verbalizzazione degli esami online Università degli Studi della Basilicata Guida Docenti alla gestione degli Appelli e alla Verbalizzazione degli esami online Gestione Appelli e Verbalizzazione online pag. 1 di 42 INDICE 1. LOGIN... 3 2.

Dettagli

5.2 UTILIZZO DELL APPLICAZIONE

5.2 UTILIZZO DELL APPLICAZIONE 5.2 UTILIZZO DELL APPLICAZIONE Base offre la possibilità di creare database strutturati in termini di oggetti, quali tabelle, formulari, ricerche e rapporti, di visualizzarli e utilizzarli in diverse modalità.

Dettagli

Estensione di un sistema per la gestione semi-automatica di siti didattici con XML

Estensione di un sistema per la gestione semi-automatica di siti didattici con XML Università degli Studi di Milano Bicocca Facoltà di Scienze Matematiche, Fisiche e Naturali Corso di Laurea in Informatica Estensione di un sistema per la gestione semi-automatica di siti didattici con

Dettagli

Componenti Web: client-side e server-side

Componenti Web: client-side e server-side Componenti Web: client-side e server-side side Attività di applicazioni web Applicazioni web: un insieme di componenti che interagiscono attraverso una rete (geografica) Sono applicazioni distribuite logicamente

Dettagli

L architettura MVC (Model- View-Controller) Introduzione

L architettura MVC (Model- View-Controller) Introduzione L architettura MVC (Model- View-Controller) Introduzione Architettura MCV L architettura MVC è un insieme di regole per strutturare un sito-web dinamico. Queste regole complicano la struttura del sito,

Dettagli

ListinoWX. Versione 2010 Estratto Dal Manuale. Depliant illustrativo. ListinoWX ScriptLab vers.2010 Depliant illustrativo

ListinoWX. Versione 2010 Estratto Dal Manuale. Depliant illustrativo. ListinoWX ScriptLab vers.2010 Depliant illustrativo ListinoWX Depliant illustrativo Versione 2010 Estratto Dal Manuale 1 ListinoWX Framework gestionale ERP nato dalla collaborazione con aziende del settore agroalimentare, adattabile a tutte quelle imprese

Dettagli

CORSO DI PROGRAMMAZIONE JAVA

CORSO DI PROGRAMMAZIONE JAVA CORSO DI PROGRAMMAZIONE JAVA Corso di Programmazione Java Standard Edition ( MODULO A) OBIETTIVI ll corso ha come obiettivo quello di introdurre la programmazione a oggetti (OOP) e di fornire solide basi

Dettagli

ESAME SCRITTO NON VERBALIZZANTE + ORALE VERBALIZZANTE

ESAME SCRITTO NON VERBALIZZANTE + ORALE VERBALIZZANTE UNIVERSITÀ DEGLI STUDI DI TORINO MANUALE PER I DOCENTI: GESTIONE APPELLI E VERBALIZZAZIONE ESAMI ONLINE ESAME SCRITTO NON VERBALIZZANTE + ORALE VERBALIZZANTE SOMMARIO ACCESSO ALLA MYUNITO DOCENTE.... p.

Dettagli

Indice generale. Il BACK-END...3 COME CONFIGURARE JOOMLA...4 Sito...4 Locale...5 Contenuti...5

Indice generale. Il BACK-END...3 COME CONFIGURARE JOOMLA...4 Sito...4 Locale...5 Contenuti...5 Guida a Joomla Indice generale Il BACK-END...3 COME CONFIGURARE JOOMLA...4 Sito...4 Locale...5 Contenuti...5 Il BACK-END La gestione di un sito Joomla ha luogo attraverso il pannello di amministrazione

Dettagli

JDBC versione base. Le classi/interfacce principali di JDBC

JDBC versione base. Le classi/interfacce principali di JDBC JDBC versione base Java Database Connectivity è il package Java per l accesso a database relazionali il package contiene interfacce e classi astratte uno dei pregi è la completa indipendenza del codice

Dettagli

CON LA CARTA DEI SERVIZI, I NOSTRI UTENTI SONO SEMPRE AL CENTRO DELLE NOSTRE ATTENZIONI.

CON LA CARTA DEI SERVIZI, I NOSTRI UTENTI SONO SEMPRE AL CENTRO DELLE NOSTRE ATTENZIONI. CARTA DEI SERVIZI La qualità del servizio nei confronti dell Utente e la soddisfazione per l utilizzo delle soluzioni sono obiettivi strategici per Sistemi. Le soluzioni software Sistemi, siano esse installate

Dettagli

SIAGAS Manuale Utente Utente non autenticato

SIAGAS Manuale Utente Utente non autenticato SIAGAS Manuale Utente Utente non autenticato 27 marzo 2007 v.1.7 SIAGAS: Manuale Utente: utente non autenticato 1/10 1 Introduzione 1.1 Destinatario del prodotto SIAGAS è uno Sportello Informativo per

Dettagli

Sistema Informativo Alice

Sistema Informativo Alice Sistema Informativo Alice Urbanistica MANUALE UTENTE MODULO PROFESSIONISTI WEB settembre 2007 INDICE 1. INTRODUZIONE...2 1.1. Cos è MPWEB?... 2 1.2. Conoscenze richieste... 2 1.3. Modalità di utilizzo...

Dettagli

Attacchi alle applicazioni web: SQL injection e Cross-site scripting (XSS)

Attacchi alle applicazioni web: SQL injection e Cross-site scripting (XSS) UNIVERSITÀ DEGLI STUDI DI CATANIA Facoltà di Ingegneria Corso di laurea Specialistica in Ingegneria Informatica Tesina di Sicurezza nei Sistemi informativi Simona Ullo Attacchi alle applicazioni web: SQL

Dettagli

UBIQUITY 6 e Server. Il documento descrive le novità introdotte con la versione 6 della piattaforma software ASEM Ubiquity.

UBIQUITY 6 e Server. Il documento descrive le novità introdotte con la versione 6 della piattaforma software ASEM Ubiquity. UBIQUITY 6 e Server Privato Introduzione Il documento descrive le novità introdotte con la versione 6 della piattaforma software ASEM Ubiquity. Versione Descrizione Data 1 Prima emissione 21/06/2015 Disclaimer

Dettagli

TeamUpdate Client. TeamPortal TeamUpdate Client 20120300

TeamUpdate Client. TeamPortal TeamUpdate Client 20120300 Client Client INDICE Introduzione... 3 Specifiche Client... 4 Contenuti... 5 Gestione contenuto... 6 Gestione documenti... 8 Contenuti locali... 11 Da gestire... 11 Cronologia... 12 Consultazione... 13

Dettagli

2.1 Installazione e configurazione LMS [4]

2.1 Installazione e configurazione LMS [4] 2.1 Installazione e configurazione LMS [4] Prerequisti per installazione su server: Versione PHP: 4.3.0 o superiori (compatibilità a php5 da versione 3.0.1) Versione MySql 3.23 o superiori Accesso FTP:

Dettagli

Manuale di riferimento di HP Web Jetadmin Database Connector Plug-in

Manuale di riferimento di HP Web Jetadmin Database Connector Plug-in Manuale di riferimento di HP Web Jetadmin Database Connector Plug-in Informazioni sul copyright 2004 Copyright Hewlett-Packard Development Company, L.P. Sono vietati la riproduzione, l'adattamento e la

Dettagli

Messa in esercizio, assistenza e aggiornamento di una Piattaform Open Source Liferay plug-in per ARPA

Messa in esercizio, assistenza e aggiornamento di una Piattaform Open Source Liferay plug-in per ARPA Messa in esercizio, assistenza e aggiornamento di una Piattaform Open Source Liferay plug-in per ARPA Pag. 1 di 16 Redatto da F. Fornasari, C. Simonelli, E. Croci (TAI) Rivisto da E.Mattei (TAI) Approvato

Dettagli

Architetture Web. parte 1. Programmazione in Ambienti Distribuiti A.A. 2003-04

Architetture Web. parte 1. Programmazione in Ambienti Distribuiti A.A. 2003-04 Architetture Web parte 1 Programmazione in Ambienti Distribuiti A.A. 2003-04 Architetture Web (1) Modello a tre livelli in cui le interazioni tra livello presentazione e livello applicazione sono mediate

Dettagli

Database e reti. Piero Gallo Pasquale Sirsi

Database e reti. Piero Gallo Pasquale Sirsi Database e reti Piero Gallo Pasquale Sirsi Approcci per l interfacciamento Il nostro obiettivo è, ora, quello di individuare i possibili approcci per integrare una base di dati gestita da un in un ambiente

Dettagli

ARCHIVIA PLUS CHIUSURA ARCHIVI

ARCHIVIA PLUS CHIUSURA ARCHIVI ARCHIVIA PLUS CHIUSURA ARCHIVI Istruzioni per la chiusura degli archivi Versione n. 2014.11.19 Del: 19/11/2014 Redatto da: Veronica Gimignani Luca Mattioli Approvato da: Claudio Caprara Categoria: File

Dettagli

Guida Utente PS Contact Manager GUIDA UTENTE

Guida Utente PS Contact Manager GUIDA UTENTE GUIDA UTENTE Installazione...2 Prima esecuzione...5 Login...7 Registrazione del programma...8 Inserimento clienti...9 Gestione contatti...11 Agenti...15 Archivi di base...16 Installazione in rete...16

Dettagli

PROGETTAZIONE E SVILUPPO DI UN. Relatore: Studente: Paolo Merialdo Valerio Barbagallo

PROGETTAZIONE E SVILUPPO DI UN. Relatore: Studente: Paolo Merialdo Valerio Barbagallo PROGETTAZIONE E SVILUPPO DI UN SIMULATORE ECONOMICO FISCALE Relatore: Studente: Paolo Merialdo Valerio Barbagallo Sommario il problema: gestione e ottimizzazione del bilancio piattaforma J2EE e framework

Dettagli

Manuale Progetto Placement

Manuale Progetto Placement Manuale Progetto Placement V. 5 del 20/06/2013 FUNZIONI PRINCIPALI: Fornire uno strumento per la gestione centralizzata di stage, alternanze e placement. Costruire un database contenente i curriculum degli

Dettagli

Porting Su Hostingjava

Porting Su Hostingjava Porting Su Hostingjava Consigli per il caricamento di una propria applicazione su hostingjava Il porting è una operazione con cui un programma, sviluppato originariamente per una piattaforma, viene"ritoccato"

Dettagli

Progetto Istanze On Line

Progetto Istanze On Line 2011 Progetto Istanze On Line 22 luglio 2011 INDICE 1 INTRODUZIONE ALL USO DELLA GUIDA... 3 1.1 SIMBOLI USATI E DESCRIZIONI... 3 2 GESTIONE DELL UTENZA... 4 2.1 COS È E A CHI È RIVOLTO... 4 2.2 NORMATIVA

Dettagli

APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO. Francesco Marchione e Dario Richichi

APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO. Francesco Marchione e Dario Richichi APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO Francesco Marchione e Dario Richichi Istituto Nazionale di Geofisica e Vulcanologia Sezione di Palermo Indice Introduzione...

Dettagli