
In base alle esigenze applicative ed alle modalità di erogazione individuate abbiamo adottato un'infrastruttura che offre garanzie di continuità di servizio ed un'adeguata protezione delle informazioni da accessi indesiderati.
Abbiamo selezionato tutti gli elementi dell’infrastruttura di base necessari a garantire continuità di servizio ad un data center, quali: continuità nell’erogazione di energia, sicurezza fisica degli apparati, cablaggio ethernet cat. 5 o superiore, ecc.
Per tutti i prodotti proposti è normalmente allegata una scheda tecnica del vendor recante tutte le informazioni tecniche e di certificazione.
Fra le caratteristiche più importanti che il software di infrastruttura possiede vi è sicuramente l’aderenza agli standard di mercato accettati e diffusi. Tale caratteristica porta con sé notevoli vantaggi:
La nostra proposta è interamente basata su standard di questo tipo. In particolare fa uso degli standard previsti dall’architettura J2EE, di XML e dei WebServices (oltre ovviamente ai protocolli di comunicazione quali tcp/ip, http, https ed altri).
Una definizione di dettaglio di come e dove questi standard debbano essere utilizzati sarà possibile solamente dopo la fase di analisi tecnica.
E’ la piattaforma java per la realizzazione di applicazioni enterprise. Non si tratta di un prodotto software, ma di un insieme di specifiche per la realizzazione di facilities utili a sviluppare un’applicazione enterprise.
Le API JDBC sono utilizzate per la connessione ai nostri database Oracle. Queste API si compongono di due parti:
Le API http client-side sono definite nel package java.net. Le API http server-side sono definite dalle interfacce servlet e JSP. L’uso del protocollo http su SSL è supportato in java sia client-server che server-side con le API utilizzate per l’http stesso.
Le applets sono componenti GUI che tipicamente vengono eseguite in un web browser, ma possono essere eseguite in diverse applicazioni o devices che supportano la possibilità di essere web oeriented. Utilizziamo le applets come interfaccia-utente per le applicazioni J2EE per potenziare alcuni aspetti dei nostri sistemi web.
Servlets, pagine JSP, tag-library, filtri e event-listeners vengono solitamente eseguiti in un web container e possono rispondere a richieste HTTP provenienti da client web. Queste componenti possono essere utilizzate sia per generare pagine HTML che costituiscono l’interfaccia utente per un’applicazione web, sia per generare XML o altri formati di dato, che poi possono venire manipolati da altri componenti applicativi.
Il web server su cui servlets e JSP vengono eseguite deve supportare tutto quanto è indicato nelle specifiche J2EE.
Gli EJB sono componenti java che vengono eseguiti in un ambiente che supporta le transazioni. Queste componenti solitamente contengono la business logic di un’applicazione J2EE.
L’XML è un linguaggio standard per la rappresentazione di informazioni strutturate che contiene sia le informazioni (dati) che la elementi descrittivi della struttura stessa (metadati). Attraverso questo linguaggio è possibile scambiare dati fra applicazioni diverse. E’ uno standard estremamente diffuso ed è la base per la definizione di altri meccanismi più complessi (ad esempio SOAP, XHTML, WSDL e molti altri).
Nella sua definizione più generale, un web service è un’interfaccia applicativa accessibile via network costruita usando tecnologie e protocolli standard (http, xml).
Più tecnicamente si tratta di un’applicazione web identificata da un URL le cui interfacce sono definite e descritte usando xml (definizione del W3C) che può interagire con altre applicazioni (o altri web service) in maniera prestabilita utilizzando messaggi xml scambiati attraverso protocolli internet.
Più semplicemente si tratta di un’applicazione server che implementa delle procedure disponibili a un client che le può chiamare.
L’obiettivo per cui sono stati introdotti i web service è stato quello di superare i problemi di interoperabilità tra architetture e componenti e realizzare un ambiente distribuito in cui le applicazioni possono interagire a prescindere dalle piattaforme e dai linguaggi implementativi.
Lo scenario di utilizzo dei web services presenta una situazione in cui vi sono applicazioni in punti diversi di una rete che devono comunicare tra loro. Le applicazioni possono essere implementate su piattaforme diverse e in diversi linguaggi, che interagiscono tra loro mediante un meccanismo che permette la connessione tra le applicazioni e la gestione dei dati scambiati.
I web services sono stati introdotti come possibile soluzione ai problemi di integrazione e interoperabilità. Rappresentano una nuova tecnologia per oggetti distribuiti indipendente dalla piattaforma perché si focalizza sul protocollo usato per lo scambio di dati e non sulle implementazioni che supportano tali protocolli.
Con i web services la comunicazione tra applicazioni avviene tramite lo scambio di documenti XML usando il protocollo SOAP su http (o su https o su altri protocollo di comunicazione).
Il web service invia e riceve messaggi XML dall’applicazione (generalmente client) che lo invoca.
I web service sono costituiti da tre componenti
fondamentali: SOAP, WSDL, UDDI.
E’ un protocollo di impacchettamento per i dati scambiati tra
applicazioni, basato su XML.
Permette a un client di effettuare richieste al web service e
specifica come formattare i dati. I dati sono messaggi XML. Soap
costituisce dunque un formato standard per l’encoding dei dati.
Soap è indipendente dal sistema operativo, dai linguaggi di programmazione, dall’implementazione tecnica.
Tramite soap le applicazioni condividono informazioni utilizzando messaggi codificati che entrambe capiscono.
La struttura di un messaggio SOAP è caratterizzata dalla SOAP envelope che racchiude l’intero messaggio. Il messaggio è suddiviso in un SOAP header e il un SOAP body.
L’header è opzionale e contiene informazioni su come il messaggio va processato, il body è obbligatorio e costituisce il messaggio vero e proprio che va spedito e processato.
