Ho iniziato tre anni fa a parlare di Ajax, per poi affrontare il framework Dojo... ed ora cosa ci aspetta per il futuro? Quante cose nuove dovremo imparare per le nostre applicazioni Web?
Le Xpages permettono di realizzare le applicazioni Web con estrema facilità e con una maggiore semplicità manutentiva rispetto al passato.
La sessione mostrerà l'utilizzo di questa tecnologia partendo da un'applicazione demo che verrà "smontata" e spiegata nel dettaglio.
ICT in education: examples of supporting the teachersEsko Lius
The document discusses four sources of support for integrating information and communication technology (ICT) into education: 1) Ministry and education agencies provide websites to support teacher ICT skills and school culture change, 2) Municipalities provide support materials, 3) Schools collaborate on ICT pilot projects supported by education agencies, 4) Students produce learning materials. Research shows that ICT pilot schools have led to true changes in teaching practices when teachers have strong ICT-related pedagogical competence.
Enterprise Spring and Flex applicationsmarcocasario
SpringSource ha recentemente annunciato Spring BlazeDS Integration, un nuovo progetto open source per permettere una facile integrazione tra il framework Spring e Adobe BlazeDS, una tecnologia open source basata su server Java remoting e Web messaging.
Il plugin di SpringSource fornisce un approccio più semplice ed intuitivo agli sviluppatori Spring e Java per creare Enterprise Rich Internet Applications utilizzando il framework Adobe Flex, una pietra miliare della Flash Platform.
In questa sessione ai partecipanti verrà fornita una panoramica del framework Flex e di BlazeDS, illustrando i vantaggi e le modalità di integrazione al framework Spring attraverso il plugin Spring BlazeDS.
ICT in education: examples of supporting the teachersEsko Lius
The document discusses four sources of support for integrating information and communication technology (ICT) into education: 1) Ministry and education agencies provide websites to support teacher ICT skills and school culture change, 2) Municipalities provide support materials, 3) Schools collaborate on ICT pilot projects supported by education agencies, 4) Students produce learning materials. Research shows that ICT pilot schools have led to true changes in teaching practices when teachers have strong ICT-related pedagogical competence.
Enterprise Spring and Flex applicationsmarcocasario
SpringSource ha recentemente annunciato Spring BlazeDS Integration, un nuovo progetto open source per permettere una facile integrazione tra il framework Spring e Adobe BlazeDS, una tecnologia open source basata su server Java remoting e Web messaging.
Il plugin di SpringSource fornisce un approccio più semplice ed intuitivo agli sviluppatori Spring e Java per creare Enterprise Rich Internet Applications utilizzando il framework Adobe Flex, una pietra miliare della Flash Platform.
In questa sessione ai partecipanti verrà fornita una panoramica del framework Flex e di BlazeDS, illustrando i vantaggi e le modalità di integrazione al framework Spring attraverso il plugin Spring BlazeDS.
Sviluppare funzionalità aggiuntive di utilizzo comune centralizzandone il codice. Realizzare vere e proprie applicazioni mantenendo separati codice e dati. Creare strumenti di sviluppo personalizzati estendendo le potenzialità del Lotus Domino Designer. Integrare Symphony nelle applicazioni Notes.
Sono solo alcune delle opportunità offerte agli sviluppatori Domino dall'ambiente Eclipse.
Per chi, come chi scrive (classe Lotus Notes 4.5), fa parte della vecchia guardia "LotusScript & Formule" può non essere così spontaneo abbandonare tecniche consolidate cercando nuove soluzioni a necessità note (il lato oscuro della retrocompatibilità) ma le potenzialità offerte dal lunare e multipiattaforma IDE sono tali da meritare, demo alla mano, ben più di una possibilità.
Ripetete con me: Nooootes Moooon Attaaaack!
Back to the Future: Migrare da WebForm ad ASP.NET Core gradualmente Andrea Dottor
Molte applicazione sono (ancora) sviluppate in WebForm e non possono essere convertite automaticamente ad ASP.NET Core. Una riscrittura completa in molti casi è impossibile o impensabile da attuare. In questa sessione vedremo come migrare in modo graduale queste tipologie di applicazioni verso ASP.NET Core, andando in dettaglio nelle varie problematiche che solitamente si possono presentare. La sessione deriva da un'esperienza reale, che ha permesso di conoscere (nel bene o nel male) le difficoltà che si nascondo in queste migrazioni.
Evento: https://www.xedotnet.org/eventi/one-day-enterprise-application/
This set of design patterns are related to Enterprise Patterns. In it you can find, J2EE, Presentation, Business & Integration Patterns (such as: ApplicaCon Controller, Data Transfer Object (DTO), Business Object (BO) & Data Access Object (DAO) among others ...)
Blazor è un framework per la creazione di Single Page Application (SPA) tramite l’utilizzo di C#.
Creato da Steve Sanderson e successivamente inserito in .NET Core come esperimento.
Visto l’enorme successo avuto sulla community è stato poi deciso di renderlo parte integrante dell’ecosistema .NET
Offre tutti i vantaggi di un framework front-end scrivendo codice interamente in C#.
In questa sessione faremo una panoramica a 360 gradi su Blazor, la nuovissima tecnologia Microsoft nata da una (geniale :-) idea di Steve Sanderson per lo sviluppo di applicazioni Web client basate su WebAssembly.
Nell'introduzione parlemermo brevemente di WebAssembly, spiegando di cosa si tratta e del perché questa tecnologia abbia tutte le premesse per portare uno dei più grandi "disruptive changes" nel modo di sviluppare applicazioni Web client. Passeremo poi a Blazor esaminandone prima gli aspetti architetturali e procedendo con un behind the scenes per svelare in che modo avviene la "magia" dell'interazione con il browser. Verranno poi presentate le feature che questa tecnologia offre (template project su VS, components, layouts, binding, dependency injection, hosting) sia attraverso slides che, di pari passo, con delle demo di un'applicazione funzionante realizzata in Blazor. Vedremo poi quali sono le problematiche legate a performance, deployment e distribuzione parlando delle possibili future ottimizzazioni. Infine chiuderemo con un confronto tra Blazor e i maggiori framework ora in uso per lo sviluppo di applicazioni Web client (Angular, Vue, Knockout, ecc.) e con alcune considerazioni sull'impatto che Blazor e tecnologie simili potrebbe avere a cascata per lo sviluppo Web futuro, in una sorta di "butterfly effect" nel mondo Web client.
"Alla ricerca della formula magica". Presentazione usata per il ciclo di webinar su traduzione e adattamento di siti web per AITI Emilia Romagna, novembre-dicembre 2016.
Sviluppare funzionalità aggiuntive di utilizzo comune centralizzandone il codice. Realizzare vere e proprie applicazioni mantenendo separati codice e dati. Creare strumenti di sviluppo personalizzati estendendo le potenzialità del Lotus Domino Designer. Integrare Symphony nelle applicazioni Notes.
Sono solo alcune delle opportunità offerte agli sviluppatori Domino dall'ambiente Eclipse.
Per chi, come chi scrive (classe Lotus Notes 4.5), fa parte della vecchia guardia "LotusScript & Formule" può non essere così spontaneo abbandonare tecniche consolidate cercando nuove soluzioni a necessità note (il lato oscuro della retrocompatibilità) ma le potenzialità offerte dal lunare e multipiattaforma IDE sono tali da meritare, demo alla mano, ben più di una possibilità.
Ripetete con me: Nooootes Moooon Attaaaack!
Back to the Future: Migrare da WebForm ad ASP.NET Core gradualmente Andrea Dottor
Molte applicazione sono (ancora) sviluppate in WebForm e non possono essere convertite automaticamente ad ASP.NET Core. Una riscrittura completa in molti casi è impossibile o impensabile da attuare. In questa sessione vedremo come migrare in modo graduale queste tipologie di applicazioni verso ASP.NET Core, andando in dettaglio nelle varie problematiche che solitamente si possono presentare. La sessione deriva da un'esperienza reale, che ha permesso di conoscere (nel bene o nel male) le difficoltà che si nascondo in queste migrazioni.
Evento: https://www.xedotnet.org/eventi/one-day-enterprise-application/
This set of design patterns are related to Enterprise Patterns. In it you can find, J2EE, Presentation, Business & Integration Patterns (such as: ApplicaCon Controller, Data Transfer Object (DTO), Business Object (BO) & Data Access Object (DAO) among others ...)
Blazor è un framework per la creazione di Single Page Application (SPA) tramite l’utilizzo di C#.
Creato da Steve Sanderson e successivamente inserito in .NET Core come esperimento.
Visto l’enorme successo avuto sulla community è stato poi deciso di renderlo parte integrante dell’ecosistema .NET
Offre tutti i vantaggi di un framework front-end scrivendo codice interamente in C#.
In questa sessione faremo una panoramica a 360 gradi su Blazor, la nuovissima tecnologia Microsoft nata da una (geniale :-) idea di Steve Sanderson per lo sviluppo di applicazioni Web client basate su WebAssembly.
Nell'introduzione parlemermo brevemente di WebAssembly, spiegando di cosa si tratta e del perché questa tecnologia abbia tutte le premesse per portare uno dei più grandi "disruptive changes" nel modo di sviluppare applicazioni Web client. Passeremo poi a Blazor esaminandone prima gli aspetti architetturali e procedendo con un behind the scenes per svelare in che modo avviene la "magia" dell'interazione con il browser. Verranno poi presentate le feature che questa tecnologia offre (template project su VS, components, layouts, binding, dependency injection, hosting) sia attraverso slides che, di pari passo, con delle demo di un'applicazione funzionante realizzata in Blazor. Vedremo poi quali sono le problematiche legate a performance, deployment e distribuzione parlando delle possibili future ottimizzazioni. Infine chiuderemo con un confronto tra Blazor e i maggiori framework ora in uso per lo sviluppo di applicazioni Web client (Angular, Vue, Knockout, ecc.) e con alcune considerazioni sull'impatto che Blazor e tecnologie simili potrebbe avere a cascata per lo sviluppo Web futuro, in una sorta di "butterfly effect" nel mondo Web client.
"Alla ricerca della formula magica". Presentazione usata per il ciclo di webinar su traduzione e adattamento di siti web per AITI Emilia Romagna, novembre-dicembre 2016.
1. The document discusses options for mail clients from Traveler to Verse On-Premises, including the transition from "Bring Your Own Device" to "Bring Your Own Client".
2. It provides an overview of IBM Verse On-Premises, which allows customers to deploy the Verse experience on-premises using their existing Domino infrastructure.
3. Technical details are presented on supported browsers, server platforms, and the high-level architecture involving APIs to Connections for social features.
IBM Watson Assistant
Workspace: IBM Watson Workspace
Services: IBM Watson Work Services
Platform: IBM Watson Work Platform
Developer: IBM Watson Work Developer
43
The document discusses enterprise integration and provides examples of integrating IBM products like IBM Verse and IBM Connections with Salesforce. It begins with discussing past challenges with enterprise integration and how application programming interfaces (APIs) now help enable integration. It then covers key integration challenges around data synchronization, security, and development. Live demos are presented showing how IBM Connections can be integrated into Salesforce using Lightning Out and REST APIs, and how IBM Verse and Salesforce can be integrated in a similar manner. Resources for further information are provided.
Ortocloud è arrivata seconda all'ICS del developer competition di IBM.
Permette di vedere come è stato possibile sfruttare i servizi weather di Bluemix con le XPages e noSQL Database di Domino
This document provides an overview of using Cloudant as a NoSQL database with XPages applications. It discusses why the author chose Cloudant for an HR application, introduces Cloudant and how it works, and shows how to connect to Cloudant from XPages using a Cloudant connector. Code examples demonstrate storing, retrieving, searching, and attaching files in Cloudant from XPages applications.
1. IBM Connections is a collaboration and social software platform that allows users to work together even when they are in different locations or time zones. It facilitates sharing and collaboration through features like communities, files, activities, and integration with other applications.
2. The document discusses the benefits of community sharing over individual sharing in IBM Connections, including shared ownership and granular access rights for community members. It also covers the differences between public, restricted, and private access settings for shared content.
3. Attachments are meant to accompany other items and are static, while files in IBM Connections allow for editing, versioning, commenting, liking, and flexible sharing settings depending on whether the file is personal or community-
This document provides various legal disclaimers and notices for information presented about IBM's Verse product. It states that product plans are subject to change without notice, and limits IBM's liability. It also notes that any statements about IBM's future intent or product plans could change or be withdrawn without notice. Performance data presented may have been obtained in controlled environments and may vary in other settings.
IBM presented its Notes and Domino roadmap, which includes continued support for current platforms through 2021, quarterly feature packs for incremental improvements, and the general availability of Verse On-Premises in December 2016. The roadmap aims to accelerate feature delivery through a continuous update model and provide customers choice in collaboration solutions.
- Traditional collaboration tools cause too much interruption from an overload of disconnected apps, interruptions, and data.
- IBM is developing Watson Work to integrate analytics, collaboration, content and Watson's cognitive abilities into a single platform. This will help organizations empower employees by connecting them to experts, speeding access to relevant information, and providing space to work simply and together.
- Watson Work will include team messaging, compliant communication and workflows, enterprise social networks, audio and video conferencing, content management, digital signatures, and analytics. It aims to transform digital workplaces.
1. Xpages
Cosa ci sarà in questa nuova tecnologia
Autore: DanieleGrillo
Professione: Domino Developer
2. domino point day2009
Agenda
•Cosa sono le Xpages
•Da dove arrivano
•Componenti fondamentali
•Linguaggio di sviluppo ( Client Side / Server Side)
•Esempio Applicazione ( Catalog.nsf)
•Utilizzo in locale ( novità della 8.5.1)
•Suggerimenti
•Cosa ci aspetta per il futuro?
2
3. domino point day2009
Cosa sono le Xpages
• Un componente aggiuntivo di Lotus Designer
• Un framework di sviluppo basato su componenti ( come i più
comuni linguaggi visuali di programmazione)
• Tecnologia JSF ( java server faces)
• Sfruttano il back-end dei dati Lotus Domino (per ora...)
• Una soluzione Easy per lo sviluppo di applicazioni Web
• Estensione engine HTTP di Domino
• Nascono con la R 8.5 ( meglio usarle nella 8.5.1)
3
5. domino point day2009
Modello MVC
Le Xpages utilizzano il concetto di Model View Control
• L’MVC è la separazione della base dati, dalla logica applicativa di
un’applicazione e dall’interfaccia .
• Impone al programmatore ( ed è un bene) a separare
nettamente la logica applicativa dall’interfaccia e i dati.
• E’ Più facile mantenere nel tempo l’applicazione
• E’ un concetto...
5
6. domino point day2009
MVC a confronto
Control
Control Lotusscript + @formulas
Javascrip ( server-side + front side) +Agenti
View View
Sono le Xpages Sono le Form, Viste, Navigatori,
Frameset, Pages, Agent
Model
Sono le Form di Notes Model
( per ora) Sono le Form di Notes
XPAGES DOMINO CLASSICO
6
7. domino point day2009
Da dove arrivano
• Progetto IBM Workplace nato nel 2002 ed
abbandonato nel 2007
• Xpages sono la Lotus Component Designer
• Component Designer Runtime diventa XSP
Runtime
7
8. domino point day2009
Da cosa sono composte
• Controlli ( Core, Container, Altri)
• Componenti ( blocchi di codice riutilizzabili,
concetto simile alle sub.form)
• Sorgente dati ( per ora Form di domino e
viste)
• Altro ( CSS, codice X/HTML aggiuntivo, JS)
8
9. domino point day2009
I Controlli
Oggetti già pronti all’uso
che si inseriscono nella
Xpages con semplici
trascinamenti sulla
pagina ( drag&drop)
9
11. domino point day2009
Sorgente dati
Rappresenta la
sorgente dati alla
quale ci si collega
per gestire il
binding dei dati
dalla Xpages al
back-end.
Il bindig è l’associazione con la sorgente dati....non è
più “ovvia” la relazione FORM/CAMPO
11
12. domino point day2009
Codice X/HTML nel sorgente XML
12
13. domino point day2009
I TEMI
Meta fogli di stile che vengono applicati al
rendering delle xpages prima che vengano
applicati i fogli di stile delle stesse.
Prima ancora di essere mandato al browser viene
applicato il tema che può eseguire codice JSS
per decidere cosa servire...esempio in base
Browser utilizzato nell’header di una richiesta
13
15. domino point day2009
Variabili Scope
Permettono finalmente di utilizzare variabili d’ambiente senza utilizzare campi,
documenti profilo o workaround vari (cookies etc..)
• SessionScope: variabili di sessione validi per ogni sessione istanziata da ogni
utente collegato ( vive all’apertura della sessione e muore alla chiusura)
• ApplicationScope variabile globale fin tanto che è aperta l’applicazione è
globale a qualunque sessione utente
• ViewScope variabile valida localmente nella componente View corrente
• RequestScope variabile che esiste per la pagina corrente
15
17. domino point day2009
View Component
• Ha le funzioni 1:1 vista Domino ( checkbox,
ordinamenti, valori)
• E’ personalizzabile
• Ha diverse proprietà per effettuare ricerche,
filterbyCategory
• Ha un pager di navigazione personalizzabile
• Valore colonne programmabili dinamicamente
17
19. domino point day2009
Repeater Component
Un componente (fantastico! N.d.r) che può scorrere i seguenti
oggetti ( come un ciclo FOR)
• Viste
• DocumentCollection
• Array (es. La risultante di una @dbcolumn)
• Vettore (un elemento a dimensione dinamica )
n.b. La variabile del repeater è case sensitive, e dobbiamo stare
attenti a generare il codice HTML corretto in funzione del repeat
19
21. domino point day2009
Core Component
Nome Componente Binding Domino
EditBox Text/Number Field
Date Time Picker Date Time Field
Label Computed Text
RichText RichText Field
File Upload RichText Filed
File Download RichText Field
ListBox ListBox Field
CheckBox CheckBox Field
RadioButton RadioButton Field
Button Button
21
23. domino point day2009
Come agire sui controlli...
In tutte le proprietà di un componente programmabili ( se appare un rombo azzurro a
fianco della proprietà allora è possibile manipolare la stessa) è possibile agire con JSS
(javascript server side) per manipolare per esempio:
• Visibilità
• Default Value
• URL ( componente link o immagine)
• e tutte le proprietà programmabili
23
24. domino point day2009
JSS ( javascript server side)
Non stravolge il modo di programmare Lotus, in quanto sono state messe a
disposizione tutte le classi Domino (identiche a quelle LotusScript) e oltre il
90% delle @formulas con la stessa nomenclatura di metodi e proprietà!
Inoltre JSS da la possibilità di utilizzare estensioni Java
(Esempio: John Mackey ha utilizzato la libreria JDBC per mettere insieme DB
relazionali insieme ai dati Domino sulla stessa pagina)
24
25. domino point day2009
Demo – catalog.nsf
Obiettivo: Un catalogo delle applicazioni alimentato dai BP
accreditati consultabile dagli utenti web
Ruolo BP: Avere un pannello di controllo per inserire nuove
applicazioni
Ruolo Utente: Accesso anomimo che sfoglia le applicazioni per
categoria o per data
25
27. domino point day2009
Demo Live!
Link Applicazione
27
28. domino point day2009
Da cosa è composta
Lato Domino ( back-End)
- FormBP
- Form Applicazione
- Form Configurazione
Lato Xpages ( front-End)
- HomePage
- ApplicationByCategory
- BusinessPartner
- Application
28
29. domino point day2009
BP type
CodeBP [text]
NameBP [text]
AddressBP [text] 1:n Application type
CodeBP [text]
CapBP [text]
ApplicationDate [date/time]
CityBP [text]
ApplicationName [text]
ReferenceB [text]
P ApplicationCategory [listbox]
URL Web [text] ApplicationDescription [richtext]
Site
ApplicationLogo [richtext]
LogoBP [richtext]
ApplicationScrenShot [richtext]
Username [names]
ApplicationBrochure [richtext]
Ogni Bp registrato potrà inserire N applicazioni nel sistema
29
30. domino point day2009
Pagina di partenza + layout
4 Custom Control collegati:
BannerDojo
MenuBar
ViewHomePage
FooterApplication
<div id="content">
<div id="header">
</div> <!--end header -->
<div id="menu">
</div> <!--- end menubar -->
<div id="wrapper">
<div id="menusx">
MENU ACTION
</div> <!--end menusx -->
Template html
<div id="centerbody">
BODY OUTPUT
</div> <!--centerbody -->
</div> <!--end wrapper -->
<div id="footer">
FOOTER
</div> <!--end footer -->
</div> <!--end content -->
30
37. domino point day2009
Come funziona Ajax login...
Esempio proposto da Jake Howlett blogger di CodeStore e codice
scritto da Declan Lynch nel suo tutorial delle Xpages.
Utilizza la dijit.Dialog di Dojo per la finestra di inserimento delle
credenziali
Effettua una chiama xhr.Post di Dojo ( ajax posting) per inviare le
credenziali
37
40. domino point day2009
var a="<a
href="javascript:dijit.byId('lo
ginDialog').show()">Log in
Ajax</a>";
return a;
40
41. domino point day2009
Colonna dinamica in una vista
Il logo e le informazioni del BP di una particolare
applicazione viene tirato su dinamicamente
eseguendo codice JSS di esempio
41
43. domino point day2009
Proprietà
CategoryFilt
er
ViewScope
43
44. domino point day2009
Validare i campi
E’ tutto più facile con i componenti
44
45. domino point day2009
Debug applicazione...
Per avere un debugger verboso e non il classico errore 500 ...
45
46. domino point day2009
Novità con la 8.5.1
• Migliorate le performance!
• Xpages eseguibili dal client Notes ( Xul Runner
embeddato basata sull’engine Firefox 1.5)
• SSO credenziali nel client
• Editor JSS migliorato
• Maggior stabilità ( nessun crash nello sviluppo
applicativo!)
• Dojo 1.3.2
46
47. domino point day2009
Gzipping Html
Tramite Proprierties dell’applicazione
47
48. domino point day2009
Vantaggi Xpages
• Possibilità di “relazionare” in unica pagina dati proveniente da diverse
sorgenti dati
• Utilizzare le variabili Scopes
• Utilizzare @formulas ( Sintassi Javascript)
• Utilizzare tutte le classi Domino ( JS )
• Richiamare le classi Java
• Supporto Cross-browser ( grazie a Dojo)
• Utilizzare widget dojo non implementati dai componenti esistenti
• Temi
• Inserire codice HTML nel Sorgente XML
48
49. domino point day2009
Svantaggi Xpages
• Il packaging di Dojo (meno request=performance migliori)
• La libertà di controllare l’output dei controlli ( Output SEO
compliance)
• Performance Java vs Agenti LS ( nella 8.5.1 è migliorato molto)
• Il motore lato client è due generazioni indietro rispetto a
quello Web ( Firefox 1.5)
• Widget di Notes usano IE ( se devo fare una Xpages che sia
usata come Widget devo far fronte a IE)
49
50. domino point day2009
Cosa ci sarà nelle Rnext?
• Binding diretto con Database relazionali
• Come annunciato a Lotussphere ’09 supporto
per Mobile Blackberry ( firmware 5.x)
• Miglioramento di Dojo Package?
• Miglioramento perfomance
50