Eclipse Web and J2EE Development
description
Transcript of Eclipse Web and J2EE Development
![Page 1: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/1.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
1Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
Lawrence Mandel, IBM
Eclipse Web and J2EE Development
![Page 2: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/2.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
2Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
My Background
■ Software Developer at IBM Toronto Lab– Focus on Web Service and XML Tools– Rational Application Developer V6– WebSphere Studio Application Developer V5
■ Eclipse Web Tools Platform Project – Ecosystem Lead– Work on validators, URI Resolver framework, Cache
■ Committer on Apache Woden Project– Building a WSDL 2.0 validating parser
![Page 3: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/3.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
3Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
J2EE Scenario
■ Java class accesses data from a database
■ Java class exposed as a Web service
![Page 4: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/4.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
4Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
Agenda
■ Overview
■ Demo of the Web and J2EE Tools
■ Extending the Web Tools Platform
■ Call for Participation
■ Q&A
![Page 5: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/5.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
5Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
Overview
■ Historically Eclipse is a Java IDE■ Eclipse Web Tools Platform (WTP) project
– formally launched in June 2004– Extends the Eclipse Platform with tools and APIs for Web
and J2EE application development
■ WTP has two subprojects:
–Web Standard Tools (WST)
–J2EE Standard Tools (JST)■ Includes tools for HTML, XML, Web Services, J2EE,
Data■ Includes Server tools for integrating application servers,
e.g. Tomcat, Geronimo, JBoss, WebSphere, WebLogic
![Page 6: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/6.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
6Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
WTP Subproject Scopes
IETFW3COASISWS-IECMAANSI
De Jure Standards
De Facto Standards
Web Technologies
Java Technologies
WST
HTML, XML, XSLT, CSS, JS, WSDL,
SOAP, UDDI
JST
Servlet, JSP,EJB, JAX-RPC,JDBC, JAXP,
JSF, J2EE
PHP Struts Hibernate Spring
JDOSQL
JCP
Apache ObjectWeb SourceForge
![Page 7: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/7.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
7Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
WTP Support and Collaboration
■ WTP has support of companies, organizations, academia– BEA, IBM, Oracle, JBoss, ObjectWeb, UBC, UofT
■ WTP collaborates with other open projects and standards bodies– Apache, W3C, WS-I
■ In fact, the WS-I Java test tools are developed by WTP
![Page 8: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/8.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
8Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
WTP Roadmap
■ WTP 0.7, July 2005 – End User Tools
■ WTP 1.0, December 2005 – Platform APIs
■ WTP 1.5, June 2006 – Java EE 5.0
![Page 9: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/9.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
9Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
Demo
■ Stage 1: expose existing Java class as Web service
■ Stage 2: modify Java class to retrieve data from database
■ Stage 3: modify Web service interface
new!
![Page 10: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/10.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
10Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
The Web and J2EE Tools
■ There are several different types of development tools for Web and J2EE development
■ Relational Database■ XML■ Web Services■ Server■ J2EE
![Page 11: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/11.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
11Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
Relational Database Tools
■ Connection Wizard– Easily create live
connections to a database server using a JDBC driver
■ Multi-vendor support– Apache Derby– MySQL– DB2
![Page 12: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/12.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
12Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
Relational Database Tools
■ Server Explorer – view database elements
including tables, views, stored procedures, and user-defined functions.
– Supports both Live and Offline modes
■ Dependency constraints indicated
■ Browse Data directly from the tables
![Page 13: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/13.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
13Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
Relational Database Tools
■ SQL Scrapbook – A SQL utility/editor which can be used to test SQL commands to be
executed to a connected server in the Server Explorer.
![Page 14: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/14.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
14Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
XML Tools
■ XML and XSD graphical editors– Assisted editing of XML
content– Constraints enforced– Concise overview of
documents
![Page 15: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/15.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
15Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
XML Tools
■ XML Catalog– Customize XML
resource resolution– Based on OAGIS
XML Catalog standard
– Add DTD, XSD, or any XML resource (WSDL, XSL, etc.)
![Page 16: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/16.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
16Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
Web Service Tools
■ Graphical WSDL/XSD Editor – Edit your WSDL file without wrestling with the syntax– Visual overview of Web service
![Page 17: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/17.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
17Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
Web Service Tools
■ XML Schema, WSDL, and WS-I validators– Ensure your documents conform to standards (WSDL, XSD) and
standard extensions (WS-I)
![Page 18: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/18.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
18Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
Web Service Tools
■ WS-I Test Tools integration in the Eclipse Web Tools– Preference for setting the WS-I conformance level
![Page 19: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/19.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
19Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
Web Service Tools
■ Wizard to create Web service top-down (from WSDL) and bottom-up (from Java).
■ Wizard creates a Java stub that binds to a Web service.
■ Wizard can optionally configure test client and deployment of your Web service
![Page 20: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/20.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
20Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
Web Service Tools
■ Web Service Explorer– Publish/Discover Web
services.– Invoke Web services
dynamically. No code generation required for testing.
![Page 21: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/21.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
21Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
Server Tools
■ Server runtime preference page– Add multiple runtimes
■ Multi-vendor support– Apache Tomcat, JBoss,
JoNAS, WebSphere
![Page 22: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/22.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
22Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
Server Tools
■ Server control view– Start, stop, publish, debug, configure servers– Shows current server state
![Page 23: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/23.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
23Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
J2EE Tools
■ New Web project wizard– Select server– Select J2EE version– Customize environment
![Page 24: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/24.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
24Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
J2EE Tools
■ New Servlet wizard– Manage deployment
descriptor– Create Servlet class
![Page 25: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/25.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
25Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
J2EE Tools
■ EJB preference page and wizard– Uses XDoclet
![Page 26: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/26.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
26Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
Extending the Web Tools Platform
■ WTP is a platform that allows for extension
■ Some interesting WTP extension points– Server– Structured Source Editing
![Page 27: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/27.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
27Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
Server Extensions
■ Server Tools – Comes with server adapters for Tomcat, etc.
■ Extension points allow you to…– add other server adapters
■ Useful to…– Create adapters for servers with no current adapter
• e.g. Apache Web Server– Create adapters for custom servers
• e.g. those created as part of course work
![Page 28: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/28.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
28Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
Structured Source Editing Extensions
■ Structured Source Editing (SSE)– Editing framework for XML-like file types (XML, JSP, HTML)
■ Extension points allow you to…– Add custom context actions, content assist, syntax highlighting, as-
you-type validation to editors– Configure property page and outline views– Receive notifications of model changes and perform custom
synchronization between model type (eg. EMF and DOM)
■ Useful to…– Create new XML-like editors – e.g. XSL, DocBook, ASP– Customize existing editors by adding function – e.g. new format or
snippet options, publish to blog
![Page 29: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/29.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
29Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
Additional API and Extension Points
■ Some additional API and extension points defined for:– Common
• Add custom validators– Web services
• Customize the Web services wizard► Allow for addition of steps in Web service creation► Create Web service deployment for another language, e.g. PHP
• Add support for new binding types to WSDL editor and validator– J2EE
• Add custom steps to artifact import and creation– Data
• Add custom database definitions and wizard pages– XML
• Add actions to graphical XML and XSD editors• Add entries to XML catalog
![Page 30: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/30.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
30Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
Call for Participation
■ Become a user and tell your friends and colleagues■ Test and report bugs■ Write tutorials, articles■ Fix bugs■ Contribute enhancements■ Become a committer■ Develop plug-ins based on WTP■ Develop Web and J2EE Curriculum■ Create research projects that extend or use WTP
– Volunteer for the WTP usage study■ Participate at EclipseCon 2006
– http://www.eclipsecon.org
![Page 31: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/31.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
31Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
Eclipse WTP Usage Study
■ Goals: – Improve Eclipse IDE user experience– Improve organization of commands in Eclipse base
and Eclipse-based projects■ Minimal commitment:
– Simply use Eclipse WTP for your daily work– About 10 minutes / week to upload data
■ Data collected: – Edits, navigations, commands, but no identifying
information■ For more information:
http://www.cs.ubc.ca/~lkf/wtpStudy/or contact Leah Findlater: [email protected]
![Page 32: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/32.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
32Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
Q&A
■ Questions?
![Page 33: Eclipse Web and J2EE Development](https://reader035.fdocuments.in/reader035/viewer/2022062722/56813b03550346895da3a3a0/html5/thumbnails/33.jpg)
OOPSLA, San DiegoOct. 16-20, 2005
33Eclipse Foundation - www.eclipse.orgContent provided under the terms and conditions of the Eclipse Public License Version 1.0
More information is available from…
■ WTP websitehttp://www.eclipse.org/webtools
■ WTP newsgroupnews://news.eclipse.org/eclipse.webtools
■ WTP Community Resources (articles, tutorials, events)
http://www.eclipse.org/webtools/community/community.html
■ Lawrence [email protected]