ECLIPSEWORLD 2006 FRIDAY AFTERNOONQuick links Wednesday full-day tutorials Thursday morning classes Thursday afternoon classes Friday morning classes Conference faculty Conference program home page Friday, Sept. 8, 1:45 p.m. – 3:15 p.m. 701. Building Applications With the Java Persistence API and Dali By Shaun Smith The new Java Persistence API defines a standard set of object-relational mappings and a standard API that can be used for persistence with both Java EE and Java SE. In this class, we’ll show you how it works. The Dali EJB Object Relational Mapping project brings JPA development to Eclipse for both out-of-container and in-container deployment. This session will teach you how to use Dali to build applications with JPA; we’ll also show you how to test them with JUnit within Eclipse. Topics include the EntityManager and Query APIs, core O/R mappings, and configuring your environment for testing and deployment. Friday, Sept. 8, 1:45 p.m. – 3:15 p.m. 702. Practical Design Patterns for Rich Client Development By Annas Maleh Despite the passing of the 10th anniversary of the famous book “Design Patterns: Elements of Reusable Object-Oriented Design,” there remains a lack of understanding and experience in applying design patterns to common development problems—and Eclipse RCP development is no exception. In this advanced class, you will see real-world examples clearly illustrating the benefits of applying design patterns, emphasizing patterns beneficial to RCP applications. The class will begin with a definition and brief history of design patterns, and an overview of their benefits; we’ll then jump right into specific patterns that help with RCP projects. To help demonstrate the benefits of design patterns, we’ll analyze RCP components written without design patterns, and examine problems encountered when attempting to add features to those components. Next, we’ll show how to fix those problems with just a few refactorings. This advanced class is for developers and architects who are experienced with Java and Eclipse RCP development and are familiar with object-oriented design principles and design patterns. Friday, Sept. 8, 1:45 p.m. – 3:15 p.m. 703. Managing Application Architectures With Software Factories By Michael Sawicki The essence of any factory is predictability. Factories provide reliable and predictable results in regard to time, quality and cost. The advantage of a software factory is the ability to define application architectures and then distribute the definition to development teams so that they build applications according to the definition without the distractions of various technologies, architectures or other issues not relevant to the project. This class describes the elements of a software factory, process, tools, automation and customization, and how those elements help deliver quality software. The software factory allows you to choose the application architectures and define what technologies will be used in the presentation, business and persistency tiers of your application. The definition contains everything needed to build your application, and is flexible enough to accommodate multiple application architectures. During the session we will create a software factory definition and use it in building a small application. You’ll learn how implementing the software factory improves the reliability of application design and construction, and aligns development teams as closely to the business objectives of the organization as possible. Friday, Sept. 8, 1:45 p.m. – 3:15 p.m. 704. How to Write High Quality Eclipse Bugs Reports and Patches By Steven Wasleski How can you get Eclipse developers to pay attention to your bug report or enhancement request? It’s easy: First, write a clear and thorough report or request. Second, submit a high-quality patch via your bug report or enhancement request. This class will start by teaching you how to write a top-quality bug report. The second and longer portion of the presentation will take you through the process of creating a patch and will provide tips along the way to help you make your patches high quality. We’ll use actual Eclipse bug reports and patches to illustrate the topics covered. For this intermediate-to-advanced class, you should be familiar with Bugzilla basics, Eclipse plug-in development including debugging, basic CVS team development concepts, and have a basic understanding of Eclipse API definitions and how Eclipse APIs are expected to evolve. Friday, Sept. 8, 1:45 p.m. – 3:15 p.m. 705. Best Practices for Managing Eclipse Adoption in the Enterprise By John Kellerman This exciting class will present proven, effective strategies for corporate teams working on Eclipse-based projects and interacting with the greater Eclipse community. Drawing on his personal experience as a founding member of the Eclipse project and his participation as it evolved from a predominantly IBM initiative through the establishment of the independent Eclipse Foundation in 2004, John Kellerman will provide insight on how to best navigate the waters of industry collaboration. He will provide examples of successful projects—what worked, what didn’t work, and how you can get large teams of software developers to agree on a common path. In addition, you’ll learn about Mr. Kellerman’s unique role as Eclipse strategy manager for IBM and talk about the skills required to stand at the intersection of a giant corporation and an open-source community, taking into account the needs and demands of each. From this class, you’ll come away with a better understanding of how to best work with the Eclipse community and achieve maximum success for your respective projects. Friday, Sept. 8, 1:45 p.m. – 3:15 p.m. 706. Step by Step: Making Enterprise JavaBeans With J2EE Standard Tools By Christopher Judd In this class, you’ll learn how to create session beans, entity beans and message beans using the Eclipse J2EE Standard Tools. You will learn how to write deployment descriptors and package the application into an EJB jar or EAR file. You’ll also see how to deploy the EJBs to application servers. Once the application has been deployed, we’ll conclude by covering how to debug the EJBs. Friday, Sept. 8, 1:45 p.m. – 3:15 p.m. 707. Leveraging BIRT Reporting By Jason Weathersby and Scott Rosenbaum The Eclipse Business Intelligence and Reporting Tools project gives you a framework for designing, developing, deploying, generating and viewing reports from Java applications. This class will teach you how to use the BIRT framework, with a particular focus on its integration and extension points. The class will cover: • BIRT Framework Strategy • Graphical UI for Ease of Use • JavaScript for Basic Report Customization • Java-Based Extension Points for Advanced Customization • Open API Framework for Seamless Integration • BIRT Design and Development • Data Access • Flexible Structure • Extendable Components • Charting • Format and Styles • BIRT Emitters • Deploy and Generate • Standard Access Model • J2EE Access Model • Stand-Alone Java Usage Model • Eclipse RCP Application Integration • Report View • Table of Contents • Dynamic Reports • Hyperlinking
Friday, Sept. 8, 3:45 p.m. – 5:15 p.m. 801. How to Use and Extend Eclipse’s XML and Schema Tools By Craig Salter and Nitin Dahyabhai The Web Standard Tools project contains many capabilities and tools that can help create and maintain XML schemas and XML instance documents. We’ll start by reviewing the XML and schema tools that arrived with WTP 1.0, but then move into exploring the new WTP 1.5 tools, which will appear with Eclipse 3.2. Our goal in this intermediate class is to help you improve the efficiency of your XML development. But there’s much more to WTP than its tools: We’ll also show you how to extend WTP for your users, or to support special cases of XML documents. You’ll learn how to extend the XML Editor in basic ways, such as adding new context menu actions, adding templates and snippets, but also adding more advanced features like extending content assist, custom validation (both “batch” and “as you type” validation”). We’ll also cover ways to use standard DOM APIs to modify the XML document. This class requires knowledge of the basics of XML, DTDs and XML Schemas, as well as the basics of creating Eclipse plug-ins for reuse. Friday, Sept. 8, 3:45 p.m. – 5:15 p.m. 802 . How to Build Rich Internet Applications With PHP and AJAX By Phil Berkland PHP has quickly become the most popular language for building dynamic Web applications, and AJAX (Asynchronous JavaScript And XML) is a Web development technique for creating interactive Web applications using JavaScript to dynamically manipulate HTML and to exchange data asynchronously with a Web server. In this course, you’ll learn how to use the Eclipse PHP IDE and the AJAX tools to develop rich Internet applications. An Eclipse environment with the PHP and AJAX tools provides a single tool for the development of both the client and server parts of a rich client application. We’ll show you how to use the IDE to create and modify rich client applications, and how to seamlessly debug the server PHP code and client JavaScript code. You should already have a general knowledge of Web development technologies, including JavaScript. Knowledge about PHP and AJAX is helpful but not required. Friday, Sept. 8, 3:45 p.m. – 5:15 p.m. 803. Developing Integrated Help and Documentation for Eclipse Applications By Lee Anne Kowalski, Maria Brownstein and Dave Resch User Assistance, the help subsystem within Eclipse, offers a wealth of powerful and extensible features to deliver integrated help and documentation. This class teaches real-life techniques that you can use to take advantage of all the Eclipse User Assistance features, and plan a successful, collaborative effort to deliver high-quality results. We’ll cover: • Overview of Eclipse User Assistance features: the bookshelf and help window, dynamic help views, cheat sheets, Welcome experience, and infocenters. • Full project life cycle for authoring and delivering help content, including collaborating across the project team. • Documentation plug-in design, including custom Welcome plug-ins, legacy information, topic-orientation, and reuse and stacking issues. • Optimizing documentation plug-ins for help system search. • Table of contents/bookshelf design, including building and merging complex content. • Deploying infocenters for Web-based information delivery. You’ll gain real-life experience and methods that you can use to plan User Assistance projects, as well as practical techniques and code samples that you can use to develop integrated user assistance, and deploy your help content on the Web for increased customer satisfaction. For this intermediate class, you should have at least some familiarity with User Assistance (help system) concepts and terminology Friday, Sept. 8, 3:45 p.m. – 5:15 p.m. 804. Presenting Tabular Data in Eclipse By Kevin Taylor Did you know that you have at least four different components available just for presenting tabular data in your application user interface? Since tabular data is so prevalent in corporate business applications, it is essential for you and your team to have a solid understanding of the different UI choices available to them. In this advanced class, we’ll delve deep into Table, TableViewer, KTable and CompositeTable. We will explore each component’s high-level APIs, contrast their performance characteristics, and look at common usage patterns, including master-detail, editable grid, data binding, filtering and sorting. If you are interested in writing powerful and practical business applications, you need to attend this class. Friday, Sept. 8, 3:45 p.m. – 5:15 p.m. 805. Developing Collaborative Tools With Equinox and ECF By Bob Brady Agile methods require a high degree of collaboration throughout the application life cycle. However, many existing development tools are essentially single-user. Coming to the rescue is the Equinox OSGi implementation and Eclipse Communication Framework, which are gaining momentum as a means for providing collaboration among tools, such as their use in the Eclipse Corona project. This intermediate-to-advanced class will teach you how to use the Equinox and ECF projects to start developing real-time collaborative tools. We’ll start with an overview of Equinox followed by several hands-on examples to show you the basics of Equinox’s built-in SOA, and how to create a bundle that coordinates service interactions. We’ll then use practical code examples to explain how ECF can be used for peer-to-peer messaging and sharing project resources. Finally, we’ll create a sample tool with real-time, collaborative views. Basic Java and Eclipse development experience are prerequisites. Friday, Sept. 8, 3:45 p.m. – 5:15 p.m. 806. How to Develop Web Service Applications in Java By Joshua Hendrick As companies and consumers rely more on Web services, it becomes increasingly important for you and your team to know how to properly design, develop, deploy and ultimately manage a Web services system. This class shows a step-by-step plan for developing quality Web services in Java using Eclipse. We’ll focus on the solid engineering and testing practices required to ensure complete Web services functionality, interoperability and security. To make the discussion as concrete and pragmatic as possible, the presentation will use Eclipse 3.1 to demonstrate the introduced strategies using a sample Java-based Web service implementation for a large real-estate broker with office branches across the country. |