EJB Components. Leonardo Mariani Esercitazione di Sistemi Distribuiti. Oggetti Distribuiti



Documenti analoghi
EJB Components. Leonardo Mariani Esercitazione di Sistemi Distribuiti. Oggetti Distribuiti

1 EJB e Portal Component Object

Gli EJB offrono vari vantaggi allo sviluppatore di una applicazione

1 Applicazione J2EE sul SAP WAS con SAP NWDS

Application Server per sviluppare applicazioni Java Enterprise

Tomcat & Servlet. Contenuti. Programmazione in Ambienti Distribuiti. Tomcat Applicazioni Web. Servlet JSP Uso delle sessioni

Stateless Session Bean

Stateless Session Bean

Java Enterprise Edi.on. Gabriele Tolomei DAIS Università Ca Foscari Venezia

Alma Mater Studiorum Università di Bologna. Scuola di Ingegneria e Architettura. Tecnologie Web T. Esercitazione 10 - J2EE 25/05/2015

Primi passi con Apache Tomcat. L application server dell Apache group

POLITECNICO DI TORINO III Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica TESI DI LAUREA

MANUALE DI INSTALLAZIONE

Guida all Installazione del ProxyFatturaPA

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

Tale attività non è descritta in questa dispensa

Introduzione all uso di Eclipse

Integration Software S.r.l.

Una breve presentazione. Basati sulla specifica EJB Sun Microsystems. Consentono di costruire applicazioni ad oggetti distribuite, utilizzando Java

D. Rosaci. Java2 Enterprise Edition

Progetto di Ingegneria del Software 2. SWIMv2

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

Progettazione: Tecnologie e ambienti di sviluppo

L ambiente di sviluppo Android Studio

ProgettAzione V anno Unità 3 - Architetture per applicazioni web Lezione: Esempio sviluppo applicazioni

Gestione di database lato server, appunti di configurazione

Java Web Services. Uso di Eclipse e Apache Axis

Tecnologie di Sviluppo per il Web

Guida rapida di installazione e configurazione

Eclipse e Subversion

Programmazione server-side: Java Servlet

GovPay 2.0. Manuale Installazione

Enterprise Java Beans e Web Services

Installazione Alfresco Avanzata

POSTECERT POST CERTIFICATA GUIDA ALL USO DELLA WEBMAIL

Tutorial sugli ambienti di sviluppo: Eclipse e NetBeans

Sommario. Introduzione Architettura Client-Server. Server Web Browser Web. Architettura a Due Livelli Architettura a Tre Livelli

Tutorial web Application

AMBIENTE DEV PASCAL. Dev-Pascal Finestra di apertura

Eclipse. Avviare un progetto e compilare un semplice programma

Guida all uso dell ambiente di sviluppo 1 integrato o IDE. JCreator LE 4.50

CORSO DI PROGRAMMAZIONE JAVA

1 JSPDynPage, componenti portale e Java Server Pages

Architetture Web: un ripasso

3 ServletContext. Marco Tessarotto Programmazione dei Web Server Anno Accademico

Implementazione di MVC. Gabriele Pellegrinetti

Tecnologie di Sviluppo per il Web

PMF Integration Tools

La prima applicazione Java. Creazione di oggetti - 1. La prima applicazione Java: schema di esecuzione. Gianpaolo Cugola - Sistemi Informativi in Rete

La prima applicazione Java con NetBeans IDE. Dott. Ing. M. Banci, PhD

Programmazione Java Avanzata

Punto Print Il programma per stampare. Documentazione Tecnica

Panoramica: che cosa è necessario

Ambienti di Sviluppo

SOMMARIO... 2 Introduzione... 3 Configurazione Microsoft ISA Server... 4 Microsoft ISA Server Microsoft ISA Server

Installazione, configurazione e utilizzo di IIS

Container-Managed Persistence Entity Bean

J2EE (o JEE): Framework Java per lo sviluppo di applicazioni WEB Enterprise, che vivono in rete e che siano accessibili attraverso browser.

JNDI. Massimo Merro Programmazione di Rete 214 / 229

