Java Platform Track Schedule

Sunday, November 6, 2005 — 2:00pm - 6:00pm
2008 Web Application Development using Struts, Shale, and JSF
Ken Sipe — Code Mentor, Inc.
Type: Preconference Tutorial.
Level: Beginning.
Haven't had time to jump into struts? Wondering what all the fuss is about? Just getting starting with J2EE Web development and want to look at industry best practices? Wanting to improve your Web development practice? This tutorial session provides the details necessary to leave the conference ready to program a struts application using industry best practices. The session starts with a broad walk-through of struts and how to leverage JBuilderX to create a struts application followed by a walk-through of all the struts HTML form tags and how to use them. We go into details on using the Tiles framework within struts. The tutorial includes an introduction to JSF with a look at the future of Struts called Shale.
Prerequisites: Some experience with Java and Web development.
Room: Continental Parlor 1-2
Monday, November 7, 2005 — 9:00am - 1:00pm
2010 Understanding Service-oriented Architectures
Eric Whipple
Type: Preconference Tutorial.
Level: Beginning.
This tutorial focuses on the fundamentals of service-oriented architectures (SOAs). What considerations should developers be focusing on? What pros and cons are involved? How should architectures be partitioned? These and more issues are covered in detail during this tutorial.
Prerequisites: None.
Room: Continental Parlor 3
3004 Achieving J2EE Agility with Spring
Patrick McMichael — Pillar Technology Group, LLC
Type: Preconference Tutorial.
Level: Intermediate.
This tutorial, geared towards the J2EE developer, provides attendees with advice on how to put the Spring framework to practical and strategic use in the enterprise. While much of the popular buzz around Spring focuses on using it as an alternative to EJB containers, this presentation highlights some practical ways in which Spring really complements traditional J2EE activities. In fact, Spring's lightweight approach has blazed the trail for much of where EJB 3.0 is heading. Learn how to leverage the Spring meta-framework in the J2EE space to architect solutions which exhibit extremely loose coupling and an incredible degree of flexibility. Emphasis is also placed on Spring’s contributions to agile/XP practices such as test-driven development.
Prerequisites: Solid understanding of Java and object-oriented fundamentals. Familiarity with J2EE is also beneficial.
Room: Continental Parlor 1-2
Monday, November 7, 2005 — 2:00pm - 6:00pm
2014 Java Persistence Frameworks

Ken Sipe — Code Mentor, Inc.
Type: Preconference Tutorial.
Level: Beginning.
This tutorial provides more time then a standard session to detail three major persistence frameworks. We'll spend an hour with each of the frameworks: hibernate, JDO, and EJB 3. The coverage of each framework should be sufficient to leave the tutorial capable of developing with that framework. Details covered in each section are: domain model mapping; search queries; transaction management; Xdoclet; and, testing. The remaining time focuses on comparisons and best practices with real-world examples.
Prerequisites: Some Java experience.
Room: Continental Parlor 3
Tuesday, November 8, 2005 — 12:30pm - 1:15pm
9102 Introduction to JMS

Eric Whipple
Type: Birds-of-a-Feather.
Level: Beginning.
This session introduces attendees to message-oriented middleware specifically using the Java Messaging Service. Topics include the role of messaging, implementation of the JMS specification, and best practices including integration methodologies.
Prerequisites: Some experience with Java.
Room: Continental Parlor 3
9104 J2EE Development Using Eclipse and WTP

Ravi Kumar and Helen Bershadskaya — Borland
Type: Birds-of-a-Feather.
Level: Beginning.
This session describes how to build and run basic J2EE and Web Services applications using Eclipse and WTP. We discuss the WTP project structure, server configuration, creation of modules, build system, etc. In the process, we cover application development using Servlet/JSP, EJB and Web Services using wizards, views and annotations. Along the way, we point out the differences and similarities of working with J2EE applications in JBuilder and Eclipse/WTP. We also provide a status and roadmap of WTP.
Prerequisites: Basic knowledge of J2EE applications.
Room: Continental Parlor 7
Tuesday, November 8, 2005 — 1:30pm - 2:45pm
2108 Overview of Core SDP for Java

