All Projects → amahdy → vaadin-stepbystep-demo-contacts

amahdy / vaadin-stepbystep-demo-contacts

Licence: other
Step by step demo Vaadin 8 app with simple JPA backend

Programming Languages

java
68154 projects - #9 most used programming language
CSS
56736 projects
HTML
75241 projects

Projects that are alternatives of or similar to vaadin-stepbystep-demo-contacts

roll
Roll — backend for Clojure
Stars: ✭ 73 (+461.54%)
Mutual labels:  backend
Magento2-Admin-Module-Sample
Minimal code to create an admin/backend module in Magento2
Stars: ✭ 45 (+246.15%)
Mutual labels:  backend
upper
Upper is a open source back-end framework based on the Dart language.
Stars: ✭ 39 (+200%)
Mutual labels:  backend
karibu10-helloworld-application
Karibu-DSL HelloWorld application in Vaadin 14
Stars: ✭ 14 (+7.69%)
Mutual labels:  vaadin
Authl
A library for managing federated identity
Stars: ✭ 20 (+53.85%)
Mutual labels:  backend
base-starter-angular
Base Starter for Vaadin components with Angular
Stars: ✭ 13 (+0%)
Mutual labels:  vaadin
cdi-events-playground
Demonstrates the capabilities of Java EE CDI events
Stars: ✭ 23 (+76.92%)
Mutual labels:  cdi
mateu-mdd
Open source framework for Model Driven Development (MDD)
Stars: ✭ 27 (+107.69%)
Mutual labels:  vaadin
vaadin-date-range-picker
Vaadin Flow DateRangePicker 📅 implementation
Stars: ✭ 13 (+0%)
Mutual labels:  vaadin
backend
Laravel 8 backend for a genealogy website.
Stars: ✭ 82 (+530.77%)
Mutual labels:  backend
UPES-SPE-Fest
An Instagram like Social Networking Android App for UPES SPE Fest using Firebase as backend.
Stars: ✭ 39 (+200%)
Mutual labels:  backend
flame
Ruby web-framework
Stars: ✭ 43 (+230.77%)
Mutual labels:  backend
onnxruntime backend
The Triton backend for the ONNX Runtime.
Stars: ✭ 40 (+207.69%)
Mutual labels:  backend
bootstrap helper
Bootstrap Helper für REDAXO 5
Stars: ✭ 22 (+69.23%)
Mutual labels:  backend
commun
🎩 Fully-featured framework for REST APIs and GraphQL from JSON Schema with TypeScript and MongoDB
Stars: ✭ 97 (+646.15%)
Mutual labels:  backend
ConfTalks
⚠️ Development is currently on hold 🎥 An open source index of already recorded and scheduled conference talks to help you decide if you should go. Built for all developers 👩‍💻👨‍💻
Stars: ✭ 53 (+307.69%)
Mutual labels:  backend
gosane
A sane and simple Go REST API template.
Stars: ✭ 81 (+523.08%)
Mutual labels:  backend
Stackoverflow-Clone-Frontend
Clone project of a famous Q/A website for developers built using MySQL, Express, React, Node, Sequelize 🌐
Stars: ✭ 379 (+2815.38%)
Mutual labels:  backend
SITreg
SAP Event Registration app backend
Stars: ✭ 26 (+100%)
Mutual labels:  backend
articlelist
🐣 Filter für Artikellisten
Stars: ✭ 20 (+53.85%)
Mutual labels:  backend

Published on Vaadin  Directory Stars on vaadin.com/directory

Contacts - Vaadin Project with External Backend

This is a demo Vaadin 8 project with CDI. It relies on an external backend to serve the data.

Workflow and FAQ are listed below

You are on the 'Vaadin 8' (latest) branch!

There is an older Vaadin 7 demo branch, and there is also Vaadin 7 to Vaadin 8 demo branch.

Vaadin 8 Demo

The coding process of the demo is available on this 12 minutes video

Vaadin Demo Coding in a Youtube Video

Steps are clearly divided into separate commits

Step 0 | 01:00 | Create a new maven-based Vaadin project using IntelliJ

Step 1 | 01:57 | Add the backend person-service and the add-on vaadin-cdi as dependencies

Step 2 | 02:34 | Replace servlet annotations with CDIUI annotation

Step 3 | 03:22 | Place HorizontalSplitPanel and Grid instead of demo code

Step 4 | 04:27 | Populate backend data into the grid

Step 5 | 05:08 | Create a new design file using Vaadin Designer

Step 6 | 05:26 | Create the form using Vaadin Designer

Step 7 | 07:45 | Use the design inside Java code

Step 8 | 08:25 | Add selection listener to the grid

Step 9 | 09:00 | Define data binder for the form

Step 10 | 10:01 | Save changes to the local object in the binder

Other enhancements to the code that are not mentioned in the video

Extra 1 | Add Valo style to the control buttons

Extra 2 | Add icon to the save button

Extra 3 | Add image component in the form

Extra 4 | Bind picture resource to image component

Extra 5 | Handle default and null selection in grid

Extra 6 | Organize and remove unneeded grid columns

Extra 7 | Add cancel event

Extra 8 | Add delete event

Extra 9 | Host widgetset in CDN and upgrade framework version

FAQ

  1. Where can I find the person-service? The backend service is located in this repository along with detailed steps on how to install it. You can also get it from Vaadin Directory (version 2.x only).

  2. Where can I find the backend project? Please refer to previous answer.

  3. The person-service does not work? For this demo with Vaadin 8, you must use version 2.x.

  4. I'm using Wildfly 10 as shown in the video, but I get 404 in the browser? Sometimes Wildfly deploys with version suffix, and the context root must contain this suffix. You can change it from configurations, and in this simple demo you can just append -1.0-SNAPSHOT to the context root. So the demo should be available under this URL: http://localhost:8080/contacts-1.0-SNAPSHOT/

  5. I'm using Tomcat/Jetty/..etc and it does not work? In this particular example I had to use Wildfly, because of CDI and JEE specs, the application server must fully support those specs. Otherwise in other Vaadin application, any servelet container such as tomcat and jetty will work just fine.

  6. I'm following the demo step by step, but when I refresh the browser, modifications do not appear? Sometimes you need to restart the server to be able to see modifications. In the video I was using some external tools for automatic redeployment.

  7. Is it limited to IntelliJ? You can use Eclipse, it has Vaadin Designer plugin as well. Netbeans plugin is available but currently it has limited functionalities. You can also easily get started from commandline using Maven archetype.

  8. How to install Vaadin Plugin for Eclipse? Please follow this video tutorial for installing the plugin on Eclipse.

  9. Where to find the Vaadin CDI Add-on? It's available in Vaadin Directory.

Workflow

Clone this project from GitHub

git clone https://github.com/amahdy/vaadin-stepbystep-demo-contacts.git
cd vaadin-stepbystep-demo-contacts/

To compile the entire project, run

mvn install

To run the application, run

mvn wildfly:run

The application will be available in this URL

 http://localhost:8080/contacts-1.0-SNAPSHOT/

Questions or issues? Please post them in the issues tracker.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].