The document discusses strategic considerations and best practices for using new web tools in plenary sessions. It cautions that while new tools exist, basic usability and design principles still apply. New tools should be tested and measured before wide adoption to see what works effectively without replacing what works already. Maintaining a strategic balance is key when exploring new tools.
PPQC was hired to conduct an enhanced due diligence review of Premier Advanced Security Systems (PASS), which designs and produces home security systems. The review uncovered serious recurring problems in PASS's order fulfillment process, with only 65% of orders in 2015 completed on time. Due to strong profit margins, PASS's management and prior due diligence efforts failed to thoroughly examine this issue. PPQC's review identified weaknesses in PASS's internal business processes for production management, supplier management, risk management, and performance measurement. Addressing these issues is necessary for PASS to stabilize its business and meet the expectations of potential investors or acquirers.
02 - Le R?le des Grappes dans la Strat¨¦gie de Sp¨¦cialisation IntelligenteMohamed Larbi BEN YOUNES
?
Le R?le des Grappes dans la Strat¨¦gie de Sp¨¦cialisation Intelligente / The Role of Clusters in Smart Specialization Strategy
Ms. Sana MRIZAK, T¨¦l¨¦com ?cole de management, ?vry, France
S¨¦minaire sur la Strat¨¦gie de Sp¨¦cialisation Intelligente / S3 organis¨¦ par l'ANPR avec le support de l'UE les 17 et 18 mai 2016 ¨¤ Hammamet.
After visiting Spain, the group started working on more project-related activities. They had a Skype meeting with Bulgaria and the children were expecting it. After some problems, they were able to have the meeting. Seeds were planted in the school and outside, and some grew into different produce like pumpkins, tomatoes, and melons. When Comenius partners visited, they brought souvenirs from their home countries for the children to explore. Students and teachers filled out questionnaires to evaluate the first year of the project. The children made presents for the partners with cuts, folds, glue and glitter.
Content Repository, Versioning and Workspaces in TYPO3 PhoenixKarsten Dambekalns
?
The document discusses content repositories, versioning, and workspaces in TYPO3 Phoenix. It provides a brief history of TYPO3's use of the Java Content Repository (JCR) specification. It notes that TYPO3 Phoenix uses its own content repository implementation rather than JCR, which avoids issues with Java vs PHP and removes unnecessary complexity. The content repository can store both website content and domain models, and supports versioning and workspaces out of the box.
That Little Something That Doesn¡¯t Quite Fit In: Intra-group Identity Tension...Antia G. Ben
?
This document discusses intra-group identity tensions around the notion of Spanish-ness. It explores what it means to be Spanish both within Spain and within the United States. It notes that identities can be fluid and what it means to be Spanish may differ both between Spain and the US, and even within each country, as cultural understandings of Spanish-ness are not fixed or uniform.
The Presence of Multiculturalism in General Music Textbooks: An Exploratory S...Antia G. Ben
?
The document discusses a study that analyzed the presence of multiculturalism in K-12 general music textbooks. It describes the study's framework, research design, findings, and discussion. The findings section shows data on the representation of different racial/ethnic populations of students among music pieces in textbooks compared to the actual student populations in both the Madison, WI school district and nationwide. Overall, the study found textbooks included music from diverse cultures but not always in direct proportion to the racial diversity of students.
Students were tasked with starting a detective diary by collecting leaves from trees in their schoolyard and researching what the leaves or fruit are used for. They had two weeks to find leaves and information, with most students starting their first herbarium. The trees identified in their schoolyard included chestnut, birch, and Gleditsia trees, with the blossom of Gleditsia being used to treat coughs.
SharePoint Online - What is an external userMarwan Tarek
?
SharePoint Online provides the tools to share content with external users. In this session, we are going to explore what does Microsoft mean by an external user, What are the options for sharing content with external users and how to define an external sharing strategy.
View session recording here
SharePoint Online External Users Defined in Office 365 Saturday Europe 2013 on Vimeo http://vimeo.com/channels/o365eu13/111821951
(1) Anna traveled to Naples, Italy with her family and classmates to participate in an exchange program. (2) The group visited various sites around Naples including Mount Vesuvius, the ancient city of Ercolano, and Sorrento along the coast. (3) Anna enjoyed learning about different cultures, seeing beautiful places, and experiencing Italian culture through food and interactions with local students.
How can community foundations and other local organizations think about creating hyperlocal sites that truly engage the community, both as participants and as creators and partners? This preso offers some ideas for discussion.
An Exploratory Study of the Motivations and Satisfactions on Mobile Web BrowsingRuby Kuo
?
1. The study aimed to understand motivations and satisfaction with mobile web browsing using uses and gratifications theory. It conducted an online survey of 63 respondents about their mobile device usage, motivations for mobile browsing, irritations, and attitudes.
2. Factor analysis identified three positive motivation factors - "pass time and pleasure", "convenient to search", and "habit". It also identified two negative irritation factors related to the device and website design limitations.
3. Only the "pass time and pleasure" motivation factor positively correlated with intention for future use, while both irritation factors negatively influenced satisfaction as expected based on uses and gratifications theory.
The document discusses developing and producing social games for web portals and social networks. The main objective is to have 50 million registered users. It discusses requirements for casual game portals and social networks. User motivations for community-based casual games with microtransactions are discussed. The development strategy is to launch games on portals like Pogo and social networks like Facebook. Forecasts predict large numbers of active users and revenue from these games and networks. Innovation involves distributing games through these casual and social gaming channels.
The Augmented Reality industry in 15 min.wimvermeulen
?
Augmented reality uses mobile devices to overlay digital information and images onto the real world. The presentation discusses the state of the augmented reality industry and highlights some of the startups in the space. It identifies key challenges like improving user interfaces, offering high-quality computer-generated imagery, precise localization, and providing added value to consumers beyond just advertising. Major applications of augmented reality include publishing, movies, gaming, and mobile advertising.
Django: utilizzo avanzato e nuove funzionalit¨¤skam
?
Django ¨¨ uno dei framework web pi¨´ apprezzati e utilizzati dalla comunit¨¤ Python (e non solo).
I suoi punti di forza sono rappresentati dal suo utilizzo rapido e intuitivo, l'ottima documentazione e una larga comunit¨¤ di sviluppatori ed utilizzatori.
A pi¨´ di un anno di distanza dal rilascio della versione 0.96 le feature e i miglioramenti introdotti sono stati molti.
La presentazione mostra alcune di queste novit¨¤ e l'utilizzo avanzato di alcuni componenti del framework.
Ho incontrato django 8 mesi fa e mi ha riconciliato con la programmazione web che francamente detestavo. Ne ho apprezzato il disegno e la chiarezza.
Qui presento una libreria -- jungle -- ed alcune applicazioni costruite attorno a django sostituendo il sistema di templating originario con 'mako', un sistema di templating recente di Michael Bayer autore fra l'altro di sqlalchemy.
Il sistema di templating di django ¨¨ forse uno degli elementi pi¨´ criticati e pi¨´ difesi dagli sviluppatori di django. L'idea di base ¨¨ che deve restare facilmente utilizzabile da una utenza (il grafico web) che ha normalmente poca dimestichezza con la programmazione motivo per cui i tradizionali elementi di programmazione sono ridotti o mancanti.
L'esperienza mia ¨¨ che in molte realt¨¤ invece chi scrive le pagine ¨¨ il programmatore stesso o persona che pu¨° imparare con uguale sforzo i rudimenti per potere usare dei sistemi di templating che permettono alcuni costrutti python.
A questo punto si aprono molte possibilit¨¤ decisamente efficaci. I template risultano molto pi¨´ leggibili senza perdere in chiarezza. Particolarmente efficace ¨¨ l'uso di layout simbolici per la creazione di form e tabelle.
La relazione vuole presentare il lavoro fatto in Thunder Systems srl negli ultimi 8 mesi e disponibile con licenza GNU tramite lo studio di alcune piccole applicazioni costruite con questa libreria fra cui un sistema di ticketing ed un sistema di gestione orari dipendenti/cartellino/badge.
The document discusses strategic considerations and best practices for using new web tools in plenary sessions. It cautions that while new tools exist, basic usability and design principles still apply. New tools should be tested and measured before wide adoption to see what works effectively without replacing what works already. Maintaining a strategic balance is key when exploring new tools.
PPQC was hired to conduct an enhanced due diligence review of Premier Advanced Security Systems (PASS), which designs and produces home security systems. The review uncovered serious recurring problems in PASS's order fulfillment process, with only 65% of orders in 2015 completed on time. Due to strong profit margins, PASS's management and prior due diligence efforts failed to thoroughly examine this issue. PPQC's review identified weaknesses in PASS's internal business processes for production management, supplier management, risk management, and performance measurement. Addressing these issues is necessary for PASS to stabilize its business and meet the expectations of potential investors or acquirers.
02 - Le R?le des Grappes dans la Strat¨¦gie de Sp¨¦cialisation IntelligenteMohamed Larbi BEN YOUNES
?
Le R?le des Grappes dans la Strat¨¦gie de Sp¨¦cialisation Intelligente / The Role of Clusters in Smart Specialization Strategy
Ms. Sana MRIZAK, T¨¦l¨¦com ?cole de management, ?vry, France
S¨¦minaire sur la Strat¨¦gie de Sp¨¦cialisation Intelligente / S3 organis¨¦ par l'ANPR avec le support de l'UE les 17 et 18 mai 2016 ¨¤ Hammamet.
After visiting Spain, the group started working on more project-related activities. They had a Skype meeting with Bulgaria and the children were expecting it. After some problems, they were able to have the meeting. Seeds were planted in the school and outside, and some grew into different produce like pumpkins, tomatoes, and melons. When Comenius partners visited, they brought souvenirs from their home countries for the children to explore. Students and teachers filled out questionnaires to evaluate the first year of the project. The children made presents for the partners with cuts, folds, glue and glitter.
Content Repository, Versioning and Workspaces in TYPO3 PhoenixKarsten Dambekalns
?
The document discusses content repositories, versioning, and workspaces in TYPO3 Phoenix. It provides a brief history of TYPO3's use of the Java Content Repository (JCR) specification. It notes that TYPO3 Phoenix uses its own content repository implementation rather than JCR, which avoids issues with Java vs PHP and removes unnecessary complexity. The content repository can store both website content and domain models, and supports versioning and workspaces out of the box.
That Little Something That Doesn¡¯t Quite Fit In: Intra-group Identity Tension...Antia G. Ben
?
This document discusses intra-group identity tensions around the notion of Spanish-ness. It explores what it means to be Spanish both within Spain and within the United States. It notes that identities can be fluid and what it means to be Spanish may differ both between Spain and the US, and even within each country, as cultural understandings of Spanish-ness are not fixed or uniform.
The Presence of Multiculturalism in General Music Textbooks: An Exploratory S...Antia G. Ben
?
The document discusses a study that analyzed the presence of multiculturalism in K-12 general music textbooks. It describes the study's framework, research design, findings, and discussion. The findings section shows data on the representation of different racial/ethnic populations of students among music pieces in textbooks compared to the actual student populations in both the Madison, WI school district and nationwide. Overall, the study found textbooks included music from diverse cultures but not always in direct proportion to the racial diversity of students.
Students were tasked with starting a detective diary by collecting leaves from trees in their schoolyard and researching what the leaves or fruit are used for. They had two weeks to find leaves and information, with most students starting their first herbarium. The trees identified in their schoolyard included chestnut, birch, and Gleditsia trees, with the blossom of Gleditsia being used to treat coughs.
SharePoint Online - What is an external userMarwan Tarek
?
SharePoint Online provides the tools to share content with external users. In this session, we are going to explore what does Microsoft mean by an external user, What are the options for sharing content with external users and how to define an external sharing strategy.
View session recording here
SharePoint Online External Users Defined in Office 365 Saturday Europe 2013 on Vimeo http://vimeo.com/channels/o365eu13/111821951
(1) Anna traveled to Naples, Italy with her family and classmates to participate in an exchange program. (2) The group visited various sites around Naples including Mount Vesuvius, the ancient city of Ercolano, and Sorrento along the coast. (3) Anna enjoyed learning about different cultures, seeing beautiful places, and experiencing Italian culture through food and interactions with local students.
How can community foundations and other local organizations think about creating hyperlocal sites that truly engage the community, both as participants and as creators and partners? This preso offers some ideas for discussion.
An Exploratory Study of the Motivations and Satisfactions on Mobile Web BrowsingRuby Kuo
?
1. The study aimed to understand motivations and satisfaction with mobile web browsing using uses and gratifications theory. It conducted an online survey of 63 respondents about their mobile device usage, motivations for mobile browsing, irritations, and attitudes.
2. Factor analysis identified three positive motivation factors - "pass time and pleasure", "convenient to search", and "habit". It also identified two negative irritation factors related to the device and website design limitations.
3. Only the "pass time and pleasure" motivation factor positively correlated with intention for future use, while both irritation factors negatively influenced satisfaction as expected based on uses and gratifications theory.
The document discusses developing and producing social games for web portals and social networks. The main objective is to have 50 million registered users. It discusses requirements for casual game portals and social networks. User motivations for community-based casual games with microtransactions are discussed. The development strategy is to launch games on portals like Pogo and social networks like Facebook. Forecasts predict large numbers of active users and revenue from these games and networks. Innovation involves distributing games through these casual and social gaming channels.
The Augmented Reality industry in 15 min.wimvermeulen
?
Augmented reality uses mobile devices to overlay digital information and images onto the real world. The presentation discusses the state of the augmented reality industry and highlights some of the startups in the space. It identifies key challenges like improving user interfaces, offering high-quality computer-generated imagery, precise localization, and providing added value to consumers beyond just advertising. Major applications of augmented reality include publishing, movies, gaming, and mobile advertising.
Django: utilizzo avanzato e nuove funzionalit¨¤skam
?
Django ¨¨ uno dei framework web pi¨´ apprezzati e utilizzati dalla comunit¨¤ Python (e non solo).
I suoi punti di forza sono rappresentati dal suo utilizzo rapido e intuitivo, l'ottima documentazione e una larga comunit¨¤ di sviluppatori ed utilizzatori.
A pi¨´ di un anno di distanza dal rilascio della versione 0.96 le feature e i miglioramenti introdotti sono stati molti.
La presentazione mostra alcune di queste novit¨¤ e l'utilizzo avanzato di alcuni componenti del framework.
Ho incontrato django 8 mesi fa e mi ha riconciliato con la programmazione web che francamente detestavo. Ne ho apprezzato il disegno e la chiarezza.
Qui presento una libreria -- jungle -- ed alcune applicazioni costruite attorno a django sostituendo il sistema di templating originario con 'mako', un sistema di templating recente di Michael Bayer autore fra l'altro di sqlalchemy.
Il sistema di templating di django ¨¨ forse uno degli elementi pi¨´ criticati e pi¨´ difesi dagli sviluppatori di django. L'idea di base ¨¨ che deve restare facilmente utilizzabile da una utenza (il grafico web) che ha normalmente poca dimestichezza con la programmazione motivo per cui i tradizionali elementi di programmazione sono ridotti o mancanti.
L'esperienza mia ¨¨ che in molte realt¨¤ invece chi scrive le pagine ¨¨ il programmatore stesso o persona che pu¨° imparare con uguale sforzo i rudimenti per potere usare dei sistemi di templating che permettono alcuni costrutti python.
A questo punto si aprono molte possibilit¨¤ decisamente efficaci. I template risultano molto pi¨´ leggibili senza perdere in chiarezza. Particolarmente efficace ¨¨ l'uso di layout simbolici per la creazione di form e tabelle.
La relazione vuole presentare il lavoro fatto in Thunder Systems srl negli ultimi 8 mesi e disponibile con licenza GNU tramite lo studio di alcune piccole applicazioni costruite con questa libreria fra cui un sistema di ticketing ed un sistema di gestione orari dipendenti/cartellino/badge.
50 minuti per svelare la tigre, il cavallo e sapere che esiste il delfino.
La nuova versione di Java implementa caratteristiche che da tempo erano attese
nello standard del linguaggio: Metadata, Generic Types, AutoBoxing e
Unboxing dei tipi primitivi, Static import, gestione dinamica dei Loop e delle
Enumeration.
Per Java 6: gestione di SystemTray e motori di scripting.
Vediamo di cosa si tratta e di come poter utilizzare queste nuove feature all'interno dei nostri programmi
Come aggiornare i dati di una tabella relazionale prima di chiavi straniere. Le quattro operazioni fondamentali. CRUD. Visualizzare una lista di righe della tabella relazionale, inserire una nuova riga, ricercare un record conoscendo la sua chiave primaria. Modificare e annullare
by Davide Cerbo e Stefano Linguerri.
Javascript viene sempre consiederato un linguaggio di serie B in cui ¨¨ impossibile seguire le buone regole della programmazione ad oggetti. Ma non ¨¨ cos¨¬! In questa presentazione scopriremo come questo sia un linguaggio in continua evoluzione e come sia possibile sviluppare seguendo i paradigmi della programmazione ad oggetti. Scopriremo tool e librerie che ci permetteranno di sviluppare creando batterie di test, oggetti mock e inserire istruzioni di log nel nostro codice. Durante questa presentazione illustreremo anche la libreria Prototype che ci sar¨¤ di supporto durante gli esempi.
Abstract:
* Introduzione a Seam ;
* Ciclo di vita di Seam;
* Component and context;
* Absolute Inversion of Control;
* Rapid Seam development (con esempio di start-up su eclipse o se si preferisce a linea di comando);
* Differenze sostanziali con la versione 3.0 / Ajax and Javascript remoting
Una rassegna sul framework per lo sviluppo in Javascript jQuery ed alcuni suoi plugin sviluppati da Microsoft: Template e Datalink
http://www.pasqualepuzio.it
2. Scopo della presentazione Introdurre il concetto di tag personalizzato; Creare una prima serie di tag in Tomcat; Utilizzare Eclipse per fare il debug dell¡¯applicazione; Creare tag personalizzati connessi con un database tramite JNDI.
3. Tag personalizzato Un tag personalizzato ¨¨ un sistema formato da Una classe java che estenda una tra le seguenti classi: javax.servlet.jsp.tagext.TagSupport; javax.servlet.jsp.tagext.BodyTagSupport; o che implementi l¡¯interfaccia javax.servlet.jsp.tagext.Tag; Un file XML descrittore dell¡¯utilizzo di questa classe Java; Una pagina Jsp che contenga un riferimento alla classe.
4. Vantaggi Permettono di semplificare la scrittura del codice JSP Vengono inserite nelle pagine JSP con una sintassi simile all¡¯HTML Forniscono un metodo per costruire del codice riutilizzabile (anche tra pi¨´ progetti) Ne esistono svariate librerie free in rete
5. Svantaggi E¡¯ NECESSARIO stabilire a priori di quali tag necessita un progetto (pena la troppa astrazione dello stesso) Sono difficili da scrivere perch¨¨: Un programmatore sar¨¤ sempre portato a scrivere ¡°un po¡¯ di codice per migliorare la classe¡± Un NON programmatore non vorr¨¤ mai utilizzare ¡°qualcosa che non sa da dove arrivi¡±
6. La classe del Tag personalizzato E¡¯ un frammento di codice Java inseribile in una pagina Jsp tramite del codice pseudo-HTML; Deve contenere alcuni metodi particolari che ne controllino il flusso di esecuzione, Ci sono due tipi di classi di tag: i gestori di tag con corpo e i gestori di tag senza corpo Sono conformi allo standars JavaBean POJO (Plain Old Java Object): Dati privati Metodi set e get pubblici per l¡¯accesso ai dati
7. Tag senza corpo (I) Sono tag HTML paragonabili ai tag HTML: <img />, <br />, <hr /> che non contengono testo apertura e chiusura. Possono gestire attributi dichiarativi, ad es: < colore:sfondo colore=¡°RED¡± /> Nome del tag Attributo dichiarativo
8. Tag senza corpo (II) Estendono la classe TagSupport , che contiene i seguenti metodi principali (dalle specifiche J2EE): int doAfterBody () ??????????Default processing for a body ? int doEndTag () ??????????Default processing of the end tag returning EVAL_PAGE. ? int doStartTag () ??????????Default processing of the start tag, returning SKIP_BODY. java.lang.Object getValue (java.lang.String?k) ??????????Get a the value associated with a key. ? java.util.Enumeration getValues () ??????????Enumerate the values kept by this tag handler. ? void setValue (java.lang.String?k, java.lang.Object?o) ??????????Associate a value with a String key.
9. Metodi da implementare Per personalizzare la nostra classe ¨¨ possibile implementare uno dei metodi visti, sapendo che: int doAfterBody () ? il metodo eseguito dopo la lettura del corpo del tag ( tutto deriva comunque dall¡¯interfaccia Tag !!! ). int doEndTag () ? il metodo eseguito al termine degli altri metodi e, generalmente, ritorna il valore int EVAL_PAGE. int doStartTag () ? il metodo eseguito prima degli altri metodi e ritorna il valore int SKIP_BODY. In caso di tag senza corpo questo ¨¨, generalmente, il metodo principale da implementare.
10. Esempio di classe per tag senza corpo Esempio di classe TagSupport: package taglib; import javax.servlet.jsp.JspException; import javax.servlet.jsp.JspTagException; import javax.servlet.jsp.tagext.TagSupport; public class DateTag extends TagSupport { public int doStartTag() throws JspException { try { pageContext.getOut().print( new java.util.Date()); } catch (Exception ex) { throw new JspTagException( "DateTag: " + ex.getMessage()); } return SKIP_BODY; } public int doEndTag() { return EVAL_PAGE; } }
11. Attributi dichiarativi Gli attributi vengono gestiti tramite i metodi setValue e getValue della classe Tag di implementazione tramite i metodi visti in precedenza: java.lang.Object getValue (java.lang.String?k) ??????????Get a the value associated with a key. ?? void setValue (java.lang.String?k, java.lang.Object?o) ??????????Associate a value with a String key. java.util.Enumeration getValues () ??????????Enumerate the values kept by this tag handler.
12. Attributi dichiarativi Per ogni attributo, cos¨¬ come per le specifiche di JavaBean, devono esistere un metodo set per recuperare il valore del tag dalla pagina JSP e un metodo get se necessario. I metodi get e set devono seguire il seguente formato di esempio: T attr; T getAttr(); void setAttr (T attr);
13. Esempio di recupero attributi package taglib; import java.text.SimpleDateFormat; import javax.servlet.jsp.JspException; import javax.servlet.jsp.JspTagException; import javax.servlet.jsp.tagext.TagSupport; public class DataFormattataTag extends TagSupport { private String formato ; public String getFormato() { return formato ; }
14. Esempio di recupero attributi public void setFormato(String formato) { this . formato = formato; } public int doStartTag() throws JspException { try { SimpleDateFormat formatter = new SimpleDateFormat( formato ); pageContext.getOut().print(formatter.format( new java.util.Date())); } catch (Exception ex) { throw new JspTagException( "DateTag: " + ex.getMessage()); } return SKIP_BODY; } public int doEndTag() { return EVAL_PAGE; } }
15. Taglib descriptor E¡¯ un file xml contenente la descrizione di utilizzo della classe tag avente estensione .tld ; Segue le regole del DTD: http :// java.sun.com/dtd/web-jsptaglibrary_1_2.dtd Si trova nella cartella WEB-INF dell¡¯applicazione Web; Definisce il comportamento di pi¨´ tag, per questo di chiama descrittore di libreria.
16. Principali tag XML nel file taglib: root <taglib>: ¨¨ la root del documento <tlib-version>: la versione delle specifiche taglib utilizzata <jsp-version>: la versione delle specifiche jsp utilizzata <short-name>: un nome descrittivo della libreria <tag>: inizia la descrizione del comportamento di una classe di tag personalizzata
17. Principali tag XML nel file taglib: <tag> <name>: il nome del tag da utilizzare nella jsp <tag-class>: la classe che implementa questo tag <attribute>: descrizione di un attributo del tag che potrebbe essere presente nella dichiarazione nella pagina jsp
18. Principali tag XML nel file taglib: <attribute> <name>: il nome dell¡¯attributo. Deve essere uguale nella dichiarazione in JSP e nella classe implementativa. <required>: specifica se l¡¯attributo ¨¨ obbligatorio o meno <rtexprvalue>: specifica se l¡¯attributo pu¨° derivare da un¡¯espressione. In caso questo dato fosse true, l¡¯espressione verrebbe calcolata prima di passarne il valore al metodo set della classe.
19. Descrittore di tag: esempio <? xml version = "1.0" encoding = "ISO-8859-1" ?> <! DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN" "http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd" > < taglib > < tlib-version > 1.0 </ tlib-version > < jsp-version > 1.2 </ jsp-version > < short-name > TagLib001 </ short-name > < tag > < name > data </ name > < tag-class > taglib.DateTag </ tag-class > </ tag > < tag > < name > dataFormattata </ name > < tag-class > taglib.DataFormattataTag </ tag-class > < attribute > < name > formato </ name > < required > true </ required > < rtexprvalue > true </ rtexprvalue > </ attribute > </ tag > </ taglib >
21. Esempio di JSP con tag personalizzati (I) <%@ taglib uri = "/WEB-INF/taglib001.tld" prefix = "t1" %> < html > < head >< title > Prima Taglib </ title ></ head > < body > < t1:data /> </ body > </ html >
22. Esempio di JSP con tag personalizzati (II) <%@ taglib uri = "/WEB-INF/taglib001.tld" prefix = "t1" %> < html > < head >< title > Prima Taglib </ title ></ head > < body > <% if (request.getParameter( "formato" )== null ) { %> < form action =" <%= request.getRequestURI() %>" method = "POST" > Formato: < input type = "text" name = "formato" />< br /> < input type = "submit" value = "Vedi" /> </ form > <% } else { %> < t1:dataFormattata formato = "dd/MM/yyyy¡° /> <% } %> </ body > </ html >
23. Tag con corpo Rispetto ai tag senza corpo, hanno la possibilit¨¤ di gestire il testo tra l¡¯apertura e la chiusura del tag Estendono la classe BodyTagSupport, che a sua volta estende TagSupport Possono anch¡¯essi gestire attributi dichiarativi nella stessa identica maniera dei tag senza corpo Poich¨¨ le specifiche XHTML limitano il numero di caratteri inseribili in un attributo, ¨¨ necessario ricorrere a questi tipi di tag per gestire alcuni processi
24. Altri metodi da implementare La classe BodyTagSupport possiede questi particolari metodi, oltre a quelli della classe TagSupport che estende: void doInitBody () Prepare for evaluation before the first body evaluation. BodyContent getBodyContent () Get current bodyContent. ? JspWriter getPreviousOut () Get surrounding out JspWriter. ? void setBodyContent ( BodyContent ?b) Prepare for evaluation of the body.
25. Esempio di tag con corpo package taglib; import java.io.IOException; import javax.servlet.jsp.JspTagException; import javax.servlet.jsp.tagext.BodyContent; import javax.servlet.jsp.tagext.BodyTagSupport; public class BodyTag extends BodyTagSupport { public int doAfterBody() throws JspTagException { BodyContent bc = getBodyContent(); String text = bc.getString(); try { bodyContent.clearBody(); bodyContent.println("Corpo: " + text); bodyContent.writeOut(bodyContent.getEnclosingWriter()); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } return SKIP_BODY; } }