Sessions

STAY TUNED WITH JAX INDIA 2008






 


Spring+JPA+Hibernate: Standards Meeting Productivity for Java Persiste

Ken Sipe, Perficient, Inc

This session will look at in detail the persistence capabilities of the latest Spring 2.5 and how to provide data access capabilities, including nicely added features for unit tests. We'll focus the persistence discussion on JPA and examine a number of ORM mapping scenarios and how JPA maps to them. We'll focus on the spring integration including transactional capabilities.


Stop Bouncing Your Server


Ken Sipe, Perficient, Inc

In todays Java 6 world, with its superior runtime monitoring and management capabilities the reasons to the bounce the server have been greatly reduced.Combined with proper JMX instrumentation, the need to bounce the server may be eliminated for all but the rarest of cases. This session will look at the Java 6 monitoring and management capabilities with demonstrations using freely available tools.


How to Apply Software Archeology to Your Development Process

David Intersimone, CodeGear

Software Archeology is an approach of looking at existing software for patterns of use, design strategies, standards adoption and quality assessment. It can be used by new teams that inherited a massive amount of existing Java code, or a team that is trying to extend their current project in new ways. The entire process of Software Archeology will be covered in this session.


Application Factories, Part II: An Application-driven Development Model


Ravi Kumar, CodeGear

One of the most persistent problems faced by all developers is how to transfer knowledge between team members. For example, how does an architect indicate intent in code for subsequent developers to build on? This session introduces Application Factories with real world examples of this powerful development paradigm and how to effectively build reusable software assets effectively.


Plug-in Development Tips, Tricks and Best Practices


Chris Aniszczyk, IBM Lotus

This session will discuss tips and tricks that can save time in developing plug-ins and will also cover some lesser known, but extremely useful, parts of PDE. Attendees will leave the session with a good understanding of the Eclipse plug-in development best practices and some new tricks to help them develop plug-ins in the future.


Writing Portable JPA Applications


Mike Keith, Oracle Corp

The Java Persistence API is intended to be a standard for O-R persistence. However, there are still traps and pitfalls that can lead to unnecessary coupling to the persistence provider implementation. This talk will discuss the issues around portability. It will demonstrate where the risks are and offer hints to developers wanting to write portable JPA applications.

 


Spring 2.5 - Spring without XML

Ken Sipe, Perficient, Inc

With growth of large and complex Spring applications which struggle with XML manageability there is a push for less XML. The session walks through the new Spring 2.5 enhancements, then dives deep into annotation oriented injection. The demonstrations include standard applications as well as a look at the new Spring MVC.


SOAs Challenges


Ken Sipe, Perficient, Inc

The purpose of this session is to challenge the practicality of SOA and discuss the questions that we need to answer about service oriented techniques, practices and tooling. What is the right abstraction level for a service? Where does PBEL fit? When is an ESB appropriate or not?


Developer UML


Jeff Anders, CodeGear

Today developers are bombarded with techniques, methodologies, and best practices to help them solve the underlying problem of getting more done in less time. UML is not exception to that rule, but does a developer need to focus on all of the defined UML models to be successful or for that matter does the abundance of UML models possibly get in the developers way of being successful?


Test First Development Using Eclipse

Wayne Beaton, The Eclipse Foundation

Test first development is a top-down process by which code is written starting with tests. Once tests have been created, the process changes to that of making the tests work by implementing the application code. In this short talk, we demonstrate how Eclipse support for JUnit facilitates test first development in the context of creating Java and Java EE applications, and plug-ins.


 


GWT - JSF Done Right ?


Papick Garcia Taboada, pgt/adminSight

GWT's mission is to radically improve the web experience for users by enabling developers to use existing Java tools to build no-compromise AJAX for any modern browser. This session shows what this mission statement means for the Java developer and for the Java Enterprise industry.


Complex Event Processing with Esper

Papick Garcia Taboada, pgt/adminSight

Complex Event Processing, or CEP, is technology to process events and discover complex patterns among multiple streams of event data. ESP stands for Event Stream Processing and deals with the task of processing multiple streams of event data with the goal of identifying the meaningful events within those streams, and deriving meaningful information from them. The Esper engine has been developed to address the requirements of applications that analyze and react to events.


Anatomy an Eclipse RCP Application


Wayne Beaton, The Eclipse Foundation

In this presentation, we walk through some of the key points in the code for an Eclipse Rich Client Platform (RCP) application. Discussion includes the use of extension points to make the application extensible, the inclusion of custom widgets, and leveraging components as both an independent RCP application, and as plug-ins to an existing Eclipse environment.


Task-oriented Java Programming with Eclipse Mylar