Michael Rozlog — Borland
Type: Regular Session.
Level: Beginning.
Learn how to use all of the Borland suite of Java tools to help streamline development. Understand how to use the Optimizeit suite to resolve pesky errors. Learn how to use Together Audits and Metrics to reduce complexity and help to establish good testing processes. See both Request Analyzer and ServerTrace used to increase the performance of J2EE applications.
Prerequisites: None.
Room: Continental Parlor 3
3102 Clean Up Your Code: 10 Java Coding Tricks, Techniques, and Philosophies
Neal Ford — ThoughtWorks
Type: Regular Session.
Level: Intermediate.
This session delivers ten techniques for improving your code, whether you are freshly graduated or a grizzled veteran. It is derived from many sources, including other languages, techniques, and idioms we have developed teaching developers.
Prerequisites: Frustration with hard to read code.
Room: Continental Parlor 1-2
Tuesday, November 8, 2005 — 3:15pm - 4:30pm
1112 Test-driven Development with Together and JUnit
Don Kranz — PROCESS-exchange, Inc.
Type: Regular Session.
Level: All.
UML Sequence Diagrams can be used in Together (Architect, Developer) to describe test scenarios. JUnit test classes and methods can be automatically generated by Together. We demonstrate some useful patterns for accelerating the test development process.
Prerequisites: Familiarity with Together, UML, sequence diagrams, and class diagrams.
Room: Continental Parlor 3
Tuesday, November 8, 2005 — 4:45pm - 6:00pm
3110 JBoss Fundamentals with JBuilder
Ken Sipe — Code Mentor, Inc.
Type: Regular Session.
Level: Intermediate.
JBoss has a sizable hold of the J2EE market. If not for production, it is often used in development for increased productivity. This session assumes you understand J2EE, diving right into JBoss configurations and best practices. Using a full J2EE Web application as an example, we look at how to leverage JBoss using JBuilder. The session focuses less on slides and more on showing productivity techniques.
Prerequisites: Some Java experience.
Room: Continental Parlor 3
Wednesday, November 9, 2005 — 7:00am - 7:45am
9300 Building Domain Languages Atop Java

Neal Ford — ThoughtWorks
Type: Birds-of-a-Feather.
Level: Advanced.
This session shows how to use Java as the building block for domain-specific languages. It shows you how to create your own customized language for solving specific problems.
Prerequisites: None.
Room: Continental Parlor 3
Wednesday, November 9, 2005 — 9:30am - 10:45am
2122 Build Your Own Eclipse Plug-ins Effectively
Vishy Kasar — Borland
Type: Regular Session.
Level: Beginning.
This session teaches how to build your own plug-in using step-by-step instruction and demonstration. No prior knowledge of Eclipse is assumed. If you have been developing in Java and wondering about what these Eclipse plug-ins are all about, this is the session for you.
Prerequisites: Experience with Java and some Eclipse background.
Room: Continental Parlor 3
Wednesday, November 9, 2005 — 12:30pm - 1:15pm
9200 J2EE Performance Tuning How-to

Michael Rozlog — Borland
Type: Birds-of-a-Feather.
Level: Intermediate.
Learn how to find and fix errors and decrease the total time to problem resolution using the industry standard ServerTrace. Understand how to configure and use ServerTrace to find pesky errors that are usually blammed on poor performance or bad coding.
Prerequisites: None.
Room: Continental Parlor 3
Wednesday, November 9, 2005 — 1:30pm - 2:45pm
2104 Understanding Service-oriented Architectures
Eric Whipple
Type: Regular Session.
Level: Beginning.
This session focuses on the fundamentals of service-oriented architectures (SOAs). What considerations should developers be focusing on? What pros and cons are involved? How should architectures be partitioned? These are some of the issues covered in this session.
Prerequisites: None.
Room: Continental Parlor 3
Wednesday, November 9, 2005 — 4:45pm - 6:00pm
2132 Struts Shale... I Mean Struts
Ken Sipe — Code Mentor, Inc.
Type: Regular Session.
Level: Beginning.
This session looks at the evolution of struts into its new project, named Shale. The session jump starts attendees with the details of Shale and how it works with JSF.
Prerequisites: Some experience with Java and JSP.
Room: Continental Parlor 3
Thursday, November 10, 2005 — 7:00am - 7:45am
9202 JMX Management Solutions

Ken Sipe — Code Mentor, Inc.
Type: Birds-of-a-Feather.
Level: Intermediate.
This session describes management of Java resources using the Java Management Extensions JMX API. JMX provides a unified framework to instrument Java systems with monitoring and management capabilities. JMX is a required element of the J2EE 1.4 specification -- it is part of the JDK1.5 distribution. Those who don't know and understand it will be left behind. This session covers JMX 1.2 specification, system monitoring, management needs, and the creation of agents which dynamically manage resources based on monitoring. We cover many of the new features of the recently finalized JSR-160 on Remote JMX access. Productivity details are also discussed using MX4J and commons modeler.
Prerequisites: Some Java experience.
Room: Continental Parlor 3
Thursday, November 10, 2005 — 8:00am - 9:15am
2136 Developing Web GUI Using JSF
Vishy Kasar — Borland
Type: Regular Session.
Level: Beginning.
Web GUIs have traditionally been poor second cousins of Desktop GUIs. Web GUIs have had to contend with simple forms and controls, while the desktop GUI enjoyed the whole gammit of components. Well, not any more! With JSF, you can bring the power of component architecture to the Web world.
This session outlines the peculiarities of Web GUIs and compares them with desktop GUIs. We introduce JSF and discuss how JSF brings power to the Web GUI. JSF is compared to swing-based GUIs as well as struts, the other good Web application framework. We also cover the JSF landscape from the development tools perspective and from the component perspective. In demonstration, we build a simple JSF-based application using Eclipse, deploy it to Tomcat, and test drive that application.
Prerequisites: Some experience with Java and Web user interfaces.
Room: Continental Parlor 3
3164 Securing Web Services: Protecting Your Enterprise
Dana Kaufman — Forum Systems, Inc.
Type: Regular Session.
Level: Intermediate.
This session explores various methods of securing Web Services to help attendees navigate the confusing path of Web Service standards. Concepts such as WS-Security 2004, SAML, and WS-I Basic Security Profile are examined.
Prerequisites: Basic understanding of Web Services and Web Services/XML concepts such as WSDL, SOAP, Schema, etc.
Room: Continental Parlor 1-2
Thursday, November 10, 2005 — 9:30am - 10:45am
3120 Java Persistance Frameworks