! " # $ % & % ' ( $! ) * + *, $ * " (!

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

Appunti di Informatica 1

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

Server-side Programming: Java servlets Parte II

JUG Ancona Italy Spring Framework

Programmazione Java Avanzata Spring - JDBC

Web Services con Axis Delia Di Giorgio Anna Celada 1 marzo 2005

PHI-RE. Configurazione infrastrutturale SOA. Version 1.0 Marzo, Page 1 of 17

filrbox Guida all uso dell applicazione DESKTOP Pag. 1 di 27

I file WAR. Laboratorio di Tecnologie Lato Server - V.Della Mea e I.Scagnetto, a.a. 2004/05-1

Manuale di installazione dei servizi ACI

Alma Mater Studiorum Università di Bologna. Scuola di Ingegneria e Architettura. Tecnologie Web T. Esercitazione 10 - J2EE

Esercitazione 4 JDBC

The Enterprise Service BUS. Manuale utente - VulCon

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

DEL SENDER GUIDA INTEGRATIVA ALL INSTALLAZIONE. Versione N.1.0. Data 11/05/2009. Sender - Guida integrativa alla installazione

Telematica II 5. Esercitazione/Laboratorio 1

Obiettivo della lezione. Creare e fare il deployment di un Enterprise Javabean

Utilizzare il NetBeans GUI Builder. Dott. Ing. M. Banci, PhD

Siti web centrati sui dati Architettura MVC-2: i JavaBeans

Corso di Informatica (Programmazione) Lezione 6 (31 ottobre 2008)

SPSS Inc. Data Access Pack - Istruzioni di installazione per Windows

Laboratorio di Basi di Dati

Corso Eclipse. Prerequisiti. 1 Introduzione

SWIM v2 Design Document

INTRODUZIONE A J2EE 1.4 E AI SERVIZI WEB ENTERPRISE

Il Web, HTML e Java Corso di Laurea in Ingegneria Informatica Progetto S.C.E.L.T.E.

Corso Android Corso Online Sviluppo su Cellulari con Android

Corso di Informatica Modulo T3 B2 - Database in rete

Architettura MVC-2: i JavaBeans

Alma Mater Studiorum Università di Bologna. Scuola di Ingegneria e Architettura. Tecnologie Web T. Esercitazione 10 - J2EE

PIANO DI LAVORO EFFETTIVAMENTE SVOLTO IN RELAZIONE ALLA PROGRAMMAZIONE DISCIPLINARE

IL SISTEMA PRATICO E VELOCE PER ANALISI DEL MOVIMENTO

Vittorio Scarano. Università degli Studi di Salerno. Lezione 21 Enterprise JavaBeans (7)

2015 PERIODO D IMPOSTA

Gestione Quota. Orazio Battaglia

Software utilizzato per le esercitazioni

Transcript:

EJB Components Leonardo Mariani Esercitazione di Sistemi Distribuiti 1 Oggetti Distribuiti 2

Middleware Esplicito 3 Middleware Implicito 4

Tipica Applicazione J2EE 1/2 5 Tipica Applicazione J2EE 2/2 6

EJB Components - interazioni 7 EJB Components creazione bean 8

Interfaccia Home Object La specifica interfaccia Home Object conterrà i metodi per costruire i bean 9 Interfaccia EJB Object La specifica interfaccia EJB Object conterrà i metodi business 10

Tipi di Enterprise Bean Session Bean per processi business stateful session bean stateless session bean Entity Bean per entità (persistenti) container-managed bean-managed Message-driven Bean Session bean che scambiano messaggi 11 Metodi dei Session Bean public void ejbcreate(...) public void ejbremove() public void ejbactivate() public void ejbpassivate() public void setsessioncontext(java.ejb.sessioncontext ctx) 12

Metodi degli Entity Bean public PrimaryKey ejbcreate(...) public PrimaryKey ejbfind...(...) public void ejbremove() public void ejbactivate() public void ejbpassivate() public void setsessioncontext(java.ejb.sessioncontext ctx) public void unsetentitycontext() public void ejbload() public void ejbstore() 13 Metodi dei Message Bean onmessage(message) ejbcreate() ejbremove() setmessagedrivencontext(messagedriv encontext) 14

EJB context public interface javax.ejb.ejbcontext { public javax.ejb.ejbhome getejbhome(); public javax.ejb.ejblocalhome getejblocalhome(); // metodi per transazioni } // metodi per la sicurezza 15 Dynamic Binding 1/2 JNDI InitialContext è la classe per accedere al JNDI Esempio (client)... Context ctx = new InitialContext(); Object obj = ctx.lookup( HelloHome ); (MyClassHome) myclasshome = (MyClassHome) javax.rmi.portableremoteobject.narrow(obj, MyClassHome.class); MyClass myclass = myclasshome.create()... myclass....... myclass.remove(); 16

Dynamic Binding 2/2 Per poter funzionare InitialContext ha bisogno di due informazioni: il driver JNDI e la locazione del server java Djava.naming.factory.initial= com.sun.jndi.fscontext.reffscontextfactory -Djava.naming.provider.url= ldap://ldap.funet.fi:389/c=fi nella maggior parte dei casi gli application server usano il proprio server JNDI 17 Deployment dei Componenti 1/2 18

Deployment dei Componenti 2/2 Una applicazione completa include diversi deployment descriptor: ejb-jar.xml che descrive i componenti EJB (impacchettati in file JAR) jboss.xml che fornisce informazioni sui componenti richieste da jboss parte Web: web.xml che descrive i componenti web (impacchettati in file WAR) parte Web: jboss-web.xml che fornisce informazioni sui componenti web richiesti da jboss applicazione completa: application.xml che fornisce informazioni su una applicazione completa che include componenti EJB e WEB classi comp EJBs ejb-jar.xml, jboss.xml componenti Web web.xml, jboss-web.xml JAR application.xml WAR EAR 19 Hello World 1/4 20

Hello World 2/4 21 Hello World 3/4 22

Hello World 4/4 23 Breve guida a JBoss 24

JBoss www.jboss.org J2EE compliant application server include tomcat (web container) hypersonic database (è possibile comunque integrare altri database server) Eclipse plugin per lo sviluppo di applicazioni su JBoss 25 Installazione ed esecuzione del server JBoss è disponibile in un file ZIP esecuzione del server: bin/run.bat verifica: il web server è in esecuzione su http://localhost:8080 console: http://localhost:8080/jmx-console spegnimento: bin/shutdown esecuzione come servizio: usare utility come Javaservice 26

Struttura dell installazione CARTELLE: bin -> script client -> JAR files per applicazioni client docs -> documentazione e file XML lib -> files di JBoss server -> set di configurazioni del server 27 Configurazioni del Server si differiscono per i componenti che vengono attivati (in aggiunta al microkernel JBoss) run.bat c <config-name> minimal: logging, JNDI, URL deployment scanner standard: J2EE 1.4 compliant default: configurazione di default, simile a standard all: tutti i servizi si possono creare nuove configurazioni copiando quelle esistenti 28

Struttura di una configurazione conf: contiene jboss-service.xml che specifica i servizi Core data: cartella usata da Hypesonic database deploy: cartella per il deploy di applicazioni, servizi e connettori => eliminare/aggiungere file equivale ad eliminare/aggiungere servizi lib: JAR file usati dalla configurazione corrente, ad es. driver JDBC log: cartella con file di log tmp: usata dal deployer work: usata da Tomcat per compilare JSP 29 Attivare Hypersonic Database jboss-4.0.0/server/standard/deploy/hsqldb-ds.xml, <!-- for tcp connection, allowing other processes to use the hsqldb database. This requires the org.jboss.jdbc.hypersonicdatabase mbean. --> <connection-url>jdbc:hsqldb:hsql://localhost:1701</connection-url> <!-- This mbean should be used only when using tcp connections. Uncomment when the tcp based connection-url is used. --> <mbean code="org.jboss.jdbc.hypersonicdatabase" name="jboss:service=hypersonic"> <attribute name="port">1701</attribute> <attribute name="silent">true</attribute> <attribute name="database">default</attribute> <attribute name="trace">false</attribute> <attribute name="no_system_exit">true</attribute> </mbean> 30

Eclipse plugin: JBoss IDE 31 Nuovi elementi a disposizione creazione di progetti J2EE creazione di elementi EJB Session Bean, Entity Bean, Deployment Descriptors,... creazione di elementi Web Servlet, JSP, HTML... 32

Nuovi comandi cliccando con il tasto destro su una classe si può accedere al menù J2EE add Business Method add Create Method add CMP Field... questi comandi aggiungono automaticamente le informazioni che devono essere riportate nei file di deployment 33 XDoclet XDoclet è un generatore di codice (XML, Java,...) basato su metadati (attributi) inseriti nel codice sorgente java (xdoclet.sourceforge.net) Integrazione con Eclipse Proprietà del Progetto -> XDocletConfigurations configurare gli script di creazione dei file di deployment Passi generali si crea un ejbdoclet per gli EJB si aggiungono le sottovoci per la creazione automatica di interfacce (locali e remote) e descrittori di deployment si crea un webdoclet si aggiungono le sottovoci per la creazione automatica dei descrittori di deployment 34

Packaging 1/2 Il packaging è usato per assemblare bean, elementi Web, descrittori, file di configurazione, ecc... nei corrispondenti package beans interfacce loc. e rem. ejb-jar.xml, jboss.xml JAR generato con XDoclet generato con Packaging application.xml EAR componenti Web web.xml, jboss-web.xml WAR generato manualmente 35 Packaging 2/2 Integrazione con Eclipse project properties -> Packaging configurations aggiungere un elemento per ogni pacchetto JAR, WAR o EAR aggiungere le cartelle da includere nel pacchetto aggiungere i file da includere nel pacchetto si può specificare la cartella di destinazione (contenuta nel pacchetto) si possono specificare filtri sui nomi dei file da includere 36

Deployment Si può specificare un metodo di deployment in modo da rilasciare i pacchetti generati direttamente da Eclipse Windows-> Preferences-> JBoss-IDE-> Deployer aggiungere un target di tipo FileSystem specificare la cartella deploy della configurazione del server JBoss usata premento il tasto destro su un pacchetto si può selezionare il comando di deploy 37 Esempio estratto dal tutorial JBoss 38