430 likes | 449 Views
Developing Web Services with Eclipse Arthur Ryman ryman@ca.ibm.com. Web Service Edge 2005 East, Boston 2005-02-17. Abstract.
E N D
Developing Web Services with EclipseArthur Rymanryman@ca.ibm.com Web Service Edge 2005 East, Boston 2005-02-17
Abstract The recently created Web Tools Platform Project extends Eclipse with a set of open source Web service development tools and APIs. This talk gives an overview of the project and focuses on its Web services support. The project is divided into two subprojects: Web Standard Tools and J2EE Standard Tools. The Web Standard Tools subproject contains support for XML Web Services, including tools based on standards defined by W3C, Oasis, WS-I and others. The J2EE Standard Tools subproject contains support for standards defined by JCP, such as JAX-RPC and JSR-109, and for reference implementations of these standards, such as Apache Axis. The project contains both a set of tools for Web service developers and a set of APIs for Web service tool creators. The talk includes a demonstration of the tools.
Topics • Introduction • Eclipse Web Tools Platform (WTP) Project • WTP Web Service Tools • Call for Participation • Demos
My Background • Software Development Manager at IBM Toronto Lab • Focus on Web Service, XML, and J2EE Tools • Rational Application Developer V6 • WebSphere Studio Application Developer V4, V5 • VisualAge for Java V1, V2, V3 • Member of Eclipse Web Tools Platform Project PMC • Leader of Web Standard Tools Subproject • Member of W3C Web Service Description Working Group • Editor of WSDL 2.0 Specification, Part 1
About Eclipse • Eclipse is an Open Source universal tool integration platform • Contributed by IBM • Eclipse Foundation was formed in 2004 as an independent legal entity • Mike Milinkovich, Executor Director, is giving a keynote presentation after this session • Eclipse is implemented in Java but is language neutral • Eclipse has excellent Java development tools and is rapidly becoming the most popular IDE • Eclipse has a highly extensible plug-in archtecture • Extension points and extensions • Commercial products like WebSphere Studio and Rational Application Developer are based on Eclipse
Another Tool Eclipse Platform Workbench Help Java Development Tooling (JDT) JFace SWT Your Tool VCM Plug-in Development Environment (PDE) Workspace Their Tool Platform Runtime Eclipse SDK
Eclipse Web Tools Platform Project • See: http://eclipse.org/webtools • Extends the Eclipse Platform with tools and APIs for Web and J2EE application development • Formally launched in June 2004 • Has two top level subprojects: • Web Standard Tools (WST) • led by Arthur Ryman, IBM (WSAD, RAD) • J2EE Standard Tools (JST) • led by Naci Dai, Eteration (Lomboz) • Includes tools for HTML, XML, Web Services, J2EE, Data • Includes Server tools for integrating application servers, e.g. Tomcat, JBOSS, WebSphere, WebLogic
WTP Subproject Scopes WST HTML, XML, CSS, JS, WSDL, SOAP,UDDI, SQL JST Servlet, JSP,EJB, JAX-RPC,JDBC, JAXP IETFW3COASISWS-IECMAANSI De Jure JCP JDO,JSF Web Java PHP Struts, Hibernate, Spring De Facto
WTP Downloads • See: http://download.eclipse.org/webtools/downloads/ • Continuous Integration • Nightly Development builds • Weekly Integration builds • Bimonthly Milestone releases • Annual Final releases
WTP 1.0 Release Plan • October 2004 - M1 • December 2004 - M2 • February 2005 - M3 (Web Services!) • April 2005 - M4 • June 2005 - M5 • July 2005 - Final
Web Service Tools in WTP • Web Standard Tools • WSDL/XSD Editor • Web Service Explorer • Web Service Wizard • WS-I Test Tools • J2EE Standard Tools • J2EE Explorer • JAX-RPC • JSR 109 • Axis 1.0
WSDL/XSD Editor • Graphical and Source editing modes • Seamless integration for editing inline XSD • Content Assist • Pop-up actions • Binding Wizard • Validator, including WS-I profiles • Extendible for WSDL extension elements
Web Services Explorer • Discovery • Search UDDI Registries • Navigate WSIL Documents • Import WSDL into development project • Test • Dynamic invocation based on WSDL • View SOAP messages • Publish • Publish WSDL into UDDI Registries
Web Services Wizard • Supports generate/deploy/test/publish lifecycle • Configures project, server, and SOAP engine • Highly extensible • SOAP engines • Code generators • Test facilities • Code generation • WSDL to client proxy • WSDL to server skeleton • Java to WSDL • Test facilities • JSP test client
WS-I Test Tools • Developed in Eclipse Web Service Validation Tools (WSVT) Project • Supports WS-I Basic Profile 1.0/1.1, Simple SOAP Binding Profile 1.0, Attachments Profile 1.0 • WSDL 1.1 Validator • SOAP 1.1 Message Monitor/Analyzer
J2EE Web Services • Web Services appear as first class objects in J2EE Explorer • Content assist for deployment descriptor source editors • JAX-RPC code generators • JSR 109 support • Axis 1.0 adaptor
Call for Participation: eclipse.org/webtools • Become a user and tell your friends • Test and report bugs • Write tutorials, articles • Fix bugs • Become a committer • Develop plug-ins based on WTP • Help wanted, e.g.: • Axis 1.1/1.2 support • WSDL 2.0 test suite (W3C) and validator • New WS-I profiles • Attend EclipseCon 2005
Web Services Explorer Demo • Open Web Services Explorer • Open XMethods UDDI Registry • Find all “stock quote” services • Select Stock Quote service • Open WSDL page and GetQuote for “IBM” • Import WSDL into Workbench “StockQuoteClient” project as “StockQuote.wsdl”
WSDL Editor Demo • Open “StockQuote.wsdl” in WSDL Editor • Go into graphical view of XML schema for messages • Navigate into “GetQuote” element • Switch to Source tab • Navigate using linked Outline and Properties views
Web Service Client Wizard Demo • Run Web Service Client Wizard to generate Java proxy and JSP test page with TCP/IP monitor • Wizard adds Web application to Tomcat 5.0 server and installs Axis 1.0 SOAP engine • Select methods to include in JSP test page • Test getQuote() method using IBM • View SOAP messages in TCP/IP monitor
WS-I Test Tools Demo • Specify level of WS-I compliance in Preferences page • Save SOAP messages from TCP/IP to a WS-I log file • Specify WSDL file that describes messages • View WS-I errors and warnings in Problems view