Spago thread safety BUG. Situazione Lutente richiama una pagina PAGE con publisher jsp (padre) La jsp (padre) di presentazione fa 3 chiamate ajax a 3.

Slides:



Advertisements
Presentazioni simili
Meccanismi di IPC Problemi classici di IPC
Advertisements

CONCLUSIONE - Nucleo (o Kernel) Interagisce direttamente con lhardware Interagisce direttamente con lhardware Si occupa dellesecuzione.
Corso di Fondamenti di Informatica
Programmazione concorrente
Unità D2 Database nel web. Obiettivi Comprendere il concetto di interfaccia utente Comprendere la struttura e i livelli che compongono unapplicazione.
Java2 Esercitazioni del corso di Sistemi Informativi Marina Mongiello
Training On Line - Report. 2 Report storico Da menu: Reportistica -> Report storico Si accede alla pagina di selezione del report storico.
LABIS-SD Antonio Cuomo393/121 Clelio Quattrocchi393/127 Emanuele Zuzolo393/136 Fabio Melillo393/141 Stefano Mastrocinque393/135 Valerio Vincenzo Guarino393/155.
Scheduling in Linux (Kernel 2.6)
Esercitazione con socket
Indirizzi delle variabili A ogni variabile sono associati tre concetti fondamentali: il valore memorizzato; il tipo dati di appartenenza; lindirizzo. Il.
Informatica 2. Concetti fondamentali di programmazione Programmare vuol dire scrivere un algoritmo in un linguaggio che faccia funzionare un calcolatore.
Progettazione dei Sistemi Interattivi (a.a. 2004/05) - Lezione 6 1 Programmi concorrenti: quanto è lungo un millisecondo? In un normale personal computer.
HyperText Markup Language
Sistemi Operativi GESTIONE DEI PROCESSI.
Il linguaggio ASP Lezione 3 La connessione al database con ASP
Elaborazione di Franco Grivet Chin
AsyncTask.
Struts. Framework open source per lo sviluppo di applicazioni web su piattaforma J2EE. Progetto inizialmente sviluppato come sotto-progetto di Apache.
Gestione documenti La funzione principale di MOSAICO è il trattamento documenti. Grazie ad una corretta configurazione dellanagrafica documenti e causali,
Progetto di una architettura per lesecuzione distribuita e coordinata di azioni Progetto per lesame di Reti di Calcolatori L-S Prof. Antonio Corradi Finistauri.
Ing. Enrico Lecchini BetaTre S.r.l.
L’utente vede solo i dati della sua azienda
100% Generation: Truth or bullshit? By Salvatore Silvio Caggia 100% Generation: Truth or bullshit? By Salvatore Silvio Caggia Questo è il form di partenza.
Questa è la pagina iniziale del sito del Comune di Monterotondo Questa è la pagina iniziale del sito del Comune di Monterotondo Vai nel box in alto a destra.
MOBEX ( Mobile Extension )
Progetto di Reti di Calcolatori L-S Orchestrazione di servizi WEB
Software e sistema operativo 19-22/5/08 Informatica applicata B Cristina Bosco.
1 Reti di Calcolatori LS Prof. Antonio Corradi Progetto: Giombi Giorgio e Soffritti Luca Presentazione: Giombi Giorgio FotoContest Il primo servizio interamente.
Seconda Università degli Studi di Napoli Facoltà di Economia Corso di Informatica Prof.ssa Zahora Pina.
Fondamenti di JSP: Introduzione
Basi di Dati e Sistemi Informativi
Sistemi Informativi sul Web
Common Gateway Interface. Dynamic HTML le risposte inviate al client sono (parzialmente o totalmente) create on-the-fly (al volo) dopo aver ricevuto il.
Final Project Review byNight byNight March 15th,2012.
BIOINFO3 - Lezione 111 CGI-BIN CGI-BIN sono chiamati i programmi la cui esecuzione può essere richiesta attraverso il WEB. Il server web (httpd) della.
2000 Prentice Hall, Inc. All rights reserved. Attivazione di funzioni La chiamata/attivazione di funzione viene indicata citando il nome della funzione.
ISTITUTO STATALE DI ISTRUZIONE SUPERIORE F. ENRIQUES CORSO JAVA – PROVA INTERMEDIA DEL 12 MARZO 2007 NOME: COGNOME: ________________________________________________________________________________.
Threads.
Architettura Centralizzata di un DBMS Relazionale
ASP – Active Server Pages Introduzione Pagine Web Statiche & Dinamiche(ASP)
➲ Automazione piani di studio Calendario esami – Web docenti Servizi online.
Lezione 8.
programmazione ad oggetti
I processi.
Tavolo di coordinamento regionale della rete degli Sportelli Unici per le Attività Produttive 06 Febbraio 2013 Servizio Sportelli unici per le attività’
Eprogram informatica V anno. ASP.NET Introduzione ASP.NET (Active Server Page) è il linguaggio che, sfruttando la tecnologia.NET, permette di: -scrivere.
IL M E T O D O. IL METODO IL METODO DEFINIZIONI E REQUISITI DEFINIZIONI E REQUISITI METODO vs OBIETTIVO METODO vs OBIETTIVO LE DUE DIMENSIONI DEL METODO.
TW Asp - Active Server Pages Nicola Gessa. TW Nicola Gessa Introduzione n Con l’acronimo ASP (Active Server Pages) si identifica NON un linguaggio di.
Protocolli e architetture per WIS. Cronologia di Internet ricerche sulla commutazione di pacchetto (Leonard Kleinrock) 1967 Nasce il progetto.
1 Processi e Thread Meccanismi di IPC (2) Problemi classici di IPC.
Sistemi di elaborazione dell’informazione Modulo 3 -Protocolli applicativi Unità didattica 1 -Domain Name System Ernesto Damiani Lezione 3 – Complementi.
UML Corso ingegneria del software. UML Attore: cittadino - utente Caso d’uso: ricerca di una licenza edilizia 1.Visualizzata la pagina relativa all’interrogazione.
1 Processi e Thread Processi Thread Meccanismi di comunicazione fra processi (IPC) Problemi classici di IPC Scheduling Processi e thread in Unix Processi.
Lezione 6: Form.  In alcuni documenti HTML può essere utile creare dei moduli (form) che possono essere riempiti da chi consulta le pagine stesse (es.
Eprogram informatica V anno.
Dms24 -> Cms. Il Content Management System è un modulo di Dms24 che si pone come obiettivo la pubblicazione dei documenti. Con il termine ‘pubblicazione’
Il software Aleph caratteristiche e funzionalità Aleph500 v ersione seminario a cura di Libera Marinelli Università di Genova - Centro di servizi.
12 dicembre Analisi di sicurezza dell’applicazione SISS Security Assessment dell’applicativo e Reversing del client.
STRUMENTI UTILIZZATI PASSAGGI ESEGUITI Per prima cosa abbiamo disegnato con un filo da spago e del gesso il cerchio segnando il centro. Successivamente.
Scopri come consultare la tua posizione debitoria aggiornata comodamente da casa… l’elenco delle cartelle e degli avvisi di pagamento relativi al tuo codice.
Eprogram informatica V anno. Programmare in rete.
+ Geolocalizzazione Nicolò Sordoni. + Servizi di localizzazione In Windows Phone, la posizione dell’utente può essere rilevata in 3 differenti modi: GPS:
© 2016 Giorgio Porcu - Aggiornamennto 18/03/2016 I STITUTO T ECNICO SECONDO BIENNIO T ECNOLOGIE E P ROGETTAZIONE Il Sistema Operativo Concorrenza e Grafi.
Eccezioni in Java. Le eccezioni in Java Exception handling: insieme di costrutti e regole sintattiche e semantiche presenti nel linguaggio allo scopo.
Occhio al QR Code! Cosa è un QR Code? QR … Quick Response! … ;o) I QR code (dall’inglese Quick Response, risposta rapida) sono codici bidimensionali.
1 OpenACS Quasi tutte le applicazioni Web hanno gli stessi fabbisogni 1.Rappresentare persone e relazioni 2.Controllare l’accesso a funzionalità e dati.
Registro personale.
Transcript della presentazione:

