Project Zero is an agile web application platform built on dynamic scripting, REST, AJAX, and feeds. It is optimized for rapid development, simple deployment, and cost-effective operation. Project Zero uses dynamic scripting languages like Groovy and PHP for application logic. Java can also be used. The platform has a modular architecture and uses events and a global context to manage application state. Project Zero aims to have a nimble, clean, and cost-effective runtime. It demonstrates RESTful resources, the Zero Resource Manager for abstracting data access, and zero.data for direct SQL queries.
BP207 - Meet the Java Application Server You Already Own – IBM DominoSerdar Basegmez
This document discusses preparing the runtime and development environments for DOTS (Domino OSGi Tasklet Service) on IBM Domino. It describes copying necessary JAR files and executable files to directories within the Domino program folder to prepare the runtime environment. It also mentions that the Eclipse IDE is needed for developing DOTS tasklets as OSGi bundles, and steps will be provided for configuring Eclipse to develop plugins that can run on the Domino OSGi environment.
Java and in particular OSGi are now very important parts of the Notes/Domino app dev model. In this session, you will learn what techniques can be utilized to process background jobs for XPages applications. Whether you want to replace your existing agents with Domino OSGi Tasklet Services (DOTS) or use Eclipse Jobs to run time-consuming routines without interrupting the use of your application - we will show you real life examples of why and how. You should also consider attending this session to hear about some suprises you don't want to miss...
The document provides an introduction and overview of the Domino OSGi Tasklet Service (DOTS). DOTS allows developers to create tasklets outside of the Domino environment in Eclipse that can then run on a Domino server. The document outlines how to set up the DOTS development environment, create a simple "Hello World" tasklet, debug tasklets, deploy tasklets to the server, and offers tips for using annotations and progress monitoring in tasklets.
Java EE 7 provides several new features to improve developer productivity and meet enterprise demands. These include WebSocket, JSON processing, simplified JMS, and more annotated POJOs. Popular Java EE 7 application servers that implement these specifications include GlassFish, WildFly, and JEUS. Various IDEs like NetBeans, Eclipse, and IntelliJ provide support for developing Java EE 7 applications.
The new GraalVM from Oracle supports multiple language including JavaScript, Python, Ruby, R, C++ as well as Java and other JVM languages. This opens up interesting possibilities for polygot enterprise applications. Now you can use a Node library in a Java application or call an R statistical function from an EJB. Previously, this type of integration was extremely challenging. This session will provide recipes to get up and running along with best practices and some cool demos.
Code: https://github.com/rcuprak/graalvm_jee
This presentation extract a as Preview from the JPassion.com e-learning web site give you an overview of the JEE platform and the novelty of the JEE 8 specifications
This document provides an overview of creating and deploying OSGi plugins for the Domino HTTP task. It discusses setting up the Eclipse development environment with the necessary prerequisites like the Domino OSGi target platform and the Notes.jar plugin. It then demonstrates creating a simple "Hello World" servlet plugin that runs on the Equinox HTTP service, and deploying/debugging it using the PDE tool directly from Eclipse.
The document discusses integrating a language-agnostic garbage collection toolkit into various programming language runtimes. It describes how the garbage collector components have been decoupled from the J9 JVM and refactored. It also outlines the process for integrating the garbage collector, including implementing a few required glue APIs to provide language-specific information. Examples of integrating the garbage collector into the CSOM (C implementation of Smalltalk) runtime are also provided.
BP207 - Meet the Java Application Server You Already Own – IBM DominoSerdar Basegmez
This document discusses preparing the runtime and development environments for DOTS (Domino OSGi Tasklet Service) on IBM Domino. It describes copying necessary JAR files and executable files to directories within the Domino program folder to prepare the runtime environment. It also mentions that the Eclipse IDE is needed for developing DOTS tasklets as OSGi bundles, and steps will be provided for configuring Eclipse to develop plugins that can run on the Domino OSGi environment.
Java and in particular OSGi are now very important parts of the Notes/Domino app dev model. In this session, you will learn what techniques can be utilized to process background jobs for XPages applications. Whether you want to replace your existing agents with Domino OSGi Tasklet Services (DOTS) or use Eclipse Jobs to run time-consuming routines without interrupting the use of your application - we will show you real life examples of why and how. You should also consider attending this session to hear about some suprises you don't want to miss...
The document provides an introduction and overview of the Domino OSGi Tasklet Service (DOTS). DOTS allows developers to create tasklets outside of the Domino environment in Eclipse that can then run on a Domino server. The document outlines how to set up the DOTS development environment, create a simple "Hello World" tasklet, debug tasklets, deploy tasklets to the server, and offers tips for using annotations and progress monitoring in tasklets.
Java EE 7 provides several new features to improve developer productivity and meet enterprise demands. These include WebSocket, JSON processing, simplified JMS, and more annotated POJOs. Popular Java EE 7 application servers that implement these specifications include GlassFish, WildFly, and JEUS. Various IDEs like NetBeans, Eclipse, and IntelliJ provide support for developing Java EE 7 applications.
The new GraalVM from Oracle supports multiple language including JavaScript, Python, Ruby, R, C++ as well as Java and other JVM languages. This opens up interesting possibilities for polygot enterprise applications. Now you can use a Node library in a Java application or call an R statistical function from an EJB. Previously, this type of integration was extremely challenging. This session will provide recipes to get up and running along with best practices and some cool demos.
Code: https://github.com/rcuprak/graalvm_jee
This presentation extract a as Preview from the JPassion.com e-learning web site give you an overview of the JEE platform and the novelty of the JEE 8 specifications
This document provides an overview of creating and deploying OSGi plugins for the Domino HTTP task. It discusses setting up the Eclipse development environment with the necessary prerequisites like the Domino OSGi target platform and the Notes.jar plugin. It then demonstrates creating a simple "Hello World" servlet plugin that runs on the Equinox HTTP service, and deploying/debugging it using the PDE tool directly from Eclipse.
The document discusses integrating a language-agnostic garbage collection toolkit into various programming language runtimes. It describes how the garbage collector components have been decoupled from the J9 JVM and refactored. It also outlines the process for integrating the garbage collector, including implementing a few required glue APIs to provide language-specific information. Examples of integrating the garbage collector into the CSOM (C implementation of Smalltalk) runtime are also provided.
This document discusses Java platforms for mobile Linux devices. It describes various Java implementations like J2ME, Java ME CDC, and embedded Java variants. It also discusses GUI frameworks like MIDP, AWT, and Swing. The document introduces the JaLiMo initiative which aims to create a complete free Java stack for mobile Linux by integrating existing projects. It discusses challenges in porting Java, building for embedded targets, and potential solutions like using Maven and packaging plugins.
The NetBeans Platform is a framework for building desktop applications in Java Swing. It provides APIs that simplify common requirements like window management, menus, actions, settings storage, and file access. The core of the NetBeans IDE itself is built on the NetBeans Platform. Plugins can be created to extend the IDE's functionality by interacting with NetBeans APIs and providing additional features. The document outlines the various APIs included in the NetBeans Platform for developing plugins, managing windows, nodes, actions, and other components.
The document provides an overview of new features in Java EE 7, including WebSocket support, JSON processing, batch applications, concurrency utilities, simplified JMS API, and enhancements to other Java EE technologies. It discusses 10 top features in more depth and includes code examples. The goal is to help developers get started with Java EE 7.
Jakarta EE is an open source Java platform that provides a wide range of APIs for building enterprise applications. It is made up of specifications covering areas like web services, security, and object-relational mapping. The document discusses the history and evolution of Jakarta EE, its relationship to other technologies like Spring and MicroProfile, and its importance for businesses, careers, and the Java ecosystem. It also outlines proposals for future versions like Jakarta EE 10 that aim to improve areas like security, messaging, and NoSQL support.
This document provides an overview and comparison of several popular Java application servers: Jetty, Tomcat, JBoss, Liberty Profile, and GlassFish. It discusses and scores each application server on factors like download/installation, tooling support, server configuration, and documentation. The document is broken into multiple parts that delve deeper into specific areas of comparison. It aims to help developers determine which application server may be best suited for their needs and projects.
A quick overview on Node.js to see how Javascript is changing server programming : brief history & motivations, what makes NodeJS so special/popular/difficult, typical use cases, and a few popular tools around the NodeJs world : npm, Grunt, IISNode, Tools for Visual Studio, …
JVM Support for Multitenant Applications - Steve Poole (IBM)jaxLondonConference
Presented at JAX London 2013
Per-tenant resource management can help ensure that collocated tenants peacefully share computational resources based on individual quotas. This session begins with a comparison of deployment models (shared: hardware, OS, middleware, everything) to motivate the multitenant approach. The main topic is an exploration of experimental data isolation and resource management primitives in IBM’s JDK that combine to help make multitenant applications smaller and more predictable.
Vert.x - Tehran JUG meeting Aug-2014 - Saeed ZarinfamSaeed Zarinfam
This document provides an overview of Vert.x, an application platform that runs on the JVM and allows building reactive applications. Vert.x is asynchronous, non-blocking, and distributed. It uses an event-driven architecture and supports polyglot programming through modules for Java, JavaScript, Python, Ruby, and other languages. Vert.x applications are composed of lightweight verticle components that communicate asynchronously through an event bus. It provides clustering, failover, and load balancing capabilities to build scalable and resilient applications.
Java EE 7: Boosting Productivity and Embracing HTML5Arun Gupta
The document discusses the key features of Java EE 7 including improved developer productivity through more annotated POJOs, less boilerplate code, and a cohesive integrated platform. It highlights top features such as WebSocket client/server endpoints, batch applications, JSON processing, concurrency utilities, simplified JMS API, and more annotated POJOs. The document provides details on these features and code examples for concepts like WebSocket chat servers, JSON streaming API, batch job specification, and simplified JMS message sending.
Maven is a build tool that can be used to develop Liferay plugins. It provides dependency management, a common lifecycle, and conventions for building, testing, and deploying projects. The Liferay Maven support includes Liferay artifacts in Maven repositories, a Maven plugin for plugin development features, and archetypes for generating different plugin types. A demo showed creating a parent project and modules for a theme, service builder, and ext plugin using Maven. Future plans include improved IDE integration and more archetypes.
This document provides an overview of Platform as a Service (PaaS) options for Java applications, including Amazon Elastic Beanstalk, Red Hat OpenShift, CloudFoundry, and CloudBees. It discusses the benefits of PaaS for quick deployment and hosting of Java applications. It then describes several popular PaaS platforms in more detail, focusing on their features, pricing, and how they compare for Java development.
Exploring Java Heap Dumps (Oracle Code One 2018)Ryan Cuprak
Memory leaks are not always simple or easy to find. Heap dumps from production systems are often gigantic (4+ gigs) with millions of objects in memory. Simple spot checking with traditional tools is woefully inadequate in these situations, especially with real data. Leaks can be entire object graphs with enormous amounts of noise. This session will show you how to build custom tools using the Apache NetBeans Profiler/Heapwalker APIs. Using these APIs, you can read and analyze Java heaps programmatically to ask really hard questions. This gives you the power to analyze complex object graphs with tens of thousands of objects in seconds.
This document provides an overview of developing cloud native Java applications. It discusses:
- Using microservices and containers to build distributed and scalable applications.
- Key principles of cloud native design like designing for distribution, resilience, and automation.
- Tools for building microservices like Java EE, Dropwizard Metrics, Hystrix, and MicroProfile.
- Techniques for configuration, communication, diagnostics, and resiliency when developing microservices.
- Examples of using technologies like Docker, Kubernetes, Payara Server, ActiveMQ, and PostgreSQL in a microservices architecture.
The document provides a comprehensive but concise introduction to developing cloud native applications using microservices and Java technologies.
Simple tweaks to get the most out of your jvmJamie Coleman
Many developers don’t think about the JVM level when creating applications. It is something that just simply works. Now more applications are becoming cloud-native and we have JVM’s running in every microservice container, each performance gain can have massive benefits when scaled up. Some tweaks are very easy to implement and can have huge impacts on start-up time and performance of your applications. This talk will go through all the different JVM options and give you some easy and simple advice on how to get the most out of your JVM to save not only money but also energy on the cloud.
Maven is a project management and comprehension tool that handles builds, reporting, and handling of dependencies. It uses a Project Object Model (POM) file to manage projects. The POM file contains metadata like dependencies, plugins, and configurations. Maven standardizes builds through lifecycles and phases. It manages dependencies through a repository of artifacts. Liferay has integrated Maven support to allow plugin development with Maven through plugins, archetypes, and prebuilt EE artifacts.
This document summarizes the evolution of build tools for Java projects from make/bash scripts in 1995 to modern tools like Maven and Gradle. It describes Ant as an improvement over custom build scripts with standardized tasks in 2000. Maven was introduced in 2002 and became popular in 2005 by standardizing dependencies and project layout. Gradle was introduced in 2007 and combines Maven's conventions with a flexible Groovy DSL, supporting multiple languages and customization through plugins.
Full Java EE 6 support, great developer experience, multiple yet simple admin tools, embedded mode, mutli-language runtime, OSGi modularity, ... The GlassFish set of feature reads like the roadmap of our closest competitors. See how they can work for you. Today.
Rami Sayar - Node microservices with DockerWeb à Québec
The document discusses converting a monolithic Node.js application into microservices and deploying them using Docker. It begins by defining microservices and their benefits. It then describes converting a sample pizza ordering application into independent microservices for handling messages, serving the frontend, and providing an API. Next, it covers patterns for networking microservices, including using an API gateway. It concludes by demonstrating how to deploy the microservices to Docker containers and use an orchestration tool like Kubernetes to manage them.
DOAG 2011 - Upgrade Guide for Oracle ADF on WebLogic ServerAndreas Koop
The document discusses upgrading Oracle Application Development Framework (ADF) applications on WebLogic Server. It describes choosing between an in-place upgrade or out-of-place upgrade strategy. It also covers understanding upgrade tools, demonstrating the process, and concluding with important considerations for the upgrade.
GlassFish Server 3.1: Deploying your Java EE 6 ApplicationsArun Gupta
GlassFish Server 3.1 is the latest version of the open source Java EE application server. It provides improved developer productivity, clustering and high availability capabilities, and supports the latest Java EE 6 specification. Some key features include faster redeployment times, session replication for high availability, modular extensibility through OSGi, and enhanced management and monitoring interfaces. Oracle will continue to invest in GlassFish Server to deliver new Java EE versions quickly and drive further innovation in areas like hybrid application development.
GlassFish Server 3.1 is the latest version of the open source Java EE application server. It provides improved developer productivity and manageability. New features include application versioning support, application scoped resources, improved monitoring, and clustering and high availability for HTTP, EJB, and other services. GlassFish remains focused on Java EE standards, open source development, and providing the best platform for building Java applications.
This document discusses Java platforms for mobile Linux devices. It describes various Java implementations like J2ME, Java ME CDC, and embedded Java variants. It also discusses GUI frameworks like MIDP, AWT, and Swing. The document introduces the JaLiMo initiative which aims to create a complete free Java stack for mobile Linux by integrating existing projects. It discusses challenges in porting Java, building for embedded targets, and potential solutions like using Maven and packaging plugins.
The NetBeans Platform is a framework for building desktop applications in Java Swing. It provides APIs that simplify common requirements like window management, menus, actions, settings storage, and file access. The core of the NetBeans IDE itself is built on the NetBeans Platform. Plugins can be created to extend the IDE's functionality by interacting with NetBeans APIs and providing additional features. The document outlines the various APIs included in the NetBeans Platform for developing plugins, managing windows, nodes, actions, and other components.
The document provides an overview of new features in Java EE 7, including WebSocket support, JSON processing, batch applications, concurrency utilities, simplified JMS API, and enhancements to other Java EE technologies. It discusses 10 top features in more depth and includes code examples. The goal is to help developers get started with Java EE 7.
Jakarta EE is an open source Java platform that provides a wide range of APIs for building enterprise applications. It is made up of specifications covering areas like web services, security, and object-relational mapping. The document discusses the history and evolution of Jakarta EE, its relationship to other technologies like Spring and MicroProfile, and its importance for businesses, careers, and the Java ecosystem. It also outlines proposals for future versions like Jakarta EE 10 that aim to improve areas like security, messaging, and NoSQL support.
This document provides an overview and comparison of several popular Java application servers: Jetty, Tomcat, JBoss, Liberty Profile, and GlassFish. It discusses and scores each application server on factors like download/installation, tooling support, server configuration, and documentation. The document is broken into multiple parts that delve deeper into specific areas of comparison. It aims to help developers determine which application server may be best suited for their needs and projects.
A quick overview on Node.js to see how Javascript is changing server programming : brief history & motivations, what makes NodeJS so special/popular/difficult, typical use cases, and a few popular tools around the NodeJs world : npm, Grunt, IISNode, Tools for Visual Studio, …
JVM Support for Multitenant Applications - Steve Poole (IBM)jaxLondonConference
Presented at JAX London 2013
Per-tenant resource management can help ensure that collocated tenants peacefully share computational resources based on individual quotas. This session begins with a comparison of deployment models (shared: hardware, OS, middleware, everything) to motivate the multitenant approach. The main topic is an exploration of experimental data isolation and resource management primitives in IBM’s JDK that combine to help make multitenant applications smaller and more predictable.
Vert.x - Tehran JUG meeting Aug-2014 - Saeed ZarinfamSaeed Zarinfam
This document provides an overview of Vert.x, an application platform that runs on the JVM and allows building reactive applications. Vert.x is asynchronous, non-blocking, and distributed. It uses an event-driven architecture and supports polyglot programming through modules for Java, JavaScript, Python, Ruby, and other languages. Vert.x applications are composed of lightweight verticle components that communicate asynchronously through an event bus. It provides clustering, failover, and load balancing capabilities to build scalable and resilient applications.
Java EE 7: Boosting Productivity and Embracing HTML5Arun Gupta
The document discusses the key features of Java EE 7 including improved developer productivity through more annotated POJOs, less boilerplate code, and a cohesive integrated platform. It highlights top features such as WebSocket client/server endpoints, batch applications, JSON processing, concurrency utilities, simplified JMS API, and more annotated POJOs. The document provides details on these features and code examples for concepts like WebSocket chat servers, JSON streaming API, batch job specification, and simplified JMS message sending.
Maven is a build tool that can be used to develop Liferay plugins. It provides dependency management, a common lifecycle, and conventions for building, testing, and deploying projects. The Liferay Maven support includes Liferay artifacts in Maven repositories, a Maven plugin for plugin development features, and archetypes for generating different plugin types. A demo showed creating a parent project and modules for a theme, service builder, and ext plugin using Maven. Future plans include improved IDE integration and more archetypes.
This document provides an overview of Platform as a Service (PaaS) options for Java applications, including Amazon Elastic Beanstalk, Red Hat OpenShift, CloudFoundry, and CloudBees. It discusses the benefits of PaaS for quick deployment and hosting of Java applications. It then describes several popular PaaS platforms in more detail, focusing on their features, pricing, and how they compare for Java development.
Exploring Java Heap Dumps (Oracle Code One 2018)Ryan Cuprak
Memory leaks are not always simple or easy to find. Heap dumps from production systems are often gigantic (4+ gigs) with millions of objects in memory. Simple spot checking with traditional tools is woefully inadequate in these situations, especially with real data. Leaks can be entire object graphs with enormous amounts of noise. This session will show you how to build custom tools using the Apache NetBeans Profiler/Heapwalker APIs. Using these APIs, you can read and analyze Java heaps programmatically to ask really hard questions. This gives you the power to analyze complex object graphs with tens of thousands of objects in seconds.
This document provides an overview of developing cloud native Java applications. It discusses:
- Using microservices and containers to build distributed and scalable applications.
- Key principles of cloud native design like designing for distribution, resilience, and automation.
- Tools for building microservices like Java EE, Dropwizard Metrics, Hystrix, and MicroProfile.
- Techniques for configuration, communication, diagnostics, and resiliency when developing microservices.
- Examples of using technologies like Docker, Kubernetes, Payara Server, ActiveMQ, and PostgreSQL in a microservices architecture.
The document provides a comprehensive but concise introduction to developing cloud native applications using microservices and Java technologies.
Simple tweaks to get the most out of your jvmJamie Coleman
Many developers don’t think about the JVM level when creating applications. It is something that just simply works. Now more applications are becoming cloud-native and we have JVM’s running in every microservice container, each performance gain can have massive benefits when scaled up. Some tweaks are very easy to implement and can have huge impacts on start-up time and performance of your applications. This talk will go through all the different JVM options and give you some easy and simple advice on how to get the most out of your JVM to save not only money but also energy on the cloud.
Maven is a project management and comprehension tool that handles builds, reporting, and handling of dependencies. It uses a Project Object Model (POM) file to manage projects. The POM file contains metadata like dependencies, plugins, and configurations. Maven standardizes builds through lifecycles and phases. It manages dependencies through a repository of artifacts. Liferay has integrated Maven support to allow plugin development with Maven through plugins, archetypes, and prebuilt EE artifacts.
This document summarizes the evolution of build tools for Java projects from make/bash scripts in 1995 to modern tools like Maven and Gradle. It describes Ant as an improvement over custom build scripts with standardized tasks in 2000. Maven was introduced in 2002 and became popular in 2005 by standardizing dependencies and project layout. Gradle was introduced in 2007 and combines Maven's conventions with a flexible Groovy DSL, supporting multiple languages and customization through plugins.
Full Java EE 6 support, great developer experience, multiple yet simple admin tools, embedded mode, mutli-language runtime, OSGi modularity, ... The GlassFish set of feature reads like the roadmap of our closest competitors. See how they can work for you. Today.
Rami Sayar - Node microservices with DockerWeb à Québec
The document discusses converting a monolithic Node.js application into microservices and deploying them using Docker. It begins by defining microservices and their benefits. It then describes converting a sample pizza ordering application into independent microservices for handling messages, serving the frontend, and providing an API. Next, it covers patterns for networking microservices, including using an API gateway. It concludes by demonstrating how to deploy the microservices to Docker containers and use an orchestration tool like Kubernetes to manage them.
DOAG 2011 - Upgrade Guide for Oracle ADF on WebLogic ServerAndreas Koop
The document discusses upgrading Oracle Application Development Framework (ADF) applications on WebLogic Server. It describes choosing between an in-place upgrade or out-of-place upgrade strategy. It also covers understanding upgrade tools, demonstrating the process, and concluding with important considerations for the upgrade.
GlassFish Server 3.1: Deploying your Java EE 6 ApplicationsArun Gupta
GlassFish Server 3.1 is the latest version of the open source Java EE application server. It provides improved developer productivity, clustering and high availability capabilities, and supports the latest Java EE 6 specification. Some key features include faster redeployment times, session replication for high availability, modular extensibility through OSGi, and enhanced management and monitoring interfaces. Oracle will continue to invest in GlassFish Server to deliver new Java EE versions quickly and drive further innovation in areas like hybrid application development.
GlassFish Server 3.1 is the latest version of the open source Java EE application server. It provides improved developer productivity and manageability. New features include application versioning support, application scoped resources, improved monitoring, and clustering and high availability for HTTP, EJB, and other services. GlassFish remains focused on Java EE standards, open source development, and providing the best platform for building Java applications.
Deploying Java EE 6 Apps in a Cluster: GlassFish 3.1 at Dallas Tech Fest 2011Arun Gupta
GlassFish Server 3.1 provides clustering and high availability for Java EE 6 applications. It allows deploying applications across multiple instances for scalability and redundancy. Some key features include session replication using Shoal, support for clustering web, EJB, and other services, and application versioning to deploy multiple versions of an application.
This document discusses using various technologies on Google App Engine including JIQL, GaeVFS, RESTlets, scheduled tasks, JRuby on Rails, task queues, XMPP, and Clojure. JIQL emulates a relational database on App Engine's Bigtable datastore. GaeVFS provides a virtual filesystem on Bigtable. RESTlets make RESTful web services easy to implement in Java on App Engine. Scheduled tasks allow for background processing via cron jobs. JRuby on Rails provides a way to run Ruby on Rails applications on App Engine. Task queues allow for asynchronous background processing. XMPP enables instant messaging and peer-to-peer applications. Clojure can also be used
Boston 2011 OTN Developer Days - GlassFishArun Gupta
GlassFish Server is a Java EE application server that is simple, fast, and innovative. It is open source and has been downloaded over 24 million times. Future versions of GlassFish Server will continue to align with Java EE standards and focus on virtualization and platform-as-a-service capabilities. GlassFish Server 3.1 improves performance and adds clustering and high availability features.
GlassFish Server is the open source application server for Java EE. It provides a proven, high-quality Java EE runtime and is the reference implementation for Java EE standards. GlassFish Server 3.1 combines the benefits of clustering and centralized administration from version 2.1.1 with the modularity and Java EE 6 support of version 3.x. It focuses on developer productivity through tools integration and an improved embedded API, along with updated technologies like Grizzly WebSocket support and refreshed Java EE components.
GlassFish Server 3.1 is the first Java EE 6 application server with clustering and high availability capabilities. It was released in February 2011 and provides in-memory replication and clustering. The development of GlassFish is focused on flexibility, extensibility, and developer productivity through features like fast auto-deploy and incremental compiling. It utilizes a modular architecture based on OSGi and has over 260 modules.
GlassFish 3.1 – Simplifying your Java EE 6 Development and Deployment @ JAX L...Arun Gupta
GlassFish Server 3.1 is the latest version of the GlassFish open source application server. It provides Java EE 6 compatibility, improved performance over previous versions, and new features like high availability clustering and modular extensibility using OSGi. Future versions will continue focusing on developer productivity, manageability, and hybrid OSGi/Java EE applications.
This document provides an overview and introduction to Project Zero, an IBM technology incubator project that aims to build a simplified platform for developing and deploying rich internet applications. Some key points:
- Project Zero uses PHP and Groovy for application languages and is built on a Java virtual machine, allowing applications to run on Linux, Mac, and Windows.
- It focuses on simplifications like creating REST services, sharing assets between languages, assembling applications from loosely coupled components, and deploying applications with versioned dependencies.
- The architecture includes event-driven programming, a global context for shared application state, and virtualized directories to merge application files.
- Demos show creating a basic application, implementing
Phobos is a lightweight JavaScript web application framework that allows all application logic to be written in JavaScript. It runs on the Java platform and supports full-featured IDE development. Phobos integrates JavaScript and Java libraries and allows JavaScript code to be run across client, server, and database tiers for a unified programming model.
Project Zero PHP talk at JavaOne 2008.
This talk describes IBM WebSphere sMash and the PHP support within it. For more information visit http://www.projectzero.org
Personal snapshot of the JavaFX eco system in Germany at 25th of October 2017 to work with JavaFX 8 as JDK 8 Update 151 and developer preparation for JavaFX 9 with JDK 9.0.1
The document discusses the Java Virtual Machine (JVM) and ways to monitor and analyze JVM performance using Splunk. It provides an overview of the history and evolution of the JVM. It then details various sources of machine data from the JVM, such as application logs, JMX, garbage collection logs, and HPROF profiling dumps, that can be ingested into Splunk. It describes how to correlate this JVM data with operating system metrics and custom instrumentation to gain insights into application performance and issues. Finally, it presents a vision of fully instrumenting the JVM and applications with Splunk for comprehensive monitoring and troubleshooting.
GlassFish v3 Prelude is a lightweight, modular application server featuring enhancements such as modular OSGi architecture, dynamic deployment capabilities, and support for Java EE 6 technologies. It provides simplified development features like auto redeployment and session retention. The lightweight server can be used for Java, Groovy, Ruby on Rails, and other applications and includes tools like the update center and embedded usage.
eXo Platform SEA - Play Framework Introductionvstorm83
Play is a web framework for Java that aims to increase developer productivity. It uses a convention over configuration approach and includes features like hot code reloading, an integrated testing framework, and database support via Hibernate. Play lifts constraints of traditional Java web development by providing an easy to use full stack framework for building web applications.
The document provides an overview of advance Java topics including collections, multithreading, networking, AWT, Swing, JDBC, JSP, and applets. It discusses key aspects of each topic such as the collection framework providing interfaces and classes for storing and manipulating groups of data, multithreading allowing programs to perform multiple tasks simultaneously, and JDBC enabling connection between Java applications and databases. Code examples are also included to demonstrate concepts like a basic Swing program and a simple applet.
GlassFish Server is the open source application server and Java EE reference implementation. GlassFish Server 3.1 focuses on developer productivity, improved clustering capabilities, and manageability. It combines the benefits of previous versions with OSGi modularity and full Java EE 6 support. The future of GlassFish includes delivering Java EE 7 first and continued innovation while improving performance and manageability.
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on integration of Salesforce with Bonterra Impact Management.
Interested in deploying an integration with Salesforce for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
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
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdfflufftailshop
When it comes to unit testing in the .NET ecosystem, developers have a wide range of options available. Among the most popular choices are NUnit, XUnit, and MSTest. These unit testing frameworks provide essential tools and features to help ensure the quality and reliability of code. However, understanding the differences between these frameworks is crucial for selecting the most suitable one for your projects.
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.
Generating privacy-protected synthetic data using Secludy and MilvusZilliz
During this demo, the founders of Secludy will demonstrate how their system utilizes Milvus to store and manipulate embeddings for generating privacy-protected synthetic data. Their approach not only maintains the confidentiality of the original data but also enhances the utility and scalability of LLMs under privacy constraints. Attendees, including machine learning engineers, data scientists, and data managers, will witness first-hand how Secludy's integration with Milvus empowers organizations to harness the power of LLMs securely and efficiently.
This presentation provides valuable insights into effective cost-saving techniques on AWS. Learn how to optimize your AWS resources by rightsizing, increasing elasticity, picking the right storage class, and choosing the best pricing model. Additionally, discover essential governance mechanisms to ensure continuous cost efficiency. Whether you are new to AWS or an experienced user, this presentation provides clear and practical tips to help you reduce your cloud costs and get the most out of your budget.
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...Tatiana Kojar
Skybuffer AI, built on the robust SAP Business Technology Platform (SAP BTP), is the latest and most advanced version of our AI development, reaffirming our commitment to delivering top-tier AI solutions. Skybuffer AI harnesses all the innovative capabilities of the SAP BTP in the AI domain, from Conversational AI to cutting-edge Generative AI and Retrieval-Augmented Generation (RAG). It also helps SAP customers safeguard their investments into SAP Conversational AI and ensure a seamless, one-click transition to SAP Business AI.
With Skybuffer AI, various AI models can be integrated into a single communication channel such as Microsoft Teams. This integration empowers business users with insights drawn from SAP backend systems, enterprise documents, and the expansive knowledge of Generative AI. And the best part of it is that it is all managed through our intuitive no-code Action Server interface, requiring no extensive coding knowledge and making the advanced AI accessible to more users.
Trusted Execution Environment for Decentralized Process MiningLucaBarbaro3
Presentation of the paper "Trusted Execution Environment for Decentralized Process Mining" given during the CAiSE 2024 Conference in Cyprus on June 7, 2024.
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.
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on automated letter generation for Bonterra Impact Management using Google Workspace or Microsoft 365.
Interested in deploying letter generation automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slackshyamraj55
Discover the seamless integration of RPA (Robotic Process Automation), COMPOSER, and APM with AWS IDP enhanced with Slack notifications. Explore how these technologies converge to streamline workflows, optimize performance, and ensure secure access, all while leveraging the power of AWS IDP and real-time communication via Slack notifications.
A Comprehensive Guide to DeFi Development Services in 2024Intelisync
DeFi represents a paradigm shift in the financial industry. Instead of relying on traditional, centralized institutions like banks, DeFi leverages blockchain technology to create a decentralized network of financial services. This means that financial transactions can occur directly between parties, without intermediaries, using smart contracts on platforms like Ethereum.
In 2024, we are witnessing an explosion of new DeFi projects and protocols, each pushing the boundaries of what’s possible in finance.
In summary, DeFi in 2024 is not just a trend; it’s a revolution that democratizes finance, enhances security and transparency, and fosters continuous innovation. As we proceed through this presentation, we'll explore the various components and services of DeFi in detail, shedding light on how they are transforming the financial landscape.
At Intelisync, we specialize in providing comprehensive DeFi development services tailored to meet the unique needs of our clients. From smart contract development to dApp creation and security audits, we ensure that your DeFi project is built with innovation, security, and scalability in mind. Trust Intelisync to guide you through the intricate landscape of decentralized finance and unlock the full potential of blockchain technology.
Ready to take your DeFi project to the next level? Partner with Intelisync for expert DeFi development services today!
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc
How does your privacy program stack up against your peers? What challenges are privacy teams tackling and prioritizing in 2024?
In the fifth annual Global Privacy Benchmarks Survey, we asked over 1,800 global privacy professionals and business executives to share their perspectives on the current state of privacy inside and outside of their organizations. This year’s report focused on emerging areas of importance for privacy and compliance professionals, including considerations and implications of Artificial Intelligence (AI) technologies, building brand trust, and different approaches for achieving higher privacy competence scores.
See how organizational priorities and strategic approaches to data security and privacy are evolving around the globe.
This webinar will review:
- The top 10 privacy insights from the fifth annual Global Privacy Benchmarks Survey
- The top challenges for privacy leaders, practitioners, and organizations in 2024
- Key themes to consider in developing and maintaining your privacy program
Digital Marketing Trends in 2024 | Guide for Staying AheadWask
https://www.wask.co/ebooks/digital-marketing-trends-in-2024
Feeling lost in the digital marketing whirlwind of 2024? Technology is changing, consumer habits are evolving, and staying ahead of the curve feels like a never-ending pursuit. This e-book is your compass. Dive into actionable insights to handle the complexities of modern marketing. From hyper-personalization to the power of user-generated content, learn how to build long-term relationships with your audience and unlock the secrets to success in the ever-shifting digital landscape.
In the rapidly evolving landscape of technologies, XML continues to play a vital role in structuring, storing, and transporting data across diverse systems. The recent advancements in artificial intelligence (AI) present new methodologies for enhancing XML development workflows, introducing efficiency, automation, and intelligent capabilities. This presentation will outline the scope and perspective of utilizing AI in XML development. The potential benefits and the possible pitfalls will be highlighted, providing a balanced view of the subject.
We will explore the capabilities of AI in understanding XML markup languages and autonomously creating structured XML content. Additionally, we will examine the capacity of AI to enrich plain text with appropriate XML markup. Practical examples and methodological guidelines will be provided to elucidate how AI can be effectively prompted to interpret and generate accurate XML markup.
Further emphasis will be placed on the role of AI in developing XSLT, or schemas such as XSD and Schematron. We will address the techniques and strategies adopted to create prompts for generating code, explaining code, or refactoring the code, and the results achieved.
The discussion will extend to how AI can be used to transform XML content. In particular, the focus will be on the use of AI XPath extension functions in XSLT, Schematron, Schematron Quick Fixes, or for XML content refactoring.
The presentation aims to deliver a comprehensive overview of AI usage in XML development, providing attendees with the necessary knowledge to make informed decisions. Whether you’re at the early stages of adopting AI or considering integrating it in advanced XML development, this presentation will cover all levels of expertise.
By highlighting the potential advantages and challenges of integrating AI with XML development tools and languages, the presentation seeks to inspire thoughtful conversation around the future of XML development. We’ll not only delve into the technical aspects of AI-powered XML development but also discuss practical implications and possible future directions.
Driving Business Innovation: Latest Generative AI Advancements & Success StorySafe Software
Are you ready to revolutionize how you handle data? Join us for a webinar where we’ll bring you up to speed with the latest advancements in Generative AI technology and discover how leveraging FME with tools from giants like Google Gemini, Amazon, and Microsoft OpenAI can supercharge your workflow efficiency.
During the hour, we’ll take you through:
Guest Speaker Segment with Hannah Barrington: Dive into the world of dynamic real estate marketing with Hannah, the Marketing Manager at Workspace Group. Hear firsthand how their team generates engaging descriptions for thousands of office units by integrating diverse data sources—from PDF floorplans to web pages—using FME transformers, like OpenAIVisionConnector and AnthropicVisionConnector. This use case will show you how GenAI can streamline content creation for marketing across the board.
Ollama Use Case: Learn how Scenario Specialist Dmitri Bagh has utilized Ollama within FME to input data, create custom models, and enhance security protocols. This segment will include demos to illustrate the full capabilities of FME in AI-driven processes.
Custom AI Models: Discover how to leverage FME to build personalized AI models using your data. Whether it’s populating a model with local data for added security or integrating public AI tools, find out how FME facilitates a versatile and secure approach to AI.
We’ll wrap up with a live Q&A session where you can engage with our experts on your specific use cases, and learn more about optimizing your data workflows with AI.
This webinar is ideal for professionals seeking to harness the power of AI within their data management systems while ensuring high levels of customization and security. Whether you're a novice or an expert, gain actionable insights and strategies to elevate your data processes. Join us to see how FME and AI can revolutionize how you work with data!
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Project Zero For Javapolis 2007
1. Project Zero
An Agile Web Platform
Jason R McGee, DE
Chief Architect, Project Zero and WebSphere XD
IBM Corp
Thursday, December 13, 2007 1
2. What is Project Zero?
Project Zero is an Agile Web
Application Platform
Architected around Dynamic Scripting, REST, Rich
Web Interfaces, AJAX, and Feeds
Optimized for speed of development, simple
deployment, and cost-effective operation.
www.javapolis.com 2
Thursday, December 13, 2007 2
4. Languages and Scripting
Zero is a dynamic scripting platform
Application Logic is created in one of two
scripting languges
Groovy (for people that prefer Java)
PHP
Java is positioned as the “system” language
Mostly used to implement system extensions and application libraries
Entire applications can be written in Java, if desired
Requires more configuration
www.javapolis.com
Thursday, December 13, 2007 4
5. PHP Support
The Project Zero PHP runtime (P8) is built on
top of IBM’s J9 JVM
Supports use of many PHP Extensions
XAPI-C interface allows C-based extensions
XAPI-J interface allows Java based extensions
Supports bridging between Java and PHP
All of PHP is not supported
PHP runtime provided directly by Project Zero
The goal of P8 in Project Zero is to provide
PHP support within the Zero programming
model
www.javapolis.com
Thursday, December 13, 2007 5
6. Application Centric Runtime
Project Zero is an application-centric runtime
You create an application and run it
You do not package an application and deploy it to
a multi-application server
Each application runs in its own process (JVM)
Runtime is designed to be short lived
Project Zero is a full stack runtime
Everything needed to run the application is
provided by Project Zero
Including the HTTP stack
No external proxy or web server is required
An external proxy is used for clustering and multi-
app routing www.javapolis.com 6
Thursday, December 13, 2007 6
7. Modular Architecture
Zero applications are based on a very small core
4.3 MBytes (includes Groovy).
PHP adds additional 5 MBytes
Core provides all of the Zero framework and runtime support,
including HTTP transport
Zero tools are provided separately
Eclipse tools and Command Line tools are provided
Both less than 4 MBytes
Additional features provided in downloadable modules
Applications declare a dependency on desired features (using Ivy)
A package management system provides the ability to resolve
those dependencies on the local machine or pulls them from a
remote catalog server
www.javapolis.com
Thursday, December 13, 2007 7
8. EXECUTE: Runtime Characteristics
Desired traits
Nimble - Instant On
Clean - Graceful recovery, isolation, tolerates “bad” code
Cheap - Cost effective to run in small and large quantities
Supported on “stock” JVM
IBM, Sun, Mac, etc - Any JSE 5 JVM
Currently Zero takes about 1 second to start and consumes
about 20 MBytes of memory
Working on a “new reality runtime”
Modified JVM based on IBM J9 JVM
Looking at sharing behavior and startup time
Prototype shows startup times with an order of magnitude
improvement and 2.4x improvement in memory footprint
www.javapolis.com 8
Thursday, December 13, 2007 8
10. Events
All behavior in the system is modeled as a set of event
Applications are built by handling these events and providing
desired behavior
Similar to AJAX model or classic UI programming
GET
POST
secure log requestEnd
requestBegin
PUT
DELETE
www.javapolis.com
Thursday, December 13, 2007 10
11. Event Handlers
All handlers are stateless
Can be implemented in Groovy, PHP, and Java
println “Hello World”
Groovy
def onGET() function onGET()
PHP
{ {
println “Hello World” echo “Hello World”;
} }
public void onGET()
{
PrintWriter writer = (PrintWriter)zget(“/request/writer”);
writer.println(“Hello World”);
}
Java
/config/handlers += {
“events” : “GET”,
“handler” : “HelloWorld.class”,
“conditions” : [“/request/path matches /hello”]
}
www.javapolis.com
Thursday, December 13, 2007 11
12. Global Context - State Management
The Global Context (GC) provides access to and
management of all application state
Conceptually a map of data
Externalizes all state from the application logic
Enables the restartability of the JVM without data loss
Enables clustering and scaling to be added transparently
Simplifies and unifies access to application state
and data structures and simplifies state passing
within the application
Contains information provided by both the runtime
(such as request parameters) and by the
application
www.javapolis.com
Thursday, December 13, 2007 12
13. Global Content Zones
Divided into 6 zones representing different data lifecycles
Zone Scope/Visibility Lifecycle
Application All requests for all users of the For the life of the
application application, but not
“persistent”
User All request for a particular user For first access until
(HTTP Session equivalent) user times out
Request All handlers along the path of a For the duration of a
single request single request
Event All handlers for a single event The duration of a
single event
Client All handlers along the path of a The duration of a
single request, including both single request
browser and server
Config All event handlers, all the time Entire life of the
application. Read only.
www.javapolis.com
Thursday, December 13, 2007 13
14. Accessing the Global Context
Data is organized by a URI structure
First part of URI is always the Zone name
/app, /user, /request, /config, /event, /client
Access is modeled after REST
GET, PUT, POST, DELETE
Java
String path = GlobalContext.zget(“/request/path”);
GlobalContext.zput(“/user/counter”, i);
PHP
$path = zget(“/request/path”);
zput(“/user/counter”, $i);
Groovy (zget/zput work too)
def path = request.path[];
user.counter = i;
www.javapolis.com 14
Thursday, December 13, 2007 14
15. Value Pathing
The GC provides simplified access to
certain data structures
Called Value Pathing
Understands
Maps, List, Objects, XML, JSON
Allows read and write access to internals of
the structure through the GC address
Map
request.params.name[]
List
request.list[2];
XML
request.mydoc[/book/author];
www.javapolis.com 15
Thursday, December 13, 2007 15
17. Virtualized Directories
Project Zero provides seamless integration of
directories across an application and its dependencies,
while maintaining each as separate entities.
All artifacts are searched within both the application
and its declared dependencies
www.javapolis.com
Thursday, December 13, 2007 17
18. Configuration
# Value set
/config/http/port = 8080
# List set
/config/resources/defaultExtensions = [quot;.groovyquot;]
Zero configuration file: zero.config # List append
/config/bindings/.groovy +=
The config/zero.config file is [quot;zero.core.groovysupport.bindings.DefaultBindingsquot;]
processed at the start of a Zero # Map set
application. /config/test/map = { quot;aquot; : quot;bquot;, quot;cquot; : quot;dquot; }
The content of a config/zero.config # Map append
/config/test/mapappend += { quot;aquot; : quot;bquot;, quot;cquot; : quot;dquot; }
file is organized into quot;stanzasquot; of /config/test/mapappend += { quot;xquot; : quot;yquot;, quot;wquot; : quot;zquot; }
related key/value pairs. Stanzas are
# Event handler
associated with directives, such as /config/handlers += {
quot;store to the Global Contextquot; and quot;eventsquot; : quot;GETquot;,
quot;include another configuration file.” quot;handlerquot; : quot;custom.Handler.classquot;
}
# Value reference (insert value read at config-load time)
/config/property/myPrefix = quot;/foo/barquot;
/config/test/value = quot;${/config/property/myPrefix}/batquot;
# Variable set/value reference
myPrefix = quot;/foo/barquot;
/config/test/value = quot;${myPrefix}/batquot;
# Include
@include quot;${/config/dependencies/zero.core}/config/security/
form.configquot;
{ quot;formLoginPagequot; : quot;/loginquot; }
www.javapolis.com
Thursday, December 13, 2007 18
19. Other core things we have not covered
Rendering
Direct
Indirect
File Serving
Error Handling
Logging/Tracing/Debugging
Client Programming with Dojo
Security
Proxying
www.javapolis.com
Thursday, December 13, 2007 19
20. DEMO
Hello World and Core Tooling
Thursday, December 13, 2007 20
21. Start of the Web App Framework
Starting to solidify model for simplifying the UI
side of a web application
Numerous pieces in place
Service model, Dojo, Reactive Client, Global Context
and Events extended to the browser
GC/Events on the Browser
Allows you to map a physical UI event to a logical
application event
Can handle the application event on either the server
or in the browser
The DOM of the browser is exposed via the GC to
the application on either side
www.javapolis.com 21
Thursday, December 13, 2007 21
22. DEMO
Web Application Framework
Thursday, December 13, 2007 22
25. Zero Resource Manager
Zero Resource Manager (ZRM) extension provides a REST
oriented view to data
A layer of abstraction between the actual data store and REST
A constrained set of APIs that encourage RESTful application architecture
A data model that maps well to REST and feeds
Default top-down data mapping scheme & automatic table creation
First class support for accessing data in a RESTful fashion both programmatically and
via HTTP
Resources defined in the data model can be accessed via HTTP with no manual coding
First class support for accessing data as feeds
Robust frameworks for
Persistence, validation, and serialization
www.javapolis.com 25
Thursday, December 13, 2007 25
26. Not an ORM
Significantly constrained model from ORMs
A data model that is geared towards REST rather than an
arbitrary POJO model
No byte code weaving etc. object management magic needed
A default top down mapping scheme rather than mapping an
arbitrary db schema to an arbitrary POJO model
No mapping tools or annotations required
No state maintained per user rather than a stateful POJO
model
No complex persistence engine needed to keep track of
dirtiness
www.javapolis.com 26
Thursday, December 13, 2007 26
27. Resource model
The resource model is a collection of resource type definitions
A resource type definition contains the definitions for fields, constraints,
relationships, and collections
The resource type definitions
Are datastore independent
Default top-down mapping scheme for RDBs
Can be shared across applications
Can be created and manipulated either declaratively / programmatically or via
HTTP
Defined in a groovy script in /app/models
def fields = { person ->
person.firstname CharField, maxlength: 35
person.lastname CharField, maxlength: 50
person.age DateField
}
www.javapolis.com 27
Thursday, December 13, 2007 27
28. DEMO
Employee Demo (ZRM)
Thursday, December 13, 2007 28
29. zero.data (powered by PureQuery)
Want full power of SQL?
Use zero.data
Provides inline SQL directly from scripts
Designed to allow straight SQL while
simplifying common query patterns
Result set access, output and formatting
Parameter passing
Paging, etc
www.javapolis.com 29
Thursday, December 13, 2007 29
30. DEMO
Employee Demo (zero.data)
Thursday, December 13, 2007 30
31. Assemble
Assemble component provides the capability to access
different services and assemble them into a Project Zero
application
Constructing a feed style application that processes and
aggregates a set of feeds from different sources.
Constructing a conversational application that coordinates
interactions with services.
Allowing Project Zero applications to access services through a
common API.
Provides
A simple XML model for describing a sequence of
activities that provide function for an application
A flow engine to execute the XML flow description
A graphical tool for constructing flows
www.javapolis.com 31
Thursday, December 13, 2007 31
32. DEMO
Feed Aggregator Flow
Thursday, December 13, 2007 32
33. Catalog of Content
Data Formats
JSON, XML, ATOM (including APP), RSS
Flow Engine
Feed and Control flows
Accessing backend resources
Data Zero, HTTP, Mail
Presentation Components
Dojo, Reactive Client, Web Flow, Templates
Services and Widgets
tagging, comments, ratings, blogs, profile, news,
reviews, ratings, polls, wiki pages, Amazon (ECS,
EC2, S3), Google, EBay
Security
Active Content Filtering, OpenID
Misc
Apache mod_proxy config
Zero Catalog Application
www.javapolis.com 33
Documentation Generator (REST Doc)
Thursday, December 13, 2007 33
35. The Home of Project Zero
www.javapolis.com 1
Thursday, December 13, 2007 35
36. Purpose of ProjectZero.org
Experiment in a more transparent form of
commercial development
Community Driven Commercial Development
Community-Driven means that we want feedback, insight, suggestions,
criticism, and dialogue with the users of Project Zero
Commercial means that this is not an open source project. The licensing
is very liberal, but not completely open
Development means that this community is about the technology and how
it is developed and evolves.
www.javapolis.com 2
Thursday, December 13, 2007 36
37. What is available?
Wiki containing documentation, project information, roadmaps, design
documents, demos, samples, iCal calendar, future plans, etc
Forum for interactive discussion
Help and Feedback for questions from users
Developer Alerts to notify users of new features and breaking changes
Zero Development for publically accessible discussion amongst the Zero development
team
Blogs for alerts and personal commentary
Product blog
Personal blogs of the project leaders
Downloads
Eclipse Tools, Command Line tools and Zero components
Bug Tracking System (Bugzilla)
Source code (Subversion)
An online catalog of Zero extensions
Soon to be open for user contributions
Zero Alive! - online Zero playground
www.javapolis.com 3
Thursday, December 13, 2007 37
38. Q&A
www.projectzero.org
Thursday, December 13, 2007 38