This document provides an overview of Exadel and RichFaces. Exadel is a products and services company focused on Rich enterprise application development using open source technologies like JBoss Tools, RichFaces, and JavaFX. The document discusses Exadel's history and products. It then summarizes the new features in JSF 2, such as Ajax functionality, before focusing on RichFaces 4 which is based on JSF 2 and uses jQuery. RichFaces 4 includes many upgraded and new components.
Ajax Applications with JSF 2 and new RichFaces 4 - HerbstcampusMax Katz
This document provides an overview of a presentation given by Max Katz on Ajax applications with JSF 2 and RichFaces 4. The key points covered include:
- An introduction of Max Katz and his background with JSF, RichFaces, and Exadel
- An overview of Exadel as a products and services company focused on Rich enterprise application development
- A discussion of new features in JSF 2 that enable Ajax and an example of using <f:ajax>
- An overview of the new RichFaces 4 framework which is based on JSF 2 and includes upgraded Ajax components, themes, and a Component Development Kit
- A preview of some of the new and upgraded RichFaces 4
Ajax Applications with JSF 2 and New RichFaces 4 - CONFESS 2011Max Katz
This document provides a summary of a presentation given by Max Katz from Exadel on Ajax applications with JSF 2 and the new RichFaces 4 framework. The key points covered include:
- An overview of JSF 2's new features including Facelets, composites, implicit navigation, GET support, and basic Ajax functionality with <f:ajax>.
- Details on the release of RichFaces 4 in March 2011, including updates to use jQuery, redesign components following HTML principles, and improvements to performance, validation, and the new Component Development Kit.
- A demonstration of how <a4j:ajax> extends <f:ajax> with extra features like onbegin, onbeforedom
Ajax Applications with JSF2 and New RichFaces 4 at JAX 2011Max Katz
RichFaces 4 provides a lightweight framework for building rich Ajax applications with JSF 2. It contains UI components like <a4j:ajax> that extend JSF 2's basic Ajax capabilities with additional features. The presentation covered key RichFaces 4 concepts like advanced Ajax behaviors, JavaScript integration, and techniques for optimizing Ajax requests.
From Back to Front: Rails To React FamilyKhor SoonHin
ReactJS, Flux, RelayJS, GraphQL, challenges the way we think & code front-end. This presentation explains what they are, how they work together, and how to get them to work on Rails.
In React/Flux, every time a user interaction triggers a change in a piece of data, the entire set of data for all the pieces of UI flows uni-directionally from the top-level UI to its subcomponents. This strategy helps debugging tremendously since by examining data at a single point we can reason about what when wrong.
RelayJS/GraphQL abstracts the difficult parts of fetching data and caching for UIs into a framework enabling us to simply declare data that we need without having to write AJAX or deal with asynchronous code. This allows us to reduced the server-side to a single API endpoint capable of handling the GraphQL DSL.
1. The document discusses 10 things the author likes about JavaFX, which is a Java UI toolkit.
2. It provides examples of JavaFX capabilities like data binding, FXML, CSS, effects, animations, multi-touch support, charts, and integration with web views.
3. The author encourages using JavaFX instead of older toolkits like Swing, argues it is efficient and modern, and offers to provide more information to those interested in migrating from Swing to JavaFX.
For years i wanted a robust solution to organize code:
Eliminate messy code
Organize structure
Set strict rules for apps
Write simple tests that cover exactly what i need
Write Less, Think Less - Do More
I just wanted a simple hands-on philosophy in my code.
Then came NgRx/store.
This is an intro to ngrx/store and its echo-system with a usecase of Echoes Player (ng2) open source player developed with angular 2 and ngrx/store.
The document discusses the JavaFX ecosystem, including layout managers like MigLayout and Medusa, widgets like JideFX and ControlsFX, styling libraries like JFoenix and BootstrapFX, testing tools like TestFX, frameworks like Afterburner.fx and MvvmFX, integration platforms like e(fx)clipse, libraries like AnchorFX and ReactFX, and GroovyFX for writing JavaFX applications in Groovy. It provides an overview of the various options available for building JavaFX user interfaces, styling applications, testing, and developing full applications.
Ajax Applications with JSF 2 and new RichFaces 4 - HerbstcampusMax Katz
This document provides an overview of a presentation given by Max Katz on Ajax applications with JSF 2 and RichFaces 4. The key points covered include:
- An introduction of Max Katz and his background with JSF, RichFaces, and Exadel
- An overview of Exadel as a products and services company focused on Rich enterprise application development
- A discussion of new features in JSF 2 that enable Ajax and an example of using <f:ajax>
- An overview of the new RichFaces 4 framework which is based on JSF 2 and includes upgraded Ajax components, themes, and a Component Development Kit
- A preview of some of the new and upgraded RichFaces 4
Ajax Applications with JSF 2 and New RichFaces 4 - CONFESS 2011Max Katz
This document provides a summary of a presentation given by Max Katz from Exadel on Ajax applications with JSF 2 and the new RichFaces 4 framework. The key points covered include:
- An overview of JSF 2's new features including Facelets, composites, implicit navigation, GET support, and basic Ajax functionality with <f:ajax>.
- Details on the release of RichFaces 4 in March 2011, including updates to use jQuery, redesign components following HTML principles, and improvements to performance, validation, and the new Component Development Kit.
- A demonstration of how <a4j:ajax> extends <f:ajax> with extra features like onbegin, onbeforedom
Ajax Applications with JSF2 and New RichFaces 4 at JAX 2011Max Katz
RichFaces 4 provides a lightweight framework for building rich Ajax applications with JSF 2. It contains UI components like <a4j:ajax> that extend JSF 2's basic Ajax capabilities with additional features. The presentation covered key RichFaces 4 concepts like advanced Ajax behaviors, JavaScript integration, and techniques for optimizing Ajax requests.
From Back to Front: Rails To React FamilyKhor SoonHin
ReactJS, Flux, RelayJS, GraphQL, challenges the way we think & code front-end. This presentation explains what they are, how they work together, and how to get them to work on Rails.
In React/Flux, every time a user interaction triggers a change in a piece of data, the entire set of data for all the pieces of UI flows uni-directionally from the top-level UI to its subcomponents. This strategy helps debugging tremendously since by examining data at a single point we can reason about what when wrong.
RelayJS/GraphQL abstracts the difficult parts of fetching data and caching for UIs into a framework enabling us to simply declare data that we need without having to write AJAX or deal with asynchronous code. This allows us to reduced the server-side to a single API endpoint capable of handling the GraphQL DSL.
1. The document discusses 10 things the author likes about JavaFX, which is a Java UI toolkit.
2. It provides examples of JavaFX capabilities like data binding, FXML, CSS, effects, animations, multi-touch support, charts, and integration with web views.
3. The author encourages using JavaFX instead of older toolkits like Swing, argues it is efficient and modern, and offers to provide more information to those interested in migrating from Swing to JavaFX.
For years i wanted a robust solution to organize code:
Eliminate messy code
Organize structure
Set strict rules for apps
Write simple tests that cover exactly what i need
Write Less, Think Less - Do More
I just wanted a simple hands-on philosophy in my code.
Then came NgRx/store.
This is an intro to ngrx/store and its echo-system with a usecase of Echoes Player (ng2) open source player developed with angular 2 and ngrx/store.
The document discusses the JavaFX ecosystem, including layout managers like MigLayout and Medusa, widgets like JideFX and ControlsFX, styling libraries like JFoenix and BootstrapFX, testing tools like TestFX, frameworks like Afterburner.fx and MvvmFX, integration platforms like e(fx)clipse, libraries like AnchorFX and ReactFX, and GroovyFX for writing JavaFX applications in Groovy. It provides an overview of the various options available for building JavaFX user interfaces, styling applications, testing, and developing full applications.
Universal JavaScript Web Applications with React - Luciano Mammino - Codemoti...Codemotion
Since we started to see JS on the server side, the dream of developers has been to reduce the gap and the cost of switch between frontend/backend. Today with Node.js, React and a whole ecosystem of tools, this dream is becoming true! In this talk I am going to discuss about Universal (a.k.a. Isomorphic) JS and present some practical example regarding the major patterns related to routing, data retrieval and rendering. I will use Node, React, Webpack, Babel and React Router and give you a series of example to get you started easily with this new technology trend.
Tokyo React.js #3: Missing Pages: ReactJS/Flux/GraphQL/RelayJSKhor SoonHin
Missing Pages: ReactJS/Flux/GraphQL/RelayJS. Shed light on assumptions/details glossed over by Facebook docs. Presented at Tokyo React.js Meetup #3 (http://reactjs-meetup.connpass.com/event/26229/)
Japanese version: https://www.slideshare.net/KhorSoonHin/reactjs-3-meetup-ja
Video: https://youtu.be/YFuQlKBXlmA
Angular를 활용한 웹 프론트단 개발과 2.0에서 달라진점Jeado Ko
Angular를 활용한 웹 프론트단 개발과 2.0에서 달라진점은 Angular 2.0에서 컴포넌트 기반 아키텍처로 변경되었다고 설명했습니다. Angular 2.0에서는 타입스크립트를 사용하며 컴포넌트, 디렉티브, 템플릿 등의 개념이 도입되었습니다. 또한 Angular 2.0
These are the presentation slides demonstratingseven versions of the UI of same HTML5 application using various libraries and frameworks. This application is described in detail in the O'Reilly book "Enterprise Web Development"
This document provides examples of how to write unit tests for different types of code using Karma and Mocha/Chai, including:
1. Testing filters, API calls, and actions by mocking dependencies and asserting on expected outputs or dispatched mutations.
2. Testing Vue components by mounting them and asserting on rendered output, emitted events, and component property values.
3. Testing Vuex actions by asserting they dispatch the correct mutations and handle store state as expected.
The examples demonstrate common testing patterns like mocking HTTP requests, injecting stubs, simulating events, and asserting on outputs to validate code behavior across different layers of an application.
Promises are so passé - Tim Perry - Codemotion Milan 2016Codemotion
The document discusses asynchronous programming in JavaScript and how it has evolved over time. It covers callbacks, promises, generators, and the new async/await syntax. Callbacks were difficult to read and handle errors across steps. Promises provided a better model but still had ceremony and didn't play nicely with other constructs. Generators allowed writing async code that looked synchronous but required wrapping in a promise. Async/await builds on promises and generators by providing syntax that looks like synchronous code while still being asynchronous under the hood. It addresses issues with previous approaches but developers still need to handle errors and can overuse await. Async/await is available in modern browsers and makes asynchronous JavaScript much cleaner.
It’s trivial today to start writing and debugging some React code, but it’s not 100% clear how to properly deploy the application, manage versions and what implications that has on the build configurations. Especially if you want to allow different versions for different users in order to perform some A/B testing, testing new features in production environment, come up with some UI experiments, or gradually roll out new features for a subset of users.
In this presentation I hopefully covered all that.
This document discusses test-driven development with JavaFX. It covers testing JavaFX applications at the unit, integration, and system levels. It also discusses continuous integration/continuous delivery and different tools that can be used for testing JavaFX applications, including TestFX, MarvinFX, JemmyFX, and Automaton. TestFX is highlighted as the recommended tool, with details provided on how to interact with JavaFX applications using its fluent API. The document also discusses using the view object pattern to write more readable tests and testing JavaFX applications that use DataFX or Afterburner.fx frameworks. It provides an example of using CDI to inject mocks when testing.
An introduction to the complex single page web application framework known as AngularJs. An attempt to overview the high-level aspects of the framework, and to supply references for further exploration.
This document provides an overview of the JavaFX community and ecosystem, including key people, blogs, books, tutorials, projects, frameworks, libraries, and more. It encourages joining the JavaFX community and contributing to open source projects to help grow skills. The presentation highlights over 30 frameworks and 45 libraries that have been developed for JavaFX.
A case study of the changes and transition from ZF1 to ZF2 in the Zend Server UI project in Webinar form: http://www.zend.com/en/webinar/Framework/70170000000bwxn-ZSVR6UI-ZF2-20130129.flv
Angular 2 진행 상황과 장애물에 대해 설명했다. 주요 장애물은 빠른 변화, 새로운 개발 언어와 도구의 사용, 문법의 변화 등이 있다. 반면 Angular 2의 장점은 성능 향상, 체계적인 개발 방식 지원 등이 있다. 결론적으로 Angular 2는 아직 사용하기 이르나, 향후 주
This document summarizes the JavaFX ecosystem, including popular layout managers, widgets, controls, UI libraries, testing frameworks, application frameworks, IDE plugins, and other utilities. MigLayout, Medusa, RichTextFX, ControlsFX, JFoenix, BootstrapFX, FontawesomeFX, Ikonli, TestFX, Afterburner.fx, MvvmFX, Griffon, e(fx)clipse, AnchorFX, ReactFX, and GroovyFX are some of the key libraries and tools mentioned for building JavaFX applications. The document provides an overview of the options available to developers for building desktop and mobile user interfaces with JavaFX.
AngularJS 2.0 aims to improve performance, support modern web standards like ES6, and have an easier programming model compared to AngularJS 1.x. Key changes include dropping controllers and scopes in favor of components as the fundamental building block. Templates will use property and event binding rather than directives. AtScript is a new syntax that adds types, annotations and introspection to ES6 for better development experience.
The document provides an overview of the DataFX framework, which facilitates data retrieval and rendering in JavaFX applications. It discusses how DataFX allows developers to focus on application logic by abstracting away things like data sources, conversion, and threading. Key aspects covered include DataSources and Readers for retrieving data from various sources; Converters for transforming data formats; DataProviders for populating Observable data in JavaFX; controller APIs for building views; and Flow APIs for linking views and handling user actions. The goal of DataFX is to simplify common tasks in building enterprise JavaFX applications that interact with real-world services and data.
Step By Step Guide For Buidling Simple Struts AppSyed Shahul
This document provides steps to build a simple Struts application, including creating forms, actions, configuration files, and JSP pages. The key steps are:
1. Set up the project directory structure and files like web.xml.
2. Define forms, actions, and mappings in struts-config.xml.
3. Create ActionForm classes to handle form fields and validation.
4. Write Action classes to process requests and select views.
5. Develop JSP pages to display forms and output using Struts tags.
6. Build, deploy and test the complete application.
Checkout Customizations in Magento 2 - MageTitansMCR 2017Max Pronko
Checkout is probably one of the complex implementations in Magento 2. It is a crucial part of the eCommerce platform and importance of high-quality customizations cannot be underestimated. We will go through code examples on how to extend checkout functionality in the way that complies with the Magento 2 best practices.
Mike North discusses the W3C web component specification including HTML imports, templates, custom elements, and shadow DOM. He explains how each part works and provides code examples. Frameworks like Ember and React handle these concepts through their own abstractions like components, templates, and CSS encapsulation techniques. North demos a simple component built with these web component standards.
Building Mobile Apps With jQuery For Any Device In The Cloud Max Katz
Slides from hands-on tutorial on building mobile apps with jQuery Mobile in the cloud using http://gotiggr.com . We built a Twitter Search mobile app. Want to build the same app? Go to http://help.gotiggr.com.
Universal JavaScript Web Applications with React - Luciano Mammino - Codemoti...Codemotion
Since we started to see JS on the server side, the dream of developers has been to reduce the gap and the cost of switch between frontend/backend. Today with Node.js, React and a whole ecosystem of tools, this dream is becoming true! In this talk I am going to discuss about Universal (a.k.a. Isomorphic) JS and present some practical example regarding the major patterns related to routing, data retrieval and rendering. I will use Node, React, Webpack, Babel and React Router and give you a series of example to get you started easily with this new technology trend.
Tokyo React.js #3: Missing Pages: ReactJS/Flux/GraphQL/RelayJSKhor SoonHin
Missing Pages: ReactJS/Flux/GraphQL/RelayJS. Shed light on assumptions/details glossed over by Facebook docs. Presented at Tokyo React.js Meetup #3 (http://reactjs-meetup.connpass.com/event/26229/)
Japanese version: https://www.slideshare.net/KhorSoonHin/reactjs-3-meetup-ja
Video: https://youtu.be/YFuQlKBXlmA
Angular를 활용한 웹 프론트단 개발과 2.0에서 달라진점Jeado Ko
Angular를 활용한 웹 프론트단 개발과 2.0에서 달라진점은 Angular 2.0에서 컴포넌트 기반 아키텍처로 변경되었다고 설명했습니다. Angular 2.0에서는 타입스크립트를 사용하며 컴포넌트, 디렉티브, 템플릿 등의 개념이 도입되었습니다. 또한 Angular 2.0
These are the presentation slides demonstratingseven versions of the UI of same HTML5 application using various libraries and frameworks. This application is described in detail in the O'Reilly book "Enterprise Web Development"
This document provides examples of how to write unit tests for different types of code using Karma and Mocha/Chai, including:
1. Testing filters, API calls, and actions by mocking dependencies and asserting on expected outputs or dispatched mutations.
2. Testing Vue components by mounting them and asserting on rendered output, emitted events, and component property values.
3. Testing Vuex actions by asserting they dispatch the correct mutations and handle store state as expected.
The examples demonstrate common testing patterns like mocking HTTP requests, injecting stubs, simulating events, and asserting on outputs to validate code behavior across different layers of an application.
Promises are so passé - Tim Perry - Codemotion Milan 2016Codemotion
The document discusses asynchronous programming in JavaScript and how it has evolved over time. It covers callbacks, promises, generators, and the new async/await syntax. Callbacks were difficult to read and handle errors across steps. Promises provided a better model but still had ceremony and didn't play nicely with other constructs. Generators allowed writing async code that looked synchronous but required wrapping in a promise. Async/await builds on promises and generators by providing syntax that looks like synchronous code while still being asynchronous under the hood. It addresses issues with previous approaches but developers still need to handle errors and can overuse await. Async/await is available in modern browsers and makes asynchronous JavaScript much cleaner.
It’s trivial today to start writing and debugging some React code, but it’s not 100% clear how to properly deploy the application, manage versions and what implications that has on the build configurations. Especially if you want to allow different versions for different users in order to perform some A/B testing, testing new features in production environment, come up with some UI experiments, or gradually roll out new features for a subset of users.
In this presentation I hopefully covered all that.
This document discusses test-driven development with JavaFX. It covers testing JavaFX applications at the unit, integration, and system levels. It also discusses continuous integration/continuous delivery and different tools that can be used for testing JavaFX applications, including TestFX, MarvinFX, JemmyFX, and Automaton. TestFX is highlighted as the recommended tool, with details provided on how to interact with JavaFX applications using its fluent API. The document also discusses using the view object pattern to write more readable tests and testing JavaFX applications that use DataFX or Afterburner.fx frameworks. It provides an example of using CDI to inject mocks when testing.
An introduction to the complex single page web application framework known as AngularJs. An attempt to overview the high-level aspects of the framework, and to supply references for further exploration.
This document provides an overview of the JavaFX community and ecosystem, including key people, blogs, books, tutorials, projects, frameworks, libraries, and more. It encourages joining the JavaFX community and contributing to open source projects to help grow skills. The presentation highlights over 30 frameworks and 45 libraries that have been developed for JavaFX.
A case study of the changes and transition from ZF1 to ZF2 in the Zend Server UI project in Webinar form: http://www.zend.com/en/webinar/Framework/70170000000bwxn-ZSVR6UI-ZF2-20130129.flv
Angular 2 진행 상황과 장애물에 대해 설명했다. 주요 장애물은 빠른 변화, 새로운 개발 언어와 도구의 사용, 문법의 변화 등이 있다. 반면 Angular 2의 장점은 성능 향상, 체계적인 개발 방식 지원 등이 있다. 결론적으로 Angular 2는 아직 사용하기 이르나, 향후 주
This document summarizes the JavaFX ecosystem, including popular layout managers, widgets, controls, UI libraries, testing frameworks, application frameworks, IDE plugins, and other utilities. MigLayout, Medusa, RichTextFX, ControlsFX, JFoenix, BootstrapFX, FontawesomeFX, Ikonli, TestFX, Afterburner.fx, MvvmFX, Griffon, e(fx)clipse, AnchorFX, ReactFX, and GroovyFX are some of the key libraries and tools mentioned for building JavaFX applications. The document provides an overview of the options available to developers for building desktop and mobile user interfaces with JavaFX.
AngularJS 2.0 aims to improve performance, support modern web standards like ES6, and have an easier programming model compared to AngularJS 1.x. Key changes include dropping controllers and scopes in favor of components as the fundamental building block. Templates will use property and event binding rather than directives. AtScript is a new syntax that adds types, annotations and introspection to ES6 for better development experience.
The document provides an overview of the DataFX framework, which facilitates data retrieval and rendering in JavaFX applications. It discusses how DataFX allows developers to focus on application logic by abstracting away things like data sources, conversion, and threading. Key aspects covered include DataSources and Readers for retrieving data from various sources; Converters for transforming data formats; DataProviders for populating Observable data in JavaFX; controller APIs for building views; and Flow APIs for linking views and handling user actions. The goal of DataFX is to simplify common tasks in building enterprise JavaFX applications that interact with real-world services and data.
Step By Step Guide For Buidling Simple Struts AppSyed Shahul
This document provides steps to build a simple Struts application, including creating forms, actions, configuration files, and JSP pages. The key steps are:
1. Set up the project directory structure and files like web.xml.
2. Define forms, actions, and mappings in struts-config.xml.
3. Create ActionForm classes to handle form fields and validation.
4. Write Action classes to process requests and select views.
5. Develop JSP pages to display forms and output using Struts tags.
6. Build, deploy and test the complete application.
Checkout Customizations in Magento 2 - MageTitansMCR 2017Max Pronko
Checkout is probably one of the complex implementations in Magento 2. It is a crucial part of the eCommerce platform and importance of high-quality customizations cannot be underestimated. We will go through code examples on how to extend checkout functionality in the way that complies with the Magento 2 best practices.
Mike North discusses the W3C web component specification including HTML imports, templates, custom elements, and shadow DOM. He explains how each part works and provides code examples. Frameworks like Ember and React handle these concepts through their own abstractions like components, templates, and CSS encapsulation techniques. North demos a simple component built with these web component standards.
Building Mobile Apps With jQuery For Any Device In The Cloud Max Katz
Slides from hands-on tutorial on building mobile apps with jQuery Mobile in the cloud using http://gotiggr.com . We built a Twitter Search mobile app. Want to build the same app? Go to http://help.gotiggr.com.
Max Katz from Exadel gave a presentation about JBoss RichFaces. Some key points:
- RichFaces is a JSF framework that provides over 100 AJAX components, skins, and a component development kit.
- It allows building RIA applications that run on any servlet container and works with any JSF implementation and frameworks like Seam and Spring.
- Exadel creates and supports RichFaces as well as related products like JBoss Developer Studio. They also do consulting and training on RIA technologies.
- New versions of RichFaces have added components like rich:queue and rich:editor as well as layout capabilities. Future versions will be JSF 2.0 compatible.
A survey of Nevada voters and union households found:
1) Solid majorities oppose key aspects of the Employee Free Choice Act (EFCA), especially changing bargaining procedures.
2) Voters and union households say they are more likely to support candidates opposing EFCA.
3) Nevadans are uncomfortable with government arbitrators determining employment contracts.
Ajax Applications with RichFaces and JSF 2Max Katz
The document discusses RichFaces, an open source JavaServer Faces framework that provides Ajax and rich internet application capabilities. It summarizes key RichFaces features like components, skins, the component development kit, and integration with JavaServer Faces 2. It also briefly describes other related JavaServer Faces projects and Exadel's products and services around RichFaces.
RichFaces 4 webinar #1: Everything You Need To KnowMax Katz
The document discusses an upcoming webinar from Exadel on their RichFaces 4 framework, which is a lightweight open source JavaServer Faces component library that provides Ajax and rich internet application capabilities and is a 100% JSF 2.0 compliant extension; it highlights new features in RichFaces 4 like improved performance, a component development kit and zero-configuration usage as well as its support for various Java application servers and browsers.
Using cloud tools to build enterprise mobile apps with APIs fast Max Katz
The document discusses Appery.io, a cloud-based platform for building mobile apps using visual development tools and integrated backend services. It notes that demand for rapid mobile app development is increasing as businesses need to deploy apps faster to keep up with market changes. Several industry experts are quoted saying that the typical 12-18 month development cycles are no longer acceptable and that companies need ways to develop and update apps within days or weeks to remain competitive. The document proposes that Appery.io is a solution that allows non-technical users to build complete mobile apps visually in a drag-and-drop editor to help companies more quickly deploy apps and incorporate frequent changes.
Ajax Applications with JSF 2 and New RichFaces 4 - TSSJSMax Katz
RichFaces is a JavaServer Faces component library that provides rich Ajax functionality and UI components. Version 4 is based on JSF 2 and uses jQuery for JavaScript functionality. It features many improvements over previous versions including redesigned consistent components, improved performance, new client-side validation, and an easy to use component development kit. RichFaces 4 allows building rich Ajax applications that can be deployed on many servers and browsers.
Ajax Applications with JSF 2 and New RichFaces 4 - JAX/JSF SummitMax Katz
This document provides information about a presentation given by Max Katz on Ajax applications with JSF 2 and RichFaces 4. It includes details about Max Katz's background and experience, an overview of Exadel as a company, the history and key features of RichFaces, and a demonstration of how to build Ajax functionality into JSF 2 applications using RichFaces 4 components and tags.
RichFaces 4: Rich Ajax Components For Your JSF ApplicationsMax Katz
RichFaces 4 is a lightweight, open source framework for JSF 2 that provides rich Ajax components and functionality. It extends JSF 2 to add Ajax, client-side validation, and a component development kit. Some key components include <a4j:ajax> for sending Ajax requests, <a4j:commandButton> and <a4j:commandLink> for buttons and links with Ajax behavior, and <a4j:jsFunction> for firing Ajax requests from JavaScript. RichFaces 4 allows building rich client applications with JSF 2.
What You Need To Build Cool Enterprise Applications With JSFMax Katz
This document provides an overview of JavaServer Faces (JSF) and the RichFaces framework for building enterprise applications with Ajax functionality. It discusses key features of JSF 2 such as Facelets, composite components, and the basic <f:ajax> tag. It then describes RichFaces 4 as a lightweight JSF framework that extends JSF 2 with rich UI components, an Ajax tag library (<a4j:>), and features like client-side validation, polling, and pushing. The document provides examples of how to use various RichFaces tags to send Ajax requests and control partial rendering.
This webinar introduced the RichFaces framework for building JavaServer Faces applications. It covered installing RichFaces, basic AJAX concepts like sending requests and partial view rendering, and demonstrated a RichFaces component. Future webinars and training were announced. RichFaces provides over 100 AJAX components, skins for themes, and a component development kit.
1) This webinar reviewed JBoss RichFaces, a library of AJAX-enabled UI components for JavaServer Faces applications.
2) It covered basic concepts like partial view rendering and processing. It also demonstrated many of the rich UI components in the rich:* tag library.
3) Recent updates to RichFaces were highlighted, including new components in version 3.3.1 like rich:colorPicker and themes with predefined layouts.
4) Future plans for RichFaces 4.0 were discussed, which will integrate fully with JSF 2.0 and focus on consistency and performance.
Going Above JSF 2.0 with RichFaces and SeamLincoln III
This document summarizes a presentation given by Jay Balunas and Lincoln Baxter on going beyond JavaServer Faces (JSF) 2.0 with RichFaces and Seam. It discusses how RichFaces improves upon built-in JSF 2.0 features like Ajax, resource handling, and component development. It also covers how RichFaces adds client-side bean validation. The document concludes by discussing upcoming RichFaces 4.0 releases and ways to get involved with the project.
Spark IT 2011 - Simplified Web Development using Java Server Faces 2.0Arun Gupta
The document outlines new features in Java Server Faces (JSF) 2.0 including Facelets, composite components, integrated Ajax support, partial state saving, view parameters, system events, and resources. It provides examples of how these features can be used and notes they were inspired by other frameworks. The development and release of any features described remains at the sole discretion of Oracle.
A Peek At The Future: Going Beyond JavaServer Faces 2.0 With RichFaces 4balunasj
This document provides an overview of JSF 2.0 and RichFaces capabilities for Ajax, component development, and validation. It discusses how RichFaces extends and improves upon features in JSF 2.0 such as built-in Ajax, dynamic resources, and bean validation. RichFaces adds capabilities like Ajax regions and queues, dynamic resources, a component development kit to simplify component creation, and client-side bean validation with fallback options. The document demonstrates how RichFaces enhances JSF 2.0 and goes beyond its capabilities.
PrimeFaces is a next generation JavaServer Faces (JSF) component suite that provides 70+ rich UI components and features like Ajax push technology. It was created by Cagatay Civici in 2008 and is now used by thousands of developers worldwide. Some key features include easy Ajax implementation, unobtrusive JavaScript, mobile frameworks like TouchFaces, and integration with technologies like Spring and Portlets. The documentation and community support resources make it easy for developers to learn and use PrimeFaces in their projects.
This document discusses the JavaFX ecosystem, including open source libraries, frameworks, and platforms that work with JavaFX. It provides an overview of popular layout, widget, charting, and testing libraries. It also summarizes several prominent JavaFX frameworks, including their key features, goals, and resources. The JavaFX ecosystem is large and covers areas like layout, controls, charts, testing, libraries, frameworks, and platforms.
In The Brain of Cagatay Civici: Exploring JavaServer Faces 2.0 and PrimeFaces Skills Matter
The document summarizes a presentation on exploring JSF 2.0 and PrimeFaces, highlighting new features in JSF 2.0 such as Facelets, AJAX support, resource handling, and navigations, and how PrimeFaces builds on JSF 2.0 with additional features like themes, mobile support, and an extensive component library.
This document discusses the JavaFX ecosystem, including open source libraries, frameworks, and platforms that work with JavaFX. It provides examples of popular layout managers (MigLayout), widgets (Medusa, TilesFX, JSilhouette), controls (RichTextFX, CalendarFX, charts), and testing tools (TestFX). It also summarizes several JavaFX frameworks like Afterburner.fx, TornadoFX, Griffon, and Basilisk. Finally, it discusses the goals and core features of JSR 377, the JavaFX application programming interface.
Extending eZ Platform v2 with Symfony and ReacteZ Systems
This document discusses extending eZ Platform 2.x with Symfony and React. It provides background on the technology stack changes from 1.x to 2.x, including moving from YUI3 to Symfony and React to improve performance and extensibility. It describes various extension points for both frontend and backend developers, such as React modules, field types, and application menus. It demonstrates performance improvements of 2.x over 1.x through examples of login and location pages loading over 10x faster.
Hyperproductive JSF 2.0 @ JavaOne Brazil 2010Arun Gupta
The presentation outlines new features in JSF 2.0 including Facelets for better templating and error handling, composite components for reusable UI components, integrated Ajax capabilities, partial state saving for smaller page sizes, view parameters for passing request parameters to managed beans, system events for lifecycle hook points, and resources for images, JavaScript and CSS. It also discusses annotations replacing XML configuration and project stages for development vs production.
The document provides an introduction to developing applications for Palm's webOS using the Mojo SDK. It discusses that the Mojo SDK is a JavaScript framework that uses standard web technologies and allows creating webOS applications using HTML, CSS, and JavaScript. It also describes some key aspects of developing Mojo applications, such as creating scenes, linking between scenes, using data storage with Depot and cookies, and working with common UI widgets.
The document summarizes the JavaFX ecosystem, which includes many open source libraries, frameworks, and tools. It covers layout libraries like MigLayout, widgets like Medusa and TilesFX, rich text editors, charts, UI elements, testing tools like TestFX, frameworks like Afterburner.fx and TornadoFX, IDE plugins, and Groovy integration. The ecosystem is large and constantly evolving to provide many options for building desktop and mobile JavaFX applications.
Similar to Hands On With Rich Faces 4 - JavaOne 2010 (20)
Wolters Kluwer Tech. Conference: Disrupting Mobile DevelopmentMax Katz
Most mobile apps today are built using traditional desktop tools. These tools are complex, need to be downloaded, installed, frameworks configured, and lack real-time collaboration. To build mobile apps fast, to stay ahead, and innovate in the enterprise, developers need new tools to create mobile apps. The new tools are running entirely in the cloud, offer real time collaboration, sharing, and connections to cloud APIs. In this live coding session attendees will learn about Appery.io platform, and how to build a mobile app connected cloud APIs. Creating re-usable API plug-ins will be shown as well. Attendees will be able to test the app on their phones as its being built.
Max Katz from Tiggzi and Exadel presented on Tiggzi, a cloud-based mobile app builder that allows creating HTML5 and jQuery Mobile apps connected to REST APIs. Tiggzi apps can be tested in the browser or on mobile devices using their tester app, and support features like collaborative development, custom themes, and access to PhoneGap APIs. Developers were encouraged to sign up at tiggzi.com to start building mobile apps with Tiggzi.
Learn How to Build Mobile Apps Using Cloud ServicesMax Katz
The document summarizes a presentation about Tiggr, a cloud-based service for building HTML5 and native mobile apps. Tiggr allows developers to build mobile apps quickly and easily without needing deep coding skills. It was created by Exadel, a global software engineering company with 400+ employees across 7 development offices. The presentation covered how to build a mobile app in 5 steps using Tiggr's visual tools and shared features.
Tiggr Mobile Apps Builder at Silicon Valley HTML5 Group MeetupMax Katz
Tiggr is a web-based mobile app builder created by Exadel, a global software engineering company founded in 1998 and headquartered in the San Francisco Bay Area. Tiggr allows developers and non-technical users to easily and quickly build mobile apps using a 5-step approach involving prototyping the UI, defining REST services, mapping services to the UI, adding events and actions, and testing on mobile devices. Upcoming releases will include new features like a brand new UI, support for XML services, and Android and iOS project generation.
Mobile Development Choices: Native Apps vs. Web Apps at JAX 2011Max Katz
This document discusses the differences between native mobile apps and web apps. Native apps are developed for a specific platform like iOS or Android, while web apps are built using web technologies like HTML, CSS, and JavaScript and can run on multiple platforms. The document compares native and web apps across categories like platforms, app discovery, user experience, device features, and enterprise development considerations.
Devoxx2010 - Mobile Development Choices: Native Apps vs Web AppsMax Katz
Max Katz presents on the choices between developing native mobile apps versus web apps. Some key factors in making the decision include developer skills required, time to market, performance, ability to access device features, cost of development, and ease of updating across platforms. Native apps allow deeper integration with device services but each platform requires different skills, whereas web apps can be built with common web technologies and more easily ported to multiple mobile platforms. The presenter recommends considering a web app approach unless the app requires device-specific features, offline use, or high performance graphics.
1. The webinar covered JBoss RichFaces skins, including using out-of-the-box skins, creating custom skins, and extending existing skins.
2. Standard controls can be skinned to match RichFaces components using skin parameters or CSS classes.
3. Future plans for RichFaces include full integration with JSF 2.0 in version 4.0, scheduled for release in 2009.
The document summarizes RichFaces concepts and features covered in webinar #2, including sending AJAX requests, partial view rendering, partial view processing, additional tags like a4j:repeat and a4j:queue, and JavaScript interactions. It also announces upcoming webinars on Rich UI components and skins, and provides information about JSF/RichFaces training and a RichFaces demo site.
1. The document introduces JavaFX as a platform for building rich internet applications with Java and discusses how it can be used to create rich user interfaces for enterprise applications.
2. It describes Flamingo, an open source framework that makes it easy to connect a JavaFX front-end to a Java EE, Seam or Spring backend and supports features like CRUD operations, server-side push, and offline use.
3. Examples are provided of using Flamingo to integrate JavaFX clients with Java EE server components and services for tasks like server calls, conversations, binding, and validation.
Max Katz presents on building rich internet applications (RIA) with JavaFX. Some key points:
- JavaFX is a tool for building RIA applications across devices like web, mobile, and desktop. It focuses on web and enterprise applications.
- JavaFX uses a declarative and procedural expression language called JavaFX Script and integrates with Java classes.
- Exadel has developed a JavaFX plugin for Eclipse that provides features like a JavaFX perspective and project creation wizard to help develop JavaFX applications.
- Exadel also provides frameworks like Flamingo that connect JavaFX and Flex with backend technologies like Seam and Spring, and Fiji that integrates JSF with Flex or JavaFX
Your One-Stop Shop for Python Success: Top 10 US Python Development Providersakankshawande
Simplify your search for a reliable Python development partner! This list presents the top 10 trusted US providers offering comprehensive Python development services, ensuring your project's success from conception to completion.
Programming Foundation Models with DSPy - Meetup SlidesZilliz
Prompting language models is hard, while programming language models is easy. In this talk, I will discuss the state-of-the-art framework DSPy for programming foundation models with its powerful optimizers and runtime constraint system.
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor IvaniukFwdays
At this talk we will discuss DDoS protection tools and best practices, discuss network architectures and what AWS has to offer. Also, we will look into one of the largest DDoS attacks on Ukrainian infrastructure that happened in February 2022. We'll see, what techniques helped to keep the web resources available for Ukrainians and how AWS improved DDoS protection for all customers based on Ukraine experience
AppSec PNW: Android and iOS Application Security with MobSFAjin Abraham
Mobile Security Framework - MobSF is a free and open source automated mobile application security testing environment designed to help security engineers, researchers, developers, and penetration testers to identify security vulnerabilities, malicious behaviours and privacy concerns in mobile applications using static and dynamic analysis. It supports all the popular mobile application binaries and source code formats built for Android and iOS devices. In addition to automated security assessment, it also offers an interactive testing environment to build and execute scenario based test/fuzz cases against the application.
This talk covers:
Using MobSF for static analysis of mobile applications.
Interactive dynamic security assessment of Android and iOS applications.
Solving Mobile app CTF challenges.
Reverse engineering and runtime analysis of Mobile malware.
How to shift left and integrate MobSF/mobsfscan SAST and DAST in your build pipeline.
Monitoring and Managing Anomaly Detection on OpenShift.pdfTosin Akinosho
Monitoring and Managing Anomaly Detection on OpenShift
Overview
Dive into the world of anomaly detection on edge devices with our comprehensive hands-on tutorial. This SlideShare presentation will guide you through the entire process, from data collection and model training to edge deployment and real-time monitoring. Perfect for those looking to implement robust anomaly detection systems on resource-constrained IoT/edge devices.
Key Topics Covered
1. Introduction to Anomaly Detection
- Understand the fundamentals of anomaly detection and its importance in identifying unusual behavior or failures in systems.
2. Understanding Edge (IoT)
- Learn about edge computing and IoT, and how they enable real-time data processing and decision-making at the source.
3. What is ArgoCD?
- Discover ArgoCD, a declarative, GitOps continuous delivery tool for Kubernetes, and its role in deploying applications on edge devices.
4. Deployment Using ArgoCD for Edge Devices
- Step-by-step guide on deploying anomaly detection models on edge devices using ArgoCD.
5. Introduction to Apache Kafka and S3
- Explore Apache Kafka for real-time data streaming and Amazon S3 for scalable storage solutions.
6. Viewing Kafka Messages in the Data Lake
- Learn how to view and analyze Kafka messages stored in a data lake for better insights.
7. What is Prometheus?
- Get to know Prometheus, an open-source monitoring and alerting toolkit, and its application in monitoring edge devices.
8. Monitoring Application Metrics with Prometheus
- Detailed instructions on setting up Prometheus to monitor the performance and health of your anomaly detection system.
9. What is Camel K?
- Introduction to Camel K, a lightweight integration framework built on Apache Camel, designed for Kubernetes.
10. Configuring Camel K Integrations for Data Pipelines
- Learn how to configure Camel K for seamless data pipeline integrations in your anomaly detection workflow.
11. What is a Jupyter Notebook?
- Overview of Jupyter Notebooks, an open-source web application for creating and sharing documents with live code, equations, visualizations, and narrative text.
12. Jupyter Notebooks with Code Examples
- Hands-on examples and code snippets in Jupyter Notebooks to help you implement and test anomaly detection models.
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-EfficiencyScyllaDB
Freshworks creates AI-boosted business software that helps employees work more efficiently and effectively. Managing data across multiple RDBMS and NoSQL databases was already a challenge at their current scale. To prepare for 10X growth, they knew it was time to rethink their database strategy. Learn how they architected a solution that would simplify scaling while keeping costs under control.
Introduction of Cybersecurity with OSS at Code Europe 2024Hiroshi SHIBATA
I develop the Ruby programming language, RubyGems, and Bundler, which are package managers for Ruby. Today, I will introduce how to enhance the security of your application using open-source software (OSS) examples from Ruby and RubyGems.
The first topic is CVE (Common Vulnerabilities and Exposures). I have published CVEs many times. But what exactly is a CVE? I'll provide a basic understanding of CVEs and explain how to detect and handle vulnerabilities in OSS.
Next, let's discuss package managers. Package managers play a critical role in the OSS ecosystem. I'll explain how to manage library dependencies in your application.
I'll share insights into how the Ruby and RubyGems core team works to keep our ecosystem safe. By the end of this talk, you'll have a better understanding of how to safeguard your code.
Conversational agents, or chatbots, are increasingly used to access all sorts of services using natural language. While open-domain chatbots - like ChatGPT - can converse on any topic, task-oriented chatbots - the focus of this paper - are designed for specific tasks, like booking a flight, obtaining customer support, or setting an appointment. Like any other software, task-oriented chatbots need to be properly tested, usually by defining and executing test scenarios (i.e., sequences of user-chatbot interactions). However, there is currently a lack of methods to quantify the completeness and strength of such test scenarios, which can lead to low-quality tests, and hence to buggy chatbots.
To fill this gap, we propose adapting mutation testing (MuT) for task-oriented chatbots. To this end, we introduce a set of mutation operators that emulate faults in chatbot designs, an architecture that enables MuT on chatbots built using heterogeneous technologies, and a practical realisation as an Eclipse plugin. Moreover, we evaluate the applicability, effectiveness and efficiency of our approach on open-source chatbots, with promising results.
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfChart Kalyan
A Mix Chart displays historical data of numbers in a graphical or tabular form. The Kalyan Rajdhani Mix Chart specifically shows the results of a sequence of numbers over different periods.
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectorsDianaGray10
Join us to learn how UiPath Apps can directly and easily interact with prebuilt connectors via Integration Service--including Salesforce, ServiceNow, Open GenAI, and more.
The best part is you can achieve this without building a custom workflow! Say goodbye to the hassle of using separate automations to call APIs. By seamlessly integrating within App Studio, you can now easily streamline your workflow, while gaining direct access to our Connector Catalog of popular applications.
We’ll discuss and demo the benefits of UiPath Apps and connectors including:
Creating a compelling user experience for any software, without the limitations of APIs.
Accelerating the app creation process, saving time and effort
Enjoying high-performance CRUD (create, read, update, delete) operations, for
seamless data management.
Speakers:
Russell Alfeche, Technology Leader, RPA at qBotic and UiPath MVP
Charlie Greenberg, host
HCL Notes and Domino License Cost Reduction in the World of DLAUpanagenda
Webinar Recording: https://www.panagenda.com/webinars/hcl-notes-and-domino-license-cost-reduction-in-the-world-of-dlau/
The introduction of DLAU and the CCB & CCX licensing model caused quite a stir in the HCL community. As a Notes and Domino customer, you may have faced challenges with unexpected user counts and license costs. You probably have questions on how this new licensing approach works and how to benefit from it. Most importantly, you likely have budget constraints and want to save money where possible. Don’t worry, we can help with all of this!
We’ll show you how to fix common misconfigurations that cause higher-than-expected user counts, and how to identify accounts which you can deactivate to save money. There are also frequent patterns that can cause unnecessary cost, like using a person document instead of a mail-in for shared mailboxes. We’ll provide examples and solutions for those as well. And naturally we’ll explain the new licensing model.
Join HCL Ambassador Marc Thomas in this webinar with a special guest appearance from Franz Walder. It will give you the tools and know-how to stay on top of what is going on with Domino licensing. You will be able lower your cost through an optimized configuration and keep it low going forward.
These topics will be covered
- Reducing license cost by finding and fixing misconfigurations and superfluous accounts
- How do CCB and CCX licenses really work?
- Understanding the DLAU tool and how to best utilize it
- Tips for common problem areas, like team mailboxes, functional/test users, etc
- Practical examples and best practices to implement right away
5th LF Energy Power Grid Model Meet-up SlidesDanBrown980551
5th Power Grid Model Meet-up
It is with great pleasure that we extend to you an invitation to the 5th Power Grid Model Meet-up, scheduled for 6th June 2024. This event will adopt a hybrid format, allowing participants to join us either through an online Mircosoft Teams session or in person at TU/e located at Den Dolech 2, Eindhoven, Netherlands. The meet-up will be hosted by Eindhoven University of Technology (TU/e), a research university specializing in engineering science & technology.
Power Grid Model
The global energy transition is placing new and unprecedented demands on Distribution System Operators (DSOs). Alongside upgrades to grid capacity, processes such as digitization, capacity optimization, and congestion management are becoming vital for delivering reliable services.
Power Grid Model is an open source project from Linux Foundation Energy and provides a calculation engine that is increasingly essential for DSOs. It offers a standards-based foundation enabling real-time power systems analysis, simulations of electrical power grids, and sophisticated what-if analysis. In addition, it enables in-depth studies and analysis of the electrical power grid’s behavior and performance. This comprehensive model incorporates essential factors such as power generation capacity, electrical losses, voltage levels, power flows, and system stability.
Power Grid Model is currently being applied in a wide variety of use cases, including grid planning, expansion, reliability, and congestion studies. It can also help in analyzing the impact of renewable energy integration, assessing the effects of disturbances or faults, and developing strategies for grid control and optimization.
What to expect
For the upcoming meetup we are organizing, we have an exciting lineup of activities planned:
-Insightful presentations covering two practical applications of the Power Grid Model.
-An update on the latest advancements in Power Grid -Model technology during the first and second quarters of 2024.
-An interactive brainstorming session to discuss and propose new feature requests.
-An opportunity to connect with fellow Power Grid Model enthusiasts and users.
The Microsoft 365 Migration Tutorial For Beginner.pptxoperationspcvita
This presentation will help you understand the power of Microsoft 365. However, we have mentioned every productivity app included in Office 365. Additionally, we have suggested the migration situation related to Office 365 and how we can help you.
You can also read: https://www.systoolsgroup.com/updates/office-365-tenant-to-tenant-migration-step-by-step-complete-guide/
Taking AI to the Next Level in Manufacturing.pdfssuserfac0301
Read Taking AI to the Next Level in Manufacturing to gain insights on AI adoption in the manufacturing industry, such as:
1. How quickly AI is being implemented in manufacturing.
2. Which barriers stand in the way of AI adoption.
3. How data quality and governance form the backbone of AI.
4. Organizational processes and structures that may inhibit effective AI adoption.
6. Ideas and approaches to help build your organization's AI strategy.
Dandelion Hashtable: beyond billion requests per second on a commodity serverAntonios Katsarakis
This slide deck presents DLHT, a concurrent in-memory hashtable. Despite efforts to optimize hashtables, that go as far as sacrificing core functionality, state-of-the-art designs still incur multiple memory accesses per request and block request processing in three cases. First, most hashtables block while waiting for data to be retrieved from memory. Second, open-addressing designs, which represent the current state-of-the-art, either cannot free index slots on deletes or must block all requests to do so. Third, index resizes block every request until all objects are copied to the new index. Defying folklore wisdom, DLHT forgoes open-addressing and adopts a fully-featured and memory-aware closed-addressing design based on bounded cache-line-chaining. This design offers lock-free index operations and deletes that free slots instantly, (2) completes most requests with a single memory access, (3) utilizes software prefetching to hide memory latencies, and (4) employs a novel non-blocking and parallel resizing. In a commodity server and a memory-resident workload, DLHT surpasses 1.6B requests per second and provides 3.5x (12x) the throughput of the state-of-the-art closed-addressing (open-addressing) resizable hashtable on Gets (Deletes).
Have you ever been confused by the myriad of choices offered by AWS for hosting a website or an API?
Lambda, Elastic Beanstalk, Lightsail, Amplify, S3 (and more!) can each host websites + APIs. But which one should we choose?
Which one is cheapest? Which one is fastest? Which one will scale to meet our needs?
Join me in this session as we dive into each AWS hosting service to determine which one is best for your scenario and explain why!
2. Exadel
Who is this guy?
● Senior Systems Engineer, RIA strategist at
Exadel
◦ http://mkblog.exadel.com
◦ http://twitter.com/maxkatz
● JSF/RichFaces consulting, training
● Leads a number of projects:
◦ Exadel Tiggr
◦ Exadel Flamingo
◦ Exadel Fiji
◦ Exadel JavaFX Plug-in for Eclipse
3. Exadel
Author of Co-author of RichFaces
Practical RichFaces DZone Refcard
(Apress)
4. Exadel
Exadel
● Products and services company
● Founded in 1998, headquarters in
Concord, CA
● 350+ employees
City Country Year
Concord California, USA 1998
Moscow Russia 1999
Minsk Belarus 2002
Vitebsk Belarus 2005
Donetsk, Kharkov Ukraine 2006
5. Exadel
Products
● Open Source with JBoss
◦ RichFaces
◦ JBoss Tools/JBoss Developer Studio
● Tiggr – create and share mockups online
● Flamingo
● Fiji (JSF – JavaFX/Flex integration)
● jsf4birt (JSF – BIRT/Actuate integration)
● JavaFX Plug-in for Eclipse
6. Exadel
Services
● Rich enterprise application
development
● Eclipse development
● Custom rich component development
● Mobile development
● Training
● Most projects are done in Eastern
Europe
19. Exadel
RichFaces history
2005: started by Alexander Smirnov
2005-2007: Developed by Exadel
Ajax4jsf – open source, free
RichFaces - commercial
2007: JBoss takes over
Exadel team continues to develop
the framework
22. Exadel
RichFaces 4
● All components are reviewed for
consistency, usability
● Redesigned following semantic
HTML principles
● Server-side
and client-side
performance optimization
● Strict code clean-up and review
23. Exadel
RichFaces 4
● Newand easy to use CDK
(Component Development Kit)
● Quickly build your own custom rich
components
24. Exadel
Google App Engine
● DeployRichFaces application in
Google App Engine (GAE)
● Special maven-based plug-in
available
25. Exadel
RichFaces <a4j:ajax>
● 100% based on standard <f:ajax>
● Just replacef: with a4j: and get
exactly the same functionality
● But, you get extra features...
26. Exadel
<a4j:ajax> attributes
Attribute Description
onbegin JavaScript to execute before Ajax request
JavaScript to execute after response
onbeforedomupdate
comes back but before DOM update
oncomplete JavaScript to execute after DOM update
Skips Update Model and Invoke
bypassUpdates Application phases, useful for form
validation
Skips all a4j:outputPanel
limitRender ajaxRender=”true” areas. Only renders
what is set in current render
status Status to display during Ajax request
Sets focus on component after Ajax
focus
request
37. Exadel
JavaScript interactions
<h:commandLink value="Link"
<f:ajax onevent="ajaxFunction();">
</h:commandLink>
Called three times:
1) begin
2) success
3) complete
<a4j:commandLink value="Link"
onbegin="alert('Link clicked')"
onbeforedomupdate="alert('Response received')"
oncomplete="alert('DOM updated')">
</a4j:commandLink>
Events are separated
38. Exadel
Advanced rendering options
<a4j:commandButton render="output"/>
<a4j:commandButton render="output" limitRender="true"/>
<h:panelGrid id="output">
Turns off all auto rendered panels,
...
only renders what is set in current
</h:panelGrid> render
<a4j:outputPanel ajaxRendered="true">
...
</a4j:outputPanel>
40. Exadel
JSF 2 queue
● JSF2 has very basic queue
functionality
● Events are queued and fired one at a
time
● Only one request is processed on the
server at a time
41. Exadel
RichFaces queue upgrades
● Delay firing of a request
● Combine requests from one or more controls
● Cancel DOM updates if the same request was
fired
● Define queue as:
◦ Global (all views have queue)
◦ View-based
◦ Form-based
◦ Named (used by particular components only)
55. Exadel
Bean Validation (JSR 303)
● JSF 2 has support for Bean Validation
(on the server)
public class Bean {
@Email
private String email;
}
<h:inputText id="email" value="#{bean.email}">
<a4j:ajax event="blur"/>
</h:inputText>
<rich:message for="email"/>
57. Exadel
RichFaces client functions
Function Description
rich:client(id) returns component client id
rich:element(id) returns DOM element
returns RichFaces client component
rich:component(id)
instance to call JS API method
rich:isUserInRole(role) returns if the user has specified role
returns component instance for given
rich:findComponent(id)
short id
58. Exadel
rich:component(id) function
● Allows to call JS API on a component
<input type="button"
onclick="#{rich:component('popup')}.show();"
value="Open" />
<rich:popupPanel id="popup">
<h:outputLink value="#"
onclick="#{rich:component('popup')}.hide();
return false;">
<h:outputText value="Close"/>
</h:outputLink>
</rich:popupPanel>
63. Exadel
Skins
● Lightweight extension on top of CSS
● Change
look and feel of all Rich
component with a few minor changes
● Can
be applied to standard JSF and
HTML tags as well
70. Exadel
A peek at the future: Going
Beyond JavaServer Faces 2.0
with RichFaces 4
Tuesday, September 21
9:30am
Golden Gate 6/7
Jay Balunas, Red Hat
Alexander Smirnov, Exadel
73. Exadel
Exadel Tiggr
● Create, collaborate and share
mockups online
● RichFaces palette
● Upcoming features
◦ HTML generation
◦ More widgets and controls
● Give it a try - http://tiggr.exadel.com
75. Exadel
How can we help with
RichFaces
● Webapplication development with
RichFaces
● Custom component development
● Training:
Training Days
JSF 1.2, 2 1-2
RichFaces 3, 4 1-2
JSF and RichFaces 2-3
RichFaces 3 to 4 1-2