Patrick McMichael — Pillar Technology Group, LLC
Type: Regular Session.
Level: Intermediate.
Are you a J2EE developer looking for alternatives to JDBC or CMP Entity Beans for handling your data interactions? Are you a Hibernate user wondering about the impact EJB 3.0 may have on your application architecture? This session provides an overview of and comparison between the Hibernate and EJB 3.0 solutions to POJO persistence. Pros and cons for each are examined, as are options for migration.
Prerequisites: A working knowledge of Java and relational database concepts helpful. Any background with object-relational mapping concepts is also beneficial.
Room: Continental Parlor 3
Thursday, November 10, 2005 — 11:00am - 12:15pm
2144 Web Application Security Vulnerabilities
Neal Ford — ThoughtWorks
Type: Regular Session.
Level: Beginning.
This session highlights common mistakes made by Web programmers stating the problems and avoidance techniques. The material in this session is derived from the Open Web Application Security Project (OWASP) and other sources.
Prerequisites: None.
Room: Continental Parlor 3
Thursday, November 10, 2005 — 1:15pm - 2:30pm
4108 Advanced Enterprise Debugging Techniques
Neal Ford — ThoughtWorks
Type: Regular Session.
Level: Advanced.
This session discusses techniques and tools for debugging enterprise applications.
Prerequisites: Experience with J2EE applications.
Room: Continental Parlor 3
<Canceled>
1130 CASE STUDY: Using Borland Enterprise Studio in a Multi-project Environment
Mark English — LogSec Corporation
Type: Case Study.
Level: All.
This case study presents a real-world view of the US Army Environmental Center's rollout of the Borland Enterprise Studio tools across multiple projects and teams.
Prerequisites: Some practical knowledge of the Borland Enterprise Studio (JBuilder, CaliberRM, Starteam, Test Director) and the integration of the products in a working envirornment. Knowlegde of ALM concepts and software development lifecycles and project management also useful.
2142 Introduction to JMS

Eric Whipple
Type: Regular Session.
Level: Beginning.
(This session has been moved to a Birds-of-a-Feather session.)
This session introduces attendees to message-oriented middleware specifically using the Java Messaging Service. Topics include the role of messaging, implementation of the JMS specification, and best practices including integration methodologies.
Prerequisites: Some experience with Java.
2164 J2EE Development Using Eclipse and WTP

Ravi Kumar and Helen Bershadskaya — Borland
Type: Regular Session.
Level: Beginning.
(This session has been moved to a Birds-of-a-Feather session.)
This session describes how to build and run basic J2EE and Web Services applications using Eclipse and WTP. We discuss the WTP project structure, server configuration, creation of modules, build system, etc. In the process, we cover application development using Servlet/JSP, EJB and Web Services using wizards, views and annotations. Along the way, we point out the differences and similarities of working with J2EE applications in JBuilder and Eclipse/WTP. We also provide a status and roadmap of WTP.
Prerequisites: Basic knowledge of J2EE applications.
3124 J2EE Performance Tuning How-to

Michael Rozlog — Borland
Type: Regular Session.
Level: Intermediate.
(This session has been moved to a Birds-of-a-Feather session.)
Learn how to find and fix errors and decrease the total time to problem resolution using the industry standard ServerTrace. Understand how to configure and use ServerTrace to find pesky errors that are usually blammed on poor performance or bad coding.
Prerequisites: None.
3154 JMX Management Solutions

Ken Sipe — Code Mentor, Inc.
Type: Regular Session.
Level: Intermediate.
(This session has been moved to a Birds-of-a-Feather session.)
This session describes management of Java resources using the Java Management Extensions JMX API. JMX provides a unified framework to instrument Java systems with monitoring and management capabilities. JMX is a required element of the J2EE 1.4 specification -- it is part of the JDK1.5 distribution. Those who don't know and understand it will be left behind. This session covers JMX 1.2 specification, system monitoring, management needs, and the creation of agents which dynamically manage resources based on monitoring. We cover many of the new features of the recently finalized JSR-160 on Remote JMX access. Productivity details are also discussed using MX4J and commons modeler.
Prerequisites: Some Java experience.
4100 Building Domain Languages Atop Java

Neal Ford — ThoughtWorks
Type: Regular Session.
Level: Advanced.
(This session has been moved to a Birds-of-a-Feather session.)
This session shows how to use Java as the building block for domain-specific languages. It shows you how to create your own customized language for solving specific problems.
Prerequisites: None.

