Intro
Overall Presentation Goal
Speaker's Qualifications
What Gartner thinks of JavaScript
JavaScript
JavaScript Tools
Project Phobos
Target Audience
Phobos Goal
Architecture
Performance: grizzly+Javacript
Programming Model
Application Layout
Application
Application Layout
Application
Where does the logic go?
#1 - Plain Scripts
#2 - Controllers
Sample Controller
Embedded Javascript (.ejs)
Sample Controller
Embedded Javascript (.ejs)
#3 - Resources
Ajax on the client
Other Libraries
JPA sample
Script engine: Rhino (Mozilla)
JavaScript Extensions in Rhino
E4X sample
JSON
jRuby
Under the Hood: PhobosAdapter
Supported Deployment Models
NetBeans Support for Phobos
Testing and Debugging
Building, Deploying, Running
Future / Roadmap
Summary
To learn more
Scripting and dynamic languages are one of the most exciting topics in programming these days. Languages like Javascript, Ruby, Python and others have soared in popularity in recent years, each bringing a fresh, different perspective to the activity of programming. Developers can take advantage of the dynamic nature of scripting languages to bind components together more easily and with fewer lines of code, resulting in higher productivity. This JavaPolis presentation will cover an open source project code-named Phobos which is a lightweight, scripting-friendly, web application environment running on the Java platform, aimed at addressing emerging developer requirements. The goal of Project Phobos is to show that Java is an excellent platform for server-side scripting, allowing dynamic-language developers to leverage the power of Java SE and EE. The initial language that Phobos is supporting on the server side is JavaScript, and jRuby will follow.
Live demo using IDE integration of Phobos projects will be presented, including Ajax support and the ability to debug asynchronous calls from the browser right in the IDE, JPA (Java Persistence API) usage in the context of JavaScript to generate CRUD applications, as well as JavaScript server debugging.
Ludovic Champenois is a Senior Architect at Sun Microsystems, and has been with Sun and Java for the last 10 years. He is one of the tech lead and architect on Sun's Application Server and is responsible to ensure best in class developer experience for Java EE programmers with Sun Application Server and tools. (NetBeans, Studio Enterprise and Studio Creator). Ludovic is also heavily involved in leading Sun's open source initiative (Projects GlassFish, jMaki, Phobos).