Welcome!
Check that you can "raise your hand" next to your name When we start I'll ask everyone to raise their hand to verify you can hear me To ask a question during the presentation type it in the questions pane
©WebAgeSolutions.com 1 "Web Age Speaks!" Webinar Series
Exploring Eclipse Galileo
©WebAgeSolutions.com 2 Introduction
Matt Silver Technical Trainer/Courseware Developer [email protected] Web Age Solutions Providing training for Eclipse since 2004 Using Eclipse-based tools as the foundation of our Java/Java EE training
©WebAgeSolutions.com 3 Overview of Talk
Introduction to Eclipse Galileo Changes to Eclipse Java Enterprise tools Other Eclipse projects Compatibility of other Eclipse toolsets Our offerings
©WebAgeSolutions.com 4 Exploring Eclipse Galileo
What is Galileo?
©WebAgeSolutions.com 5 Eclipse Galileo
Eclipse projects can participate in a coordinated annual release cycle This occurs in late June every year This year it was codenamed "Galileo" and included 33 projects and 24 million lines of code A few of the projects included are "incubating" This just means they have some more tasks to accomplish before being considered a fully functional Eclipse project The coordinated release helps improve compatibility This also helps avoid tracking many different version numbers for all of the individual projects Included Projects: www.eclipse.org/galileo/projects.php
©WebAgeSolutions.com 6 Eclipse Updates
With Eclipse Galileo, installing new software and looking for updates are managed separately In previous Eclipse versions updates and new software were managed in the same dialog When listing new software to install you can select a specific update site to avoid being overloaded with available software You can also view all software if you want to browse or do not know which site provides certain features Available software update sites are managed as a preference which should make it easier for plug-ins to contribute to this list You can also enable automatic checks for updates although this is not new to Galileo
©WebAgeSolutions.com 7 Exploring Eclipse Galileo
Eclipse Web Tools Platform
©WebAgeSolutions.com 8 Eclipse Web Tools Platform
Provides Eclipse support for Java Enterprise development The most popular project in the Eclipse ecosystem Not many major changes since Java EE 6 is not finalized Website: http://www.eclipse.org/webtools/
©WebAgeSolutions.com 9 General Changes
First full release that supports JBoss Application Server 5.0 GA Before you needed a maintenance release (Ganymede SR 2) Rebranded Welcome page with button links to online resources Added a new view called Markers view which combines information shown in Problems and Tasks views
Servers view has decorations for status instead of columns
©WebAgeSolutions.com 10 User Libraries
User libraries are a way to register perhaps multiple JAR files User libraries are also often used in multiple projects Although user libraries are not new, they have been enhanced to provide a mechanism for JSF and JPA implementations You can configure user libraries on your own or even download some popular implementations If you are using the implementation provided by a server you would disable library configuration
©WebAgeSolutions.com 11 Dali JPA Tools
EclipseLink The open source project created from the Oracle donation of TopLink EclipseLink will be the JPA 2.0 reference implementation The Dali JPA tools have specific enhancements for EclipseLink features Entity generation from tables Entity generation wizard has more customization options
©WebAgeSolutions.com 12 XML Tools
Addition of an XML perspective Main views added are XPath and Templates views Smart insert to automatically add a matching end tag for a start tag Advanced tab in the Properties view for simple types and schema elements Able to right-click a schema type definition in the graphical design view and set the base type Lots of additional features for XSL and XPath
©WebAgeSolutions.com 13 Exploring Eclipse Galileo
Other Eclipse Projects
©WebAgeSolutions.com 14 Test and Performance Tools Platform
Provides a framework for the support of testing and performance monitoring tools The platform simply provides a foundation on which tool developers can write testing and performance tools The project also includes sub-projects with a standard set of tools based on the platform This includes application performance profiling, automated unit testing, and log analysis The testing and monitoring tools can also work with remote systems using an "agent controller" installed on the remote system This would need to be downloaded and installed separately from Eclipse Website: http://www.eclipse.org/tptp/
©WebAgeSolutions.com 15 Mylyn
Allows a task-focused approach to programming Can filter out files not relevant to current task Mylyn can learn what files and even methods are important for a task by what you are doing Helps preserve the "context" of what was important when switching between tasks
The main Mylyn view is the Task List view although Mylyn can filter content in other standard views Mylyn is even more useful in a team environment when issues are tracked with a task repository Many popular issue tracking repositories have a Mylyn "connector" Website: http://www.eclipse.org/mylyn/
©WebAgeSolutions.com 16 AspectJ & AspectJ Development Tools
AspectJ is a Java implementation of Aspect Oriented Programming AOP looks to modularize crosscutting concerns but still allow them to be joined together in the final system Logging is a typical example because it can affect many parts of a system but AOP can be much more than logging The AspectJ Development Tools project allows easier creation of code using AspectJ in Eclipse Specialized views and markers in the margin of source code allow visualization of how AOP code is "woven" together Website: http://www.eclipse.org/aspectj/ & http://www.eclipse.org/ajdt/
©WebAgeSolutions.com 17 Memory Analyzer
A tool that can analyze heap dumps to help find memory leaks and improve performance You can find classes with the largest average size or number of objects and trace the object references back to a root You can download into Eclipse Galileo or as a separate Eclipse RCP application Steps to collect information vary depending on JVM The Memory Analyzer is an incubating project Website: http://www.eclipse.org/mat/
©WebAgeSolutions.com 18 PDT - PHP Development Tools Eclipse is not just about Java Some of the non-Java projects have been very popular Provides advanced features like PHP syntax checking, code completion, and templates above what a text editor can do Requires an external PHP debugger Information in the project about where to get one Website: http://www.eclipse.org/pdt/
©WebAgeSolutions.com 19 CDT - C/C++ Development Tooling
Eclipse provides a wizard to create a C++ class and can generate the header and implementation files for you Some common method stubs can also be created You can initiate building, running, and debugging from the Eclipse interface Eclipse calls external tools to compile and debug C/C++ code On Windows you would need to make sure these are available Website: http://www.eclipse.org/cdt/
©WebAgeSolutions.com 20 BIRT-Business Intelligence and Reporting Tools
BIRT provides a framework for adding reporting to web applications, especially Java EE applications You can concentrate on where to obtain the data for a report and how to present it instead of developing a reporting framework BIRT includes Eclipse tools for report design and a runtime component for an application server Besides data source and presentation you can add data transformations and business logic The business logic can even call into your existing Java code Website: http://www.eclipse.org/birt/
©WebAgeSolutions.com 21 Exploring Eclipse Galileo
Compatibility of Other Eclipse Toolsets
©WebAgeSolutions.com 22 MyEclipse One of the most popular products based on Eclipse Not free but one of the lowest priced Eclipse tools available Provides a tested, pre-configured, and supported combination of many useful plug- ins Some are developed by MyEclipse and others are developed separately but packaged with MyEclipse Even provides support for deploying and testing on WebSphere with the "Blue edition" Does not yet have a version based on Galileo Likely will later this year Website: www.myeclipseide.com
©WebAgeSolutions.com 23 Spring Eclipse Tools
Spring IDE Adding Spring support to Eclipse projects Editor for Spring configuration files including visual representation Tools for Spring WebFlow framework Installed via an Eclipse "update site" Spring Tool Suite Free with registration Includes tools of Spring IDE Support for OSGi development Support for SpringSource dm Server & tc Server Both have Galileo compatible downloads Website: springide.org & www.springsource.com/products/sts
©WebAgeSolutions.com 24 JBoss Eclipse Tools
Provides support for various JBoss platforms and technologies JBoss Seam Hibernate JBoss Drools business rules JBoss jBPM business processes Obtain in two ways JBoss Tools - free but unsupported JBoss Developer Studio - subscription pricing with support Current releases are not Galileo compatible Uses Eclipse Ganymede Galileo versions are under development Website: www.jboss.org/tools & www.jboss.com/products/devstudio/
©WebAgeSolutions.com 25 Exploring Eclipse Galileo
What's Next?
©WebAgeSolutions.com 26 Eclipse "Helios" The June 2010 Eclipse release will be called "Helios" Appropriate given the impact of many Sun Java specifications Individual projects are beginning to plan what updates will be made This will be the first release after the finalization of the Java EE 6 specifications Updates for JSF 2.0, JPA 2.0, Servlet 3.0, EJB 3.1, etc Eclipse WTP will be very different next time around Also should add support for Java SE 7 if this is finalized by this timeframe
©WebAgeSolutions.com 27 Exploring Eclipse Galileo
Our Offerings
©WebAgeSolutions.com 28 Core Java/Java EE Classes
All of our core Java and Java EE courses are offered using Eclipse Many courses use Eclipse even if not specifically mentioned in the title www.webagesolutions.com/training/ java/index.html We use standard Eclipse tools so that skills are portable to other Eclipse-based environments If other Eclipse toolsets like Spring IDE provide significant value we try to use those for courses
©WebAgeSolutions.com 29 Popular Eclipse Courses
WA1278 - Intro to Java using Eclipse www.webagesolutions.com/training/java/wa1278 WA1718 - Java EE 5 Programming with JSF, EJB 3.0, and JPA using JBoss 5.0 www.webagesolutions.com/training/jboss/wa1718 WA1720 - EJB 3.0 Programming Using JBoss 5.0 www.webagesolutions.com/training/jboss/wa1720 WA1746 - Developing JSF Web Applications with Spring and Hibernate www.webagesolutions.com/training/java/wa1746
©WebAgeSolutions.com 30 Summary
The Eclipse Galileo simultaneous release is the largest number of Eclipse projects released at one time Galileo helps ensure compatibility between projects There are many different projects offering a wide range of features The predictable release schedule helps other Eclipse-based tools update quickly
©WebAgeSolutions.com 31 Contact and Resources
Matt Silver [email protected] Web Age Solutions www.webagesolutions.com/contactus/ US - 215-517-6540 Canada - 416-406-3994 Eclipse Information www.eclipse.org www.eclipse.org/galileo
©WebAgeSolutions.com 32