SlideShare une entreprise Scribd logo
1  sur  73
Télécharger pour lire hors ligne
Vaadin
7Building web applications
Peter Lehto
Vaadin Expert
What is
Vaadin?
App
lifecycle
Why
Vaadin?
Structuring
the App
Building
Responsive
Layouts
How to
get
started?
QA
Field Data
binding
Server
@Push
?
User interface
framework for
Rich Internet
Applications
with pure Java
Servlet backend
GWT frontend
Vaadin
+=
GWT
Why?
Developer
Productivity
Rich
UX
Why?
JavaScript
DOM
AJAX
JSON
…
htmljava
Why?
App
Lifecycle
http://localhost:8080/Vaadin/
App
Lifecycle
New session
Loader page
Vaadin
Loader page
Loads theme
Loads
widgetset
Fetch root
configuration
New UI instance is
created
UI.init() is called
public class MyVaadinUI extends UI {	
!
	 @WebServlet(value = "/*", asyncSupported = true)	
	 @VaadinServletConfiguration(productionMode = false, ui = MyVaadinUI.class)	
	 public static class Servlet extends VaadinServlet {	
	 }	
!
	 @Override	
	 protected void init(VaadinRequest request) {	
	 }	
}
public class MyVaadinUI extends UI {	
!
	 @WebServlet(value = "/*", asyncSupported = true)	
	 @VaadinServletConfiguration(productionMode = false, ui = MyVaadinUI.class)	
	 public static class Servlet extends VaadinServlet {	
	 }	
!
	 @Override	
	 protected void init(VaadinRequest request) {	
	 	 VerticalLayout layout = new VerticalLayout();	
!
	 	 final TextField textField = new TextField("Name");	
	 	 final Button button = new Button("Greet");	
!
	 	 layout.addComponents(textField, button);	
!
	 	 setContent(layout);		
	 }	
}
public class MyVaadinUI extends UI {	
!
	 @WebServlet(value = "/*", asyncSupported = true)	
	 @VaadinServletConfiguration(productionMode = false, ui = MyVaadinUI.class)	
	 public static class Servlet extends VaadinServlet {	
	 }	
!
	 @Override	
	 protected void init(VaadinRequest request) {	
	 	 VerticalLayout layout = new VerticalLayout();	
!
	 	 final TextField textField = new TextField("Name");	
	 	 final Button button = new Button("Greet");	
!
	 	 layout.addComponents(textField, button);	
!
	 	 setContent(layout);	
!
	 	 button.addClickListener(new Button.ClickListener() {	
	 	 	 @Override	
	 	 	 public void buttonClick(ClickEvent event) {	
	 	 	 	 Notification.show("Hello " + textField.getValue());	
	 	 	 }	
	 	 });	
	 }	
}
Vaadin
UIDL
• UI is added to
the DOM
Vaadin
Vaadin
User activity
public class MyVaadinUI extends UI {	
!
	 …	
!
	 @Override	
	 protected void init(VaadinRequest request) {	
	 	 …	
!
	 	 button.addClickListener(new Button.ClickListener() {	
	 	 	 @Override	
	 	 	 public void buttonClick(ClickEvent event) {	
	 	 	 	 Notification.show("Hello " + textField.getValue());	
	 	 	 }	
	 	 });	
	 }	
}
Vaadin
UIDL
Vaadin
Heart beats
No user activity?
3 heartbeats are missed?
UI is detached
closeIdleSession=true
Session timeout expires
after last non-heartbeat
request
Session and all of its
UIs are closed
VaadinServlet
HttpSession VaadinSession
n active users
UI
1
n
1 1
1
n
Resources
1
**
1
1 servlet
UI instance can be
preserved between
refreshes with
@PreserveOnRefresh
annotation
Structuring
the App
View: any logical
collection of
components
Structuring
the App
Navigation between
views is done by
exchanging the content
of the UI or by replacing
components in a layout
Structuring
the App
public class CustomersView extends CustomComponent implements
com.vaadin.navigator.View {	
!
	 @Override	
	 public void enter(ViewChangeEvent event) {	
	 }	
!
}
Structuring
the App
public class InvoicesView extends CustomComponent implements
com.vaadin.navigator.View {	
!
	 @Override	
	 public void enter(ViewChangeEvent event) {	
	 }	
!
}
Structuring
the App
@Override	
protected void init(VaadinRequest request) {	
	 VerticalLayout layout = new VerticalLayout();	
	 setContent(layout);	
	 	
	 Navigator navigator = new Navigator(this, layout);	
	 navigator.addView("customers", CustomerView.class);	
	 navigator.addView("invoices", InvoicesView.class);	
!
	 …	
}
Activating a view
programmatically
UI.getCurrent().getNavigator().navigateTo("customers");
Structuring
the App
http://localhost:8080/vaadin/#!customers
!
#! : Navigator identifier
customers : View name
Navigating to a view via URL
Building
Responsive
Layouts
Building
Responsive
Layouts
public class DashBoard extends CssLayout implements	
com.vaadin.navigator.View {	
!
public DashBoard() {	
	 setSizeFull();	
	 addStyleName("dashboard");	
	 	 	
	 Responsive.makeResponsive(this);	
}
Building
Responsive
Layouts
.stylename[width-range~="300-500px"]
.stylename[height-range~="300-500px"]
Server
@Push
Request-response cycle
ServerClient
State
Click
Server
@Push
Request-response cycle
with polling
ServerClient
Poll
Poll
State
Click
Progress 	

Indicator
Server
@Push
Request-response cycle
with push
ServerClient
State
Click
Progress 	

Indicator
Server
@Push
To use push
Always use locking with
UI.access(Runnable) or
VaadinSession.lock()
when modifying the UI from an
external thread
Annotate UI with @Push
Include vaadin-push JAR in
your project
Server
@Push
Technical details
Manually managed pushing
also available
Fallback to the best supported
push method: Long polling or
Streaming
Implemented with the
Atmosphere library using
WebSockets
Server
@Push
Field
Data binding
Examples of Fields
Field
Data binding
Fields are bound
to Properties
which are simple
objects with type
and value
public class Customer {	
	 private String name;	
	 private Date birthDate;	
	 private Address address;	
!
	 public String getName() {	
	 	 return name;	
	 }	
!
	 public void setName(String name) {	
	 	 this.name = name;	
	 }	
	 	
	 public Date getBirthDate() {	
	 	 return birthDate;	
	 }	
!
	 public void setBirthDate(Date birthDate) {	
	 	 this.birthDate = birthDate;	
	 }	
!
	 public Address getAddress() {	
	 	 return address;	
	 }	
!
	 public void setAddress(Address address) {	
	 	 this.address = address;	
	 }	
}
Customer customer = getCustomer();	
	 	 	
TextField nameField = new TextField();	
	 	 	
MethodProperty<String> nameProperty = 	
	 new MethodProperty<String>(customer, "name");	
!
nameField.setPropertyDataSource(nameProperty);
Field
Data binding
BeanItem<Customer>
Field
Data binding
Customer customer = getCustomer();	
!
TextField nameField = new TextField();	
	 	 	
BeanItem<Customer> customerBean = new BeanItem<Customer>(customer);	
nameField.setPropertyDataSource(customerBean.getItemProperty("name"));
Field
Data binding
FieldGroup is used to
bind multiple
properties from Item
Field
Data binding
Customer customer = getCustomer();	
	 	 	
BeanItem<Customer> customerItem = new BeanItem<Customer>(customer);	
	 	 	
FieldGroup fieldGroup = new FieldGroup(customerItem);	
fieldGroup.bind(new TextField(), "name");	
fieldGroup.bind(new PopupDateField(), "birthDate");
Field
Data binding
Fields are Buffered
and can be
Committed and
Discarded
Field
Data binding
Customer customer = getCustomer();	
	 	 	
BeanItem<Customer> customerItem = new BeanItem<Customer>(customer);	
	 	 	
FieldGroup fieldGroup = new FieldGroup(customerItem);	
fieldGroup.bind(new TextField(), "name");	
fieldGroup.bind(new PopupDateField(), “birthDate");	
!
fieldGroup.commit();
Field
Data binding
commit()
Buffering
Data source
UI Logic
Field
Button
Browser
TextField
value
change
Save button
pressed
ClickEvent
Field
Data binding
Collection<Customer> customers = getCustomers();	
BeanItemContainer<Customer> customerContainer = 	
	 new BeanItemContainer<Customer>(Customer.class, customers);	
	 	 	
Table customersTable = new Table();	
!
customersTable.setContainerDataSource(customerContainer, 	
	 Arrays.asList("name", "birthDate"));
How do I get
started ?
Eclipse
Download plugin
from Marketplace
How do I get
started ?
IntelliJ
IDEA
Built-in support
How do I get
started ?
Netbeans
Download plugin
Netbeans Plugin Portal
How do I get
started ?
mvn archetype:generate
-DarchetypeGroupId=
com.vaadin
-DarchetypeArtifactId=
vaadin-archetype-
application
-DarchetypeVersion=
7.1.15
Maven
How do I get
started ?
Download for Free
vaadin.com/book
> 600 pages
01
-93-1970-1
PDF, ePub, HTML
Ohloh
#2 used
Java Web
Framework
Community of
100.000+
By Marko Grönroos
ABOUT VAADIN
.dzone.comGetMoreRefcardz!Visitrefcardz.com#85
Getting Started with Vaadin
CONTENTS INCLUDE:
About Vaadin
Creating An Application
Components
Layout Components
Themes
Data Binding and more...
Vaadin is a server-side Ajax web application development
framework that allows you to build web applications just like
with traditional desktop frameworks, such as AWT or Swing. An
application is built from user interface components contained
hierarchically in layout components.
In the server-driven model, the application code runs on
a server, while the actual user interaction is handled by a
client-side engine running in the browser. The client-server
communications and any client-side technologies, such as
HTML and JavaScript, are invisible to the developer. As the
client-side engine runs as JavaScript in the browser, there is no
need to install plug-ins. Vaadin is released under the Apache
License 2.0.
Figure 1: Vaadin Client-Server Architecture
If the built-in selection of components is not enough, you can
Figure 2: Architecture for Vaadin Applications
Hot
Tip
You can get a reference to the application object
from any component attached to the application with
Event Listeners
In the event-driven model, user interaction with user interface
components triggers server-side events, which you can handle
Web
Browser
Client-Side
Engine
Java
Web
Server
Vaadin
UI
Components
Your
Java
Application
Web
Service
EJB
DB
Servlet Container
User
Application
Event
Listener
Data
Model
Application
Themes
Application
Resources
Default
Theme
File
Resources
External
Resources
Database
Data
Binding
Inherits Events Changes
AJAX Requests
Inherits
UI
Component
Java
Servlet
Application
Class
Web
Browser
Client-Side
Engine
brought to you by...
Questions or
Comments?
peter@vaadin.com
Questions or
Comments?

Contenu connexe

Tendances

Tendances (20)

Advance java Online Training in Hyderabad
Advance java Online Training in HyderabadAdvance java Online Training in Hyderabad
Advance java Online Training in Hyderabad
 
JavaFX Enterprise (JavaOne 2014)
JavaFX Enterprise (JavaOne 2014)JavaFX Enterprise (JavaOne 2014)
JavaFX Enterprise (JavaOne 2014)
 
Scala play-framework
Scala play-frameworkScala play-framework
Scala play-framework
 
Microservices/dropwizard
Microservices/dropwizardMicroservices/dropwizard
Microservices/dropwizard
 
MVC Demystified: Essence of Ruby on Rails
MVC Demystified: Essence of Ruby on RailsMVC Demystified: Essence of Ruby on Rails
MVC Demystified: Essence of Ruby on Rails
 
Building Java Desktop Apps with JavaFX 8 and Java EE 7
Building Java Desktop Apps with JavaFX 8 and Java EE 7Building Java Desktop Apps with JavaFX 8 and Java EE 7
Building Java Desktop Apps with JavaFX 8 and Java EE 7
 
Design & Development of Web Applications using SpringMVC
Design & Development of Web Applications using SpringMVC Design & Development of Web Applications using SpringMVC
Design & Development of Web Applications using SpringMVC
 
Batching and Java EE (jdk.io)
Batching and Java EE (jdk.io)Batching and Java EE (jdk.io)
Batching and Java EE (jdk.io)
 
Faster Java EE Builds with Gradle
Faster Java EE Builds with GradleFaster Java EE Builds with Gradle
Faster Java EE Builds with Gradle
 
Jan Stepien - Introducing structure in Clojure - Codemotion Milan 2017
Jan Stepien - Introducing structure in Clojure - Codemotion Milan 2017Jan Stepien - Introducing structure in Clojure - Codemotion Milan 2017
Jan Stepien - Introducing structure in Clojure - Codemotion Milan 2017
 
Java EE and Spring Side-by-Side
Java EE and Spring Side-by-SideJava EE and Spring Side-by-Side
Java EE and Spring Side-by-Side
 
W-JAX 2011: OSGi with Apache Karaf
W-JAX 2011: OSGi with Apache KarafW-JAX 2011: OSGi with Apache Karaf
W-JAX 2011: OSGi with Apache Karaf
 
Java EE Introduction
Java EE IntroductionJava EE Introduction
Java EE Introduction
 
Single Page Applications with AngularJS 2.0
Single Page Applications with AngularJS 2.0 Single Page Applications with AngularJS 2.0
Single Page Applications with AngularJS 2.0
 
Boost Development With Java EE7 On EAP7 (Demitris Andreadis)
Boost Development With Java EE7 On EAP7 (Demitris Andreadis)Boost Development With Java EE7 On EAP7 (Demitris Andreadis)
Boost Development With Java EE7 On EAP7 (Demitris Andreadis)
 
Java EE 8: On the Horizon
Java EE 8:  On the HorizonJava EE 8:  On the Horizon
Java EE 8: On the Horizon
 
50 New Features of Java EE 7 in 50 minutes
50 New Features of Java EE 7 in 50 minutes50 New Features of Java EE 7 in 50 minutes
50 New Features of Java EE 7 in 50 minutes
 
Play with Angular JS
Play with Angular JSPlay with Angular JS
Play with Angular JS
 
Anatomy of a Modern Node.js Application Architecture
Anatomy of a Modern Node.js Application Architecture Anatomy of a Modern Node.js Application Architecture
Anatomy of a Modern Node.js Application Architecture
 
Lecture 7 Web Services JAX-WS & JAX-RS
Lecture 7   Web Services JAX-WS & JAX-RSLecture 7   Web Services JAX-WS & JAX-RS
Lecture 7 Web Services JAX-WS & JAX-RS
 

En vedette

JavaCro'14 - Scala and Java EE 7 Development Experiences – Peter Pilgrim
JavaCro'14 - Scala and Java EE 7 Development Experiences – Peter PilgrimJavaCro'14 - Scala and Java EE 7 Development Experiences – Peter Pilgrim
JavaCro'14 - Scala and Java EE 7 Development Experiences – Peter Pilgrim
HUJAK - Hrvatska udruga Java korisnika / Croatian Java User Association
 

En vedette (20)

Тестирование производительности Ajax приложений с помощью JMeter
Тестирование производительности Ajax приложений с помощью JMeterТестирование производительности Ajax приложений с помощью JMeter
Тестирование производительности Ajax приложений с помощью JMeter
 
JavaCro'14 - Automatic database migrations – Marko Elezović
JavaCro'14 - Automatic database migrations – Marko ElezovićJavaCro'14 - Automatic database migrations – Marko Elezović
JavaCro'14 - Automatic database migrations – Marko Elezović
 
JavaCro'14 - Is there a single “correct” web architecture for business apps –...
JavaCro'14 - Is there a single “correct” web architecture for business apps –...JavaCro'14 - Is there a single “correct” web architecture for business apps –...
JavaCro'14 - Is there a single “correct” web architecture for business apps –...
 
JavaCro'14 - ZeroMQ and Java(Script) – Mladen Čikara
JavaCro'14 - ZeroMQ and Java(Script) – Mladen ČikaraJavaCro'14 - ZeroMQ and Java(Script) – Mladen Čikara
JavaCro'14 - ZeroMQ and Java(Script) – Mladen Čikara
 
JavaCro'14 - WebLogic-GlassFish-JaaS Strategy and Roadmap – Duško Vukmanović
JavaCro'14 - WebLogic-GlassFish-JaaS Strategy and Roadmap – Duško VukmanovićJavaCro'14 - WebLogic-GlassFish-JaaS Strategy and Roadmap – Duško Vukmanović
JavaCro'14 - WebLogic-GlassFish-JaaS Strategy and Roadmap – Duško Vukmanović
 
JavaCro'14 - JavaScript single-page applications i JEE, can they fit together...
JavaCro'14 - JavaScript single-page applications i JEE, can they fit together...JavaCro'14 - JavaScript single-page applications i JEE, can they fit together...
JavaCro'14 - JavaScript single-page applications i JEE, can they fit together...
 
JavaCro'14 - Drools Decision tables – form of human-readable rules – Dragan J...
JavaCro'14 - Drools Decision tables – form of human-readable rules – Dragan J...JavaCro'14 - Drools Decision tables – form of human-readable rules – Dragan J...
JavaCro'14 - Drools Decision tables – form of human-readable rules – Dragan J...
 
JavaCro'14 - Going Digital with Java EE - Peter Pilgrim
JavaCro'14 - Going Digital with Java EE - Peter PilgrimJavaCro'14 - Going Digital with Java EE - Peter Pilgrim
JavaCro'14 - Going Digital with Java EE - Peter Pilgrim
 
JavaCro'14 - Developing Google Chromecast applications on Android – Branimir ...
JavaCro'14 - Developing Google Chromecast applications on Android – Branimir ...JavaCro'14 - Developing Google Chromecast applications on Android – Branimir ...
JavaCro'14 - Developing Google Chromecast applications on Android – Branimir ...
 
JavaCro'14 - Scala and Java EE 7 Development Experiences – Peter Pilgrim
JavaCro'14 - Scala and Java EE 7 Development Experiences – Peter PilgrimJavaCro'14 - Scala and Java EE 7 Development Experiences – Peter Pilgrim
JavaCro'14 - Scala and Java EE 7 Development Experiences – Peter Pilgrim
 
JavaCro'14 - Securing web applications with Spring Security 3 – Fernando Redo...
JavaCro'14 - Securing web applications with Spring Security 3 – Fernando Redo...JavaCro'14 - Securing web applications with Spring Security 3 – Fernando Redo...
JavaCro'14 - Securing web applications with Spring Security 3 – Fernando Redo...
 
JavaCro'14 - Log as basis for distributed systems – Vjeran Marčinko
JavaCro'14 - Log as basis for distributed systems – Vjeran MarčinkoJavaCro'14 - Log as basis for distributed systems – Vjeran Marčinko
JavaCro'14 - Log as basis for distributed systems – Vjeran Marčinko
 
JavaCro'14 - JCalc Calculations in Java with open source API – Davor Sauer
JavaCro'14 - JCalc Calculations in Java with open source API – Davor SauerJavaCro'14 - JCalc Calculations in Java with open source API – Davor Sauer
JavaCro'14 - JCalc Calculations in Java with open source API – Davor Sauer
 
JavaCro'14 - Java in M2M technologies – Mango M2M software – Ivan Raguž
JavaCro'14 - Java in M2M technologies – Mango M2M software – Ivan RagužJavaCro'14 - Java in M2M technologies – Mango M2M software – Ivan Raguž
JavaCro'14 - Java in M2M technologies – Mango M2M software – Ivan Raguž
 
JavaCro'14 - Auditing of user activity through NoSQL database – Kristijan Duv...
JavaCro'14 - Auditing of user activity through NoSQL database – Kristijan Duv...JavaCro'14 - Auditing of user activity through NoSQL database – Kristijan Duv...
JavaCro'14 - Auditing of user activity through NoSQL database – Kristijan Duv...
 
JavaCro'14 - Amphinicy crown jewels our software development infrastructure –...
JavaCro'14 - Amphinicy crown jewels our software development infrastructure –...JavaCro'14 - Amphinicy crown jewels our software development infrastructure –...
JavaCro'14 - Amphinicy crown jewels our software development infrastructure –...
 
JavaCro'14 - MEAN Stack – How & When – Nenad Pećanac
JavaCro'14 - MEAN Stack – How & When – Nenad PećanacJavaCro'14 - MEAN Stack – How & When – Nenad Pećanac
JavaCro'14 - MEAN Stack – How & When – Nenad Pećanac
 
JavaCro'14 - WebSockets and OpenLayers joined with Spring – Bojan Kljajin
JavaCro'14 - WebSockets and OpenLayers joined with Spring – Bojan KljajinJavaCro'14 - WebSockets and OpenLayers joined with Spring – Bojan Kljajin
JavaCro'14 - WebSockets and OpenLayers joined with Spring – Bojan Kljajin
 
JavaCro'14 - Take Agile adoption to the next level with Integration Competenc...
JavaCro'14 - Take Agile adoption to the next level with Integration Competenc...JavaCro'14 - Take Agile adoption to the next level with Integration Competenc...
JavaCro'14 - Take Agile adoption to the next level with Integration Competenc...
 
JavaCro'14 - Vaadin scalability myth – Gordan Ivanović
JavaCro'14 - Vaadin scalability myth – Gordan IvanovićJavaCro'14 - Vaadin scalability myth – Gordan Ivanović
JavaCro'14 - Vaadin scalability myth – Gordan Ivanović
 

Similaire à JavaCro'14 - Building interactive web applications with Vaadin – Peter Lehto

Windows Store app using XAML and C#: Enterprise Product Development
Windows Store app using XAML and C#: Enterprise Product Development Windows Store app using XAML and C#: Enterprise Product Development
Windows Store app using XAML and C#: Enterprise Product Development
Mahmoud Hamed Mahmoud
 
4th semester project report
4th semester project report4th semester project report
4th semester project report
Akash Rajguru
 
A Microsoft Silverlight User Group Starter Kit Made Available for Everyone to...
A Microsoft Silverlight User Group Starter Kit Made Available for Everyone to...A Microsoft Silverlight User Group Starter Kit Made Available for Everyone to...
A Microsoft Silverlight User Group Starter Kit Made Available for Everyone to...
DataLeader.io
 
Developing your first application using FIWARE
Developing your first application using FIWAREDeveloping your first application using FIWARE
Developing your first application using FIWARE
FIWARE
 
Integrating Security Roles into Microsoft Silverlight Applications
Integrating Security Roles into Microsoft Silverlight ApplicationsIntegrating Security Roles into Microsoft Silverlight Applications
Integrating Security Roles into Microsoft Silverlight Applications
Dan Wahlin
 

Similaire à JavaCro'14 - Building interactive web applications with Vaadin – Peter Lehto (20)

Vaadin 7 CN
Vaadin 7 CNVaadin 7 CN
Vaadin 7 CN
 
Workshop: Building Vaadin add-ons
Workshop: Building Vaadin add-onsWorkshop: Building Vaadin add-ons
Workshop: Building Vaadin add-ons
 
Java Web Programming on Google Cloud Platform [3/3] : Google Web Toolkit
Java Web Programming on Google Cloud Platform [3/3] : Google Web ToolkitJava Web Programming on Google Cloud Platform [3/3] : Google Web Toolkit
Java Web Programming on Google Cloud Platform [3/3] : Google Web Toolkit
 
Google Web Toolkit
Google Web ToolkitGoogle Web Toolkit
Google Web Toolkit
 
Google Web Toolkits
Google Web ToolkitsGoogle Web Toolkits
Google Web Toolkits
 
Windows Store app using XAML and C#: Enterprise Product Development
Windows Store app using XAML and C#: Enterprise Product Development Windows Store app using XAML and C#: Enterprise Product Development
Windows Store app using XAML and C#: Enterprise Product Development
 
Vaadin DevDay 2017 - DI your UI
Vaadin DevDay 2017 - DI your UIVaadin DevDay 2017 - DI your UI
Vaadin DevDay 2017 - DI your UI
 
4th semester project report
4th semester project report4th semester project report
4th semester project report
 
softshake 2014 - Java EE
softshake 2014 - Java EEsoftshake 2014 - Java EE
softshake 2014 - Java EE
 
Multi Client Development with Spring
Multi Client Development with SpringMulti Client Development with Spring
Multi Client Development with Spring
 
Gdg dev fest hybrid apps your own mini-cordova
Gdg dev fest hybrid apps  your own mini-cordovaGdg dev fest hybrid apps  your own mini-cordova
Gdg dev fest hybrid apps your own mini-cordova
 
A Microsoft Silverlight User Group Starter Kit Made Available for Everyone to...
A Microsoft Silverlight User Group Starter Kit Made Available for Everyone to...A Microsoft Silverlight User Group Starter Kit Made Available for Everyone to...
A Microsoft Silverlight User Group Starter Kit Made Available for Everyone to...
 
Vaadin & Web Components
Vaadin & Web ComponentsVaadin & Web Components
Vaadin & Web Components
 
Developing your first application using FIWARE
Developing your first application using FIWAREDeveloping your first application using FIWARE
Developing your first application using FIWARE
 
EWD 3 Training Course Part 14: Using Ajax for QEWD Messages
EWD 3 Training Course Part 14: Using Ajax for QEWD MessagesEWD 3 Training Course Part 14: Using Ajax for QEWD Messages
EWD 3 Training Course Part 14: Using Ajax for QEWD Messages
 
Java Web Programming on Google Cloud Platform [1/3] : Google App Engine
Java Web Programming on Google Cloud Platform [1/3] : Google App EngineJava Web Programming on Google Cloud Platform [1/3] : Google App Engine
Java Web Programming on Google Cloud Platform [1/3] : Google App Engine
 
Google Web Toolkits
Google Web ToolkitsGoogle Web Toolkits
Google Web Toolkits
 
WinRT and the Web: Keeping Windows Store Apps Alive and Connected
WinRT and the Web: Keeping Windows Store Apps Alive and ConnectedWinRT and the Web: Keeping Windows Store Apps Alive and Connected
WinRT and the Web: Keeping Windows Store Apps Alive and Connected
 
Integrating Security Roles into Microsoft Silverlight Applications
Integrating Security Roles into Microsoft Silverlight ApplicationsIntegrating Security Roles into Microsoft Silverlight Applications
Integrating Security Roles into Microsoft Silverlight Applications
 
CDI @javaonehyderabad
CDI @javaonehyderabadCDI @javaonehyderabad
CDI @javaonehyderabad
 

Plus de HUJAK - Hrvatska udruga Java korisnika / Croatian Java User Association

Javantura v7 - Learning to Scale Yourself: The Journey from Coder to Leader -...
Javantura v7 - Learning to Scale Yourself: The Journey from Coder to Leader -...Javantura v7 - Learning to Scale Yourself: The Journey from Coder to Leader -...
Javantura v7 - Learning to Scale Yourself: The Journey from Coder to Leader -...
HUJAK - Hrvatska udruga Java korisnika / Croatian Java User Association
 
JavaCro'19 - The State of Java and Software Development in Croatia - Communit...
JavaCro'19 - The State of Java and Software Development in Croatia - Communit...JavaCro'19 - The State of Java and Software Development in Croatia - Communit...
JavaCro'19 - The State of Java and Software Development in Croatia - Communit...
HUJAK - Hrvatska udruga Java korisnika / Croatian Java User Association
 

Plus de HUJAK - Hrvatska udruga Java korisnika / Croatian Java User Association (20)

Java cro'21 the best tools for java developers in 2021 - hujak
Java cro'21   the best tools for java developers in 2021 - hujakJava cro'21   the best tools for java developers in 2021 - hujak
Java cro'21 the best tools for java developers in 2021 - hujak
 
JavaCro'21 - Java is Here To Stay - HUJAK Keynote
JavaCro'21 - Java is Here To Stay - HUJAK KeynoteJavaCro'21 - Java is Here To Stay - HUJAK Keynote
JavaCro'21 - Java is Here To Stay - HUJAK Keynote
 
Javantura v7 - Behaviour Driven Development with Cucumber - Ivan Lozić
Javantura v7 - Behaviour Driven Development with Cucumber - Ivan LozićJavantura v7 - Behaviour Driven Development with Cucumber - Ivan Lozić
Javantura v7 - Behaviour Driven Development with Cucumber - Ivan Lozić
 
Javantura v7 - The State of Java - Today and Tomowwow - HUJAK's Community Key...
Javantura v7 - The State of Java - Today and Tomowwow - HUJAK's Community Key...Javantura v7 - The State of Java - Today and Tomowwow - HUJAK's Community Key...
Javantura v7 - The State of Java - Today and Tomowwow - HUJAK's Community Key...
 
Javantura v7 - Learning to Scale Yourself: The Journey from Coder to Leader -...
Javantura v7 - Learning to Scale Yourself: The Journey from Coder to Leader -...Javantura v7 - Learning to Scale Yourself: The Journey from Coder to Leader -...
Javantura v7 - Learning to Scale Yourself: The Journey from Coder to Leader -...
 
JavaCro'19 - The State of Java and Software Development in Croatia - Communit...
JavaCro'19 - The State of Java and Software Development in Croatia - Communit...JavaCro'19 - The State of Java and Software Development in Croatia - Communit...
JavaCro'19 - The State of Java and Software Development in Croatia - Communit...
 
Javantura v6 - Java in Croatia and HUJAK - Branko Mihaljević, Aleksander Radovan
Javantura v6 - Java in Croatia and HUJAK - Branko Mihaljević, Aleksander RadovanJavantura v6 - Java in Croatia and HUJAK - Branko Mihaljević, Aleksander Radovan
Javantura v6 - Java in Croatia and HUJAK - Branko Mihaljević, Aleksander Radovan
 
Javantura v6 - On the Aspects of Polyglot Programming and Memory Management i...
Javantura v6 - On the Aspects of Polyglot Programming and Memory Management i...Javantura v6 - On the Aspects of Polyglot Programming and Memory Management i...
Javantura v6 - On the Aspects of Polyglot Programming and Memory Management i...
 
Javantura v6 - Case Study: Marketplace App with Java and Hyperledger Fabric -...
Javantura v6 - Case Study: Marketplace App with Java and Hyperledger Fabric -...Javantura v6 - Case Study: Marketplace App with Java and Hyperledger Fabric -...
Javantura v6 - Case Study: Marketplace App with Java and Hyperledger Fabric -...
 
Javantura v6 - How to help customers report bugs accurately - Miroslav Čerkez...
Javantura v6 - How to help customers report bugs accurately - Miroslav Čerkez...Javantura v6 - How to help customers report bugs accurately - Miroslav Čerkez...
Javantura v6 - How to help customers report bugs accurately - Miroslav Čerkez...
 
Javantura v6 - When remote work really works - the secrets behind successful ...
Javantura v6 - When remote work really works - the secrets behind successful ...Javantura v6 - When remote work really works - the secrets behind successful ...
Javantura v6 - When remote work really works - the secrets behind successful ...
 
Javantura v6 - Kotlin-Java Interop - Matej Vidaković
Javantura v6 - Kotlin-Java Interop - Matej VidakovićJavantura v6 - Kotlin-Java Interop - Matej Vidaković
Javantura v6 - Kotlin-Java Interop - Matej Vidaković
 
Javantura v6 - Spring HATEOAS hypermedia-driven web services, and clients tha...
Javantura v6 - Spring HATEOAS hypermedia-driven web services, and clients tha...Javantura v6 - Spring HATEOAS hypermedia-driven web services, and clients tha...
Javantura v6 - Spring HATEOAS hypermedia-driven web services, and clients tha...
 
Javantura v6 - End to End Continuous Delivery of Microservices for Kubernetes...
Javantura v6 - End to End Continuous Delivery of Microservices for Kubernetes...Javantura v6 - End to End Continuous Delivery of Microservices for Kubernetes...
Javantura v6 - End to End Continuous Delivery of Microservices for Kubernetes...
 
Javantura v6 - Istio Service Mesh - The magic between your microservices - Ma...
Javantura v6 - Istio Service Mesh - The magic between your microservices - Ma...Javantura v6 - Istio Service Mesh - The magic between your microservices - Ma...
Javantura v6 - Istio Service Mesh - The magic between your microservices - Ma...
 
Javantura v6 - How can you improve the quality of your application - Ioannis ...
Javantura v6 - How can you improve the quality of your application - Ioannis ...Javantura v6 - How can you improve the quality of your application - Ioannis ...
Javantura v6 - How can you improve the quality of your application - Ioannis ...
 
Javantura v6 - Just say it v2 - Pavao Varela Petrac
Javantura v6 - Just say it v2 - Pavao Varela PetracJavantura v6 - Just say it v2 - Pavao Varela Petrac
Javantura v6 - Just say it v2 - Pavao Varela Petrac
 
Javantura v6 - Automation of web apps testing - Hrvoje Ruhek
Javantura v6 - Automation of web apps testing - Hrvoje RuhekJavantura v6 - Automation of web apps testing - Hrvoje Ruhek
Javantura v6 - Automation of web apps testing - Hrvoje Ruhek
 
Javantura v6 - Master the Concepts Behind the Java 10 Challenges and Eliminat...
Javantura v6 - Master the Concepts Behind the Java 10 Challenges and Eliminat...Javantura v6 - Master the Concepts Behind the Java 10 Challenges and Eliminat...
Javantura v6 - Master the Concepts Behind the Java 10 Challenges and Eliminat...
 
Javantura v6 - Building IoT Middleware with Microservices - Mario Kusek
Javantura v6 - Building IoT Middleware with Microservices - Mario KusekJavantura v6 - Building IoT Middleware with Microservices - Mario Kusek
Javantura v6 - Building IoT Middleware with Microservices - Mario Kusek
 

Dernier

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Dernier (20)

Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 

JavaCro'14 - Building interactive web applications with Vaadin – Peter Lehto