Spago thread safety BUG

Situazione Lutente richiama una pagina PAGE con publisher jsp (padre) La jsp (padre) di presentazione fa 3 chiamate ajax a 3 PAGE spago diverse

Passo 2 Ogni page richiamata via ajax ha un publisher jsp (figlie) Ogni jsp figlia si limita a mostrare la service response tramite oggetti diversi in tempi diversi: –ResponseContainerAccess.getResponseContainer(request).getServiceResponse() –ResponseContainer.getResponseContainer().getServiceResponse() –E anche dopo un attesa di 100ms. –ResponseContainerAccess.getResponseContainer(request).getServiceResponse() –ResponseContainer.getResponseContainer().getServiceResponse() In teoria le 4 textarea dovrebbero mostrare la service_response prodotta dalla PAGE corrispondente

Codice JSP (figlie) – – ResponseContainerAccess.getResponseContainer(request).getServiceResponse() – – ResponseContainer.getResponseContainer().getServiceResponse() – – Sleep di 100ms –<% –Thread t = new Thread(); –t.sleep(100); –%> – – ResponseContainerAccess.getResponseContainer(request).getServiceResponse() – – ResponseContainer.getResponseContainer().getServiceResponse() –

BUG? In pratica, a fronte di più richieste contemporanee ( es 3 chiamate ajax ) eseguite su pagine diverse il ResponseContainerAccess confonde la service response di request con quella di unaltra. Il risultato è visibile nel seguente screenshoot Nella stessa jsp laccesso alla serviceResponse in istanti diversi produce risultati diversi (sempre nellesecuzione della stessa page)

in particolare la serviceResponse errata visualizzata dalla chiamata ajax 1 è relativa a quella prodotta da unaltra chiamata ajax Page 2 Ajax Page 1 AjaxPage 2 AjaxPage 3