Wayne Beaton, The Eclipse Foundation

This session shows you how you can use Eclipse Mylar's task orientation to save time during software development and maintenance. Specific topics include integration with task repositories/bug tracking systems (especially. Bugzilla, JIRA), creating, activating and switching between tasks.


Application Factories, Part I - What's next for the IDEs?


Ravi Kumar, CodeGear

To get a perspective, let's step back and look at software development today. Over the last few decades a ton of applications has been written and thanks to open source, a large part of it is in the public domain. The capability as well as the complexity of applications has continued to grow exponentially. Most applications are developed in teams, often geographically distributed. Most applications have evolved over a number of years with many nuances, patterns and best practices very specific to each application, and a tremendous flux of personnel leave their fingerprints through the evolution of the application. The major challenge in application development today is to factor in application-specific information.


Groovy- Dynamic Language for JVM


Guillaume Laforge, Groovy Project Manager

Groovy is a dynamic language that runs atop the JVM, providing modern features to Java developers today. As Groovy has the best integration with the Java platform and language so far, in this session you will learn step by step how Groovy can help you in your daily Java development and still be able to tell your boss you are working with Java. Basic knowledge of dynamic languages as Ruby, Perl, Python or Perl is desired for attendees, as it will help grasping concepts common to all those languages. This presentation will show participants how Groovy works on its own and how it can interact will usual Java code. It will cover the major Groovy-isms that one should be aware of when coming to Groovy from a Java background and will provide a high level view of all the Groovy syntax constructs, its specific features and APIs to simplify the life of Java enterprise developers.


Grails, an agile and productive Web framework


Guillaume Laforge, Groovy Project Manager

The past year has seen a new generation of web frameworks emerging from the Java™ community, and Grails has been one of frameworks at the forefront of this movement. Based on the dynamic language Groovy and leveraging popular open-source libraries such as Spring and Hibernate, Grails offers the ease of use that developers using Java technology have been crying out for while embracing the software stacks already familiar to these developers. However, Grails is not just a web framework but rather a complete software stack including an advanced build system; an integrated object-relational mapping (ORM) layer built on Hibernate; and advanced domain-specific languages (DSLs) for performing common tasks such as validation, URL rewriting, and querying. In addition, Grails provides an extensible plug-in system and a rich array of plug-ins that further extend its capabilities. In this session, Guillaume LaForge -- fresh from founding G2One Inc., the Groovy/Grails Company -- takes you through a guided tour of the framework and its features. You'll learn how Grails dramatically simplifies the use of persistence via Hibernate through metaprogramming techniques; how, through the use of convention, Grails obviates the need for verbose Spring configuration; and how Groovy can significantly reduce the verbosity of your Java technology-based code.


Writing Domain-Specific Languages with Groovy


Guillaume Laforge, Groovy Project Manager

Domain-Specific Languages are an "architectural hot-spot", as coined recently by InfoQ editors. With dynamic languages such as Groovy, it is easy to create a mini-language modelling a particular business domain. Thanks to these DSLs, developers and subject matter experts will be able to share a common metaphor, to deliver, hand in hand, the final application to the end users. Groovy offers a great deal of flexibility in terms of concise and expressive syntax, and through its dynamic nature. After an introduction to the concepts of DSLs and their motivation, Guillaume Laforge, project lead of Groovy and spec lead of JSR-241 standardizing the Groovy language, will guide you through the advanced Groovy concepts that will help you create your own embedded DSL. He will show you how to integrate them in your JEE application, and also explain how to best design such business languages to ensure their adoption by the end users, their quality, testability, andcapacity to evolve over time to suit the needs of the day. In the IT industry, understanding the domain within which customers evolve is a key factor in the success of a project. From this domain and its wealth of concepts, as software developers and architects, we can derive a design that is aimed at solving problems encountered in the day-to-day business. So far, we mostly solved these brainteasers with computer science paradigms like Object-Oriented Programming, n-tier architectures, or with tools such as rules engines to stay close to the domain at hand. In this session, our goal will be to investigate how the paradigm of Domain-Specific Languages can be leveraged to help our teams build solutions closer to our users' needs and requirements, and how it can provide a viable, efficient and expressive alternative problem-solving pattern. The technology of choice for enabling DSL solutions for your projects will be Groovy, a dynamic language for the Java platform.

 



A Couple of Golden Rules for Managing Your Architecture


Alexander v. Zitzewitz hello2morrow

It is always beneficial for a project to define a clear software architecture. But how can you fight growing deviations between the planned architecture and the physical code base? How can you avoid expensive redesigns and refactoring phases? How can you achieve an outstanding technical quality of your code base? The session explains the basics concepts of architecture management for Java projects. By applying a few simple rules on your project you can avoid otherwise unavoidable deviations between your architecture and your code base and dramatically increase the probability of success for your java project.


The Da Vinci Machine (OpenJDK Multi Language Virtual Machine)


Thamaraiselvan ThoughtWorks

The OpenJDK Multi-Language VM has introduced a capability to load anonymous classes into the JVM. This opens up a host of possibilities, especially for the developers who want to implement dynamic languages over the JVM. This talk will provide a quick how to on using this class loading capability and introduce the attendees to some of the possibilities opened up by this technology.


Automated Functional Testing


Vivek Singh ThoughtWorks

Automated Functional Testing suffers from brittleness in the face of even minor changes in the application and vendor script lockin. This talk explores ways of making functional tests more maintainable by treating test code as code and applying techniques and principles like refactoring, encapsulation, etc. to test code.


Introduction to Ruby on Rails


Michael Johann, IT Consultant, Guru

Ruby on Rails is the famous framwork to build web applications in a fraction of a time you would need with Java technology. Based on the dynamic lanugage Ruby, Rails is also the killer app for the language. It's based on "Convention over configuration" and comes with many plugins and generators. Ruby on Rails is completely database independent and provides a full stac MVC based framework for building web applications. This session will demonstrate the most important concepts of Ruby on Rails and gives you many hints for starting your first own project.


Advanced Rails Topics


Michael Johann, IT Consultant, Guru

For those of you, who have already made the first steps with Ruby on Rails, this session will provide you with many many tips and practical tricks to get the most out of Ruby on Rails. This session demonstrates Behavior Driven Development with rSpec, Deployment with Capistrano, versioning with Mercurial and many more. Based on a real example project, attendees will learn how to take the next steps on their journey with Ruby on Rails.


Spying into the Heart of Eclipse


Chris Aniszczyk (IBM)

What is introspection in Eclipse terms? Well, did you ever want to know where the code is for what you're looking at in Eclipse? For example, when looking at the Plug-in Manifest Editor, did you ever wonder where the code is for it? Well look no more, this talk will introduce the Plug-in Spy, a new feature in the 3.4 version of Eclipse. We'll also discuss the topic of introspection in Eclipse.


Introduction to the Eclipse Communications


Chris Aniszczyk (IBM)

An Introduction to the Eclipse Communications Framework The Eclipse Communications Framework (ECF) is a framework for supporting the development of distributed Eclipse-based tools and applications. It can be used to create other plug-ins, tools, or full Eclipse RCP applications that require asynchronous point-to-point or publish-and-subscribe messaging. This talk will introduce ECF as a framework and demo examples of what is possible with ECF.


Design time Governance in Service Oriented Architecture


Amit Jain, Development Architect, SAP

This talk will focus on the importance of Design time Governance - both as a process (PIC) and from a tool perspective (ESR). The presentation will focus on the following points:

  • Design time lifecycle - >From Service Cut to Implementation
  • Importance of common metamodel
  • End to end modeling (from Process components to data types)
  • ESR as a central monitoring Environment for SAP
  • Governance in ESR


Developing Composite applications to leverage Service Oriented Architecture


Ajit Kumar Narayanan, Project Manager, SAP

This talk will introduce the idea of Composition Environment and the benefits of the same. It will explain how one can leverage the key benefits of Service Oriented Architecture by building quick and agile Composite applications that use the Services. In addition, it will focus on:

  • The different layers of the composition environment (business logic, UI, process, portal)
  • Modeling tools for UI consumption
  • CE as a showcase
  • Visual Composer, Web Dynpro, Adobe interactive forms and probably Galaxy.


Modeling tools in Eclipse.


J Sripad, Development Architect, SAP

From being a Java IDE, Eclipse has now become modeling tool of choice with its rich features and extensible architecture. And with the advent of Model Driven Architecture, Eclipse has a major role to play as the development environment of choice. This talk wants to showcase the capabilities that can be realized on the Eclipse platform by showcasing the the end to end modeling support that is provided as part of the SAP Composition Environment.


Making Architecture Understandable 


Jochen Boeder, SAP AG / SAP Labs India

Software architects, developers and managers have to communicate about complex technological topics, such as the architecture of SOA based systems, heterogenious system landscapes, or extensive meta models. This session introduces into conceptual modeling of architecture aspects using SAP's UML-based modeling standard TAM (Technical Architecture Modeling). It explains technical architecture modeling using SAP's enterprise SOA as practical example. Technical architecture modeling can be used by software and enterprise architects when discussing, presenting or documenting the architecture of complex technical systems.


S+S Building blocks


Ramnish Singh, Senior Architect, Microsoft India

With all the buzz around S+S, everyone is expected to understand and be able to articulate what S+S is? But do you know, what are its building blocks? What impact will the consumption of Services have on existing infrastructures and operations? These questions and more will be discussed in this session along with recommendations. This session will take an infrastructure view of S+S.'


What’s new for Ajax developers in IE8?


Janakiram MSV, Program Manager, Microsoft India

Internet Explorer 8 has a lot of promising tools for Ajax developers. It ships with developer tools out of the box to enhance the productivity of the web developers. Come learn about the new and updated tools in Internet Explorer 8 that help to build and debug HTML, CSS, and JavaScript as well as the new AJAX features that help enable powerful and dynamic Web applications. This session will show how to build rich, engaging web applications based on the latest tools & techniques available in Internet Explorer 8. You will also learn about the enhanced support for building dynamic AJAX applications.


Cross Platform Development Using Team Foundation Server (TFS)


Tejasvi Kumar, VSTS Technology Specialist, Microsoft India

Team Foundation provides you with a common development repository for multiple platforms including Java. During this session, we will showcase the advantages of having a common development repository that comprises of the source code control system, change management capabilities, process methodologies, build system, etc to unearth real-time progress charts & any other bottlenecks that you might have in your development processes. Additionally, we will give you insights into Microsoft’s approach towards ALM & delve into how the Team Foundation Server (TFS) provides visibility into your development lifecycle and facilitate constant communication and collaboration across the entire team.


JSF 2.0, Insight and Opinion


Ed Burns, Sun Microsystems

This presentation will give you insight into what Sun and the JCP Expert Group are doing to advance the art of Java web application development with the JavaServer Faces 2.0 specification. You will learn how we are developing the technogoly, what to expect in the next release, and why it's important to you.


Enterprise Grade Ajax and JSF


Ed Burns, Sun Microsystems

This presentation will demonstrate how JSF and AJAX are perfect together. We begin with an insight into the design heritage of JSF, and how that heritage puts JSF in good stead to be productive in the AJAX world. Building on that foundation we dive into the code from the page author and component developer's perspective. We close with a look to the future and show how JSF is being used for mobile and disconnected applications.


Glassfish: the best Open Source Application Server


Ed Burns, Sun Microsystems

This presentation will give you a multi-faceted view of why Glassfish is the best Open Source application server. Perspectives will be presented from the viewpoint of the developer, the deployer/hoster, and the business. Not just marketing fluff, the speaker is an active glassfish user and developer who cares deeply about its success in the competitive Java Application Server marketplace.


Technologies Ain't no Architectures


Papick Garcia Taboada (pgt/adminSight)

Previously established approaches, concepts and procedures have been partially revised or even jeopardized by the new Java Enterprise Edition. Too complicated here, too monolithic there, and hardly ever tested. New ways emerging with Spring, Hibernate, Maven and company - tools and technologies. But where is the architecture?


Scripting Support on the Java Platform


Chuk-Munn Lee Sun Microsystems

Scripting has been gaining acceptance in the enterprise space. Over the past 3 years, scripts have been elevated from from being a utility to a full fledged application environment. The latest version of the Java platform, JavaSE 6, supports interaction with any JSR-223 compliant script engine. Using this new feature, developers can now add new and innovative features to their applications.


Cool User Interfaces with JavaFX


Chuk-Munn Lee Sun Microsystems

The Java platform has been extremely prevalent on the backend. However good and cool Java user interfaces are extremely rare. Creating cool effects has been a black art. The Java2D APIs, though powerful, are quite difficult to use. JavaFX is a scripting Java based scripting language. It allows you to access Java2D features like painters, images, imageop, Swing components, etc easily. This session will introduce the audience to JavaFX and will show how to perform some common visual archetype like zooming, fade in/fade out, clipping, scaling, etc.


Shift Happens


Roy Singham - Founder Chairman - ThoughtWorks

The “Monoliths” of the recent past are declining: processes, standards, software, companies, empires, and software business models are shifting. Processes like agile and lean manufacturing replace big, up-front design; moreover, we’ve seen processes like CMMI, ISO9000, and SixSigma fail to succeed in practice, though they seemed appropriate in theory. The rise of India and China and the resurrection of the EU signal long term historic changes in economics, politics and indeed IT innovation. We see a new wave of technical innovation and change: REST, Polyglot programming, DSL's are on their way. We in IT have failed lived up to our responsibilities IT is relevant to business strategy, regardless of the lethargy and declining confidence of business executives. Overly complex and ivory tower architectures constrict the needs of our business partners. New strategies and tactics are required. Shift happens