Eclipse WTP Project Web Service Tools Open House

advertisement
Eclipse WTP Project
Web Service Tools
Open House
Chris Brealey
2005.05.26
DATE
Eclipse Foundation - www.eclipse.org
Content provided under the terms and conditions of the Eclipse Public License Version 1.0
1
Contents
Contributors
■ Function
■ Plugins
■ API
■ Quality
■ Development
■ Appendices
■
DATE
Eclipse Foundation - www.eclipse.org
Content provided under the terms and conditions of the Eclipse Public License Version 1.0
2
Contributors
■
Gilbert Andrews (IBM)
■
– Web Services Explorer
– JAX-RPC JSP Generation
■
Chris Brealey (IBM)
– Committer
– Axis Web services
■
– Committer / Component lead
■
■
Rupam Kuehner (IBM)
– Web services scenarios
– J2EE / Server integration
Kathy Chan (IBM)
– Committer
– Axis Web services
■
Naci Dai (Eteration)
■
– Web services GUI
DATE
Peter Moogk (IBM)
– Environment / Command FW
– Web services wizards
■
Joan Haggarty (IBM)
Raymond Lai (independent)
– Web Services Explorer
– Committer
– J2EE subproject lead
– Axis Web services
■
Sinan Konya (Eteration)
Seng Phung-Lu (IBM)
– Performance
– J2EE / Server integration
Eclipse Foundation - www.eclipse.org
Content provided under the terms and conditions of the Eclipse Public License Version 1.0
3
Function - XML Web Service Tools
■
EMF Models
– Schema 1.0 Second Edition
– WSDL 1.1
■
Validators
– Schema 1.0 Second Edition
– WSDL 1.1
– WS-I WSDL validation and SOAP message monitoring
■
XSD Editor
– Graph and code-assisted source views
■
WSDL Editor
– Graph and code-assisted source views
– Extensible, like the WSDL spec itself
■
Wizards
– New WSDL
– New Schema
■
Web Services Explorer
– Native WSDL browsing and invocation
– UDDI publication and discovery
■
Preference pages
DATE
Eclipse Foundation - www.eclipse.org
Content provided under the terms and conditions of the Eclipse Public License Version 1.0
4
Function - Java Web Service Tools
■
EMF Models
– JSR-109
– JSR-921
– webservices.xml, webservicesclient.xml, jaxrpc-mapping.xml, etc.
■
Project Explorer
– Web service clients
– Local and remote Web services
– Quick access to WSDL, descriptors, implementations, handlers
■
Extensible Wizards
– Discover, create, run, test, publish
– Create clients (requestors) from WSDL
– Create services (providers)...
• Top down from WSDL (aka. Skeleton)
• Bottom up from existing implementation
■
■
■
■
Handler Configuration Wizard
Support for Apache Axis 1.1 and/or 1.2
Preference pages
Popup actions
DATE
Eclipse Foundation - www.eclipse.org
Content provided under the terms and conditions of the Eclipse Public License Version 1.0
5
Plugins - WST
■
ws
–
–
–
–
■
■
–
–
–
–
org.eclipse.wst.ws
org.eclipse.wst.ws.explorer
org.eclipse.wst.ws.parser
org.eclipse.wst.ws.ui
wsdl
■
– org.eclipse.wsdl
– org.eclipse.wsdl.ui
– org.eclipse.wsdl.validation
■
wsi
■
WSDL
WS-I
– WS-I validators (from WSVT)
– SOAP validation UI (from WSVT)
xsd
■
– org.eclipse.wst.xsd.contentmodel
– org.eclipse.wst.xsd.ui
– org.eclipse.wst.xsd.validation
DATE
Frameworks and utilities
Web Services Explorer
WSIL, DISCO, HTML parsing
General preferences
– EMF model (extends JWSDL)
– WSDL editor
– WSDL validation (from WSVT)
– org.eclipse.wst.wsi
– org.eclipse.wst.wsi.ui
■
XML Web services
XSD
– EMF model
– Schema editor
– Schema validation
Eclipse Foundation - www.eclipse.org
Content provided under the terms and conditions of the Eclipse Public License Version 1.0
6
Plugins - JST
■
ws
–
–
–
–
–
–
–
■
org.eclipse.jst.ws
org.eclipse.jst.ws.consumption
org.eclipse.jst.ws.consumption.ui
org.eclipse.jst.ws.creation.ejb.ui
org.eclipse.jst.ws.creation.ui
org.eclipse.jst.ws.uddiregistry
org.eclipse.jst.ws.ui
Java Web Services
–
–
–
–
–
–
–
Provisional frameworks and utilities
Extensible client creation scenario
Extensible client creation scenario
Service creation from EJBs*
Extensible service creation scenario**
UDDI registry provider integration point
General preferences
– org.eclipse.jst.ws.axis.consumption.core – Apache Axis client support
– org.eclipse.jst.ws.axis.consumption.ui
– Apache Axis client support
– org.eclipse.jst.ws.axis.creation.ui
– Apache Axis creation support**
* likely to be merged with creation.ui.
** to be split into UI / non-UI.
DATE
Eclipse Foundation - www.eclipse.org
Content provided under the terms and conditions of the Eclipse Public License Version 1.0
7
Plugins - Dependencies
■
Eclipse
– The usual suspects: Platform, GEF, JEM, EMF
■
WTP
– Common stuff
Eg:
• Environment / command framework
• URI resolver
– Server Tools
– J2EE Tools
– XML Tools
– SSE Tools
■
Open source
–
–
–
–
–
–
DATE
WSDL4J
WSIL4J
UDDI4J
Apache Axis
Apache Tomcat
Apache Geronimo (coming soon)
Eclipse Foundation - www.eclipse.org
Content provided under the terms and conditions of the Eclipse Public License Version 1.0
8
API - Status
■
Public API limited to org.eclipse.wst.wsdl
– WSDL EMF model API
– Extends javax.wsdl API (aka. WSDL4J, JWSDL, JSR 110)
– Models Core WSDL + SOAP, MIME and HTTP bindings
■
Vast majority of frameworks are internal / provisional
– It is premature to lock in API for most of the Web services platform
– Proposed API is relatively young
– Proposed API has not been validated by third parties.
Eg:
• The only Web service runtime extension is ours for Apache Axis
• The only WSDL model extensions are ours for standard bindings
– API will go public as adopters use, help evolve and build confidence in it
■
Provisional API include
–
–
–
–
DATE
WSDL Validation framework
WSDL Editor framework
Web Service provider / requestor framework
Web Service finder / consumer framework
Eclipse Foundation - www.eclipse.org
Content provided under the terms and conditions of the Eclipse Public License Version 1.0
9
Quality
■
Initial contribution:
– Shipped in previous products and very stable
■
Since initial contribution:
– Major refactoring and reaction to refactored dependencies
– Design of new, mostly provisional, API for extenders
– Adaptation to changes and enhancements in dependencies
• Eg: Server Tools API
• Eg: J2EE Flexible projects
– Emphasis shifting from function to stabilization
• Bug fixes
• JUnit test automation
■
Bugs as of 2005.05.26:
–
–
–
–
–
–
DATE
jst.ws: 37
wst.ws: 9
wst.wsdl: 50
wst.wsi: 1
wst.xsd: 30
Majority (~88%) are normal or lower in severity
Eclipse Foundation - www.eclipse.org
Content provided under the terms and conditions of the Eclipse Public License Version 1.0
10
Quality - Queries
■
This query will show bugs...
– From components wst.ws, wst.wsdl, wst.wsi, wst.xsd, jst.ws
– With severities from trivial to blocker (i.e. no enhancements)
https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced&sh
ort_desc_type=allwordssubstr&short_desc=&product=Web+Tools&co
mponent=wst.ws&component=wst.wsdl&component=wst.wsi&compo
nent=wst.xsd&component=jst.ws&long_desc_type=allwordssubstr&lo
ng_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&keyword
s_type=allwords&keywords=&bug_status=NEW&bug_status=ASSIG
NED&bug_status=REOPENED&bug_severity=blocker&bug_severity=
critical&bug_severity=major&bug_severity=normal&bug_severity=min
or&bug_severity=trivial&emailtype1=substring&email1=&emailtype2=
substring&email2=&bugidtype=include&bug_id=&votes=&chfieldfrom
=&chfieldto=Now&chfieldvalue=&cmdtype=doit&order=bugs.bug_sev
erity&field0-0-0=noop&type0-0-0=noop&value0-0-0=
DATE
Eclipse Foundation - www.eclipse.org
Content provided under the terms and conditions of the Eclipse Public License Version 1.0
11
Development - WTP 1.0
■
Stabilization
– Bug fixes
– GUI Fit and finish
– JUnit testcase development
■
Provisional frameworks
– Web service finders
– Web service consumers
■
Apache
– Apache Axis 1.2
– Apache Tomcat 5.5
– Apache Geronimo
■
Details are in the milestone plans
wst.ws: http://www.eclipse.org/webtools/wst/components/ws/M5/milestone_plan.html
wst.wsdl: http://www.eclipse.org/webtools/wst/components/wsdl/M4/milestone_plan.html
wst.wsi: http://www.eclipse.org/webtools/wst/components/wsi/M4/milestone_plan.html
wst.xsd: http://www.eclipse.org/webtools/wst/components/xsd/M4/milestone_plan.html
jst.ws: http://www.eclipse.org/webtools/jst/components/ws/M5/milestone_plan.html
DATE
Eclipse Foundation - www.eclipse.org
Content provided under the terms and conditions of the Eclipse Public License Version 1.0
12
Development - Beyond WTP 1.0
■
Tools for New / Emerging Standards and Open Source Platforms
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
DATE
Apache Axis 2
WS-I Basic Security Profile
WS-Policy
WS-Policy Attachments
WS-Security Policy
WS-Addressing
WS-Reliable Messaging
WS-Resource Framework
WS-Lots ‘n’ lots more!
SOAP 1.2
WSDL 2.0
MTOM
JSR 181 - Web Service Metadata
JSR 224 - JAX-RPC 2.0
JSR 235 - SDO
Eclipse Foundation - www.eclipse.org
Content provided under the terms and conditions of the Eclipse Public License Version 1.0
13
Development - Help!
Apache Axis
■ JUnit testcase development
■ Identify and resolve performance issues
■ Identify and resolve memory issues
■ Identify and resolve thread safety issues
■ Clean up warnings (e.g. use of deprecated symbols)
■ Support for new and emerging standards
■
Get Involved!
DATE
Eclipse Foundation - www.eclipse.org
Content provided under the terms and conditions of the Eclipse Public License Version 1.0
14
Appendices
Links
■ Screenshots
■ Framework diagrams
■
DATE
Eclipse Foundation - www.eclipse.org
Content provided under the terms and conditions of the Eclipse Public License Version 1.0
15
Appendix - Links
■
Most details are available via these sites...
– http://www.eclipse.org/webtools/wst/components/ws/index.html
– http://www.eclipse.org/webtools/jst/components/ws/index.html
■
Including...
–
–
–
–
DATE
Milestone plans
Test plans
Tutorials
Designs
Eclipse Foundation - www.eclipse.org
Content provided under the terms and conditions of the Eclipse Public License Version 1.0
16
Appendix - Screenshots
Just a few samples follow
■ More are available via the tutorials...
■
– http://www.eclipse.org/webtools/jst/components/ws/index.html
– http://www.eclipse.org/webtools/wst/components/wsdl/tutorials/WSDLEditorTutorial.html
– http://www.eclipse.org/webtools/testtutorials/M2/xml/XMLSchemaEditorTutorial.html
DATE
Eclipse Foundation - www.eclipse.org
Content provided under the terms and conditions of the Eclipse Public License Version 1.0
17
WSDL Editor
DATE
Eclipse Foundation - www.eclipse.org
Content provided under the terms and conditions of the Eclipse Public License Version 1.0
18
WSDL Editor
DATE
Eclipse Foundation - www.eclipse.org
Content provided under the terms and conditions of the Eclipse Public License Version 1.0
19
Web Services Explorer
DATE
Eclipse Foundation - www.eclipse.org
Content provided under the terms and conditions of the Eclipse Public License Version 1.0
20
Web Service Creation Wizard
DATE
Eclipse Foundation - www.eclipse.org
Content provided under the terms and conditions of the Eclipse Public License Version 1.0
21
Web Service Creation Wizard
DATE
Eclipse Foundation - www.eclipse.org
Content provided under the terms and conditions of the Eclipse Public License Version 1.0
22
Appendix - Frameworks Diagrams
A sampling of diagrams follow
■ For more framework details, see...
■
– http://www.eclipse.org/webtools/jst/components/ws/designs/index.html
– Bugzilla Enhancements...
https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced&sh
ort_desc_type=allwordssubstr&short_desc=&product=Web+Tools&co
mponent=wst.ws&component=wst.wsdl&component=wst.wsi&compo
nent=wst.xsd&component=jst.ws&long_desc_type=allwordssubstr&lo
ng_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&keyword
s_type=allwords&keywords=&bug_status=NEW&bug_status=ASSIG
NED&bug_status=REOPENED&bug_severity=enhancement&emailty
pe1=substring&email1=&emailtype2=substring&email2=&bugidtype=i
nclude&bug_id=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=
&cmdtype=doit&order=bugs.bug_severity&field0-0-0=noop&type0-00=noop&value0-0-0=
DATE
Eclipse Foundation - www.eclipse.org
Content provided under the terms and conditions of the Eclipse Public License Version 1.0
23
Web Service Runtime
DATE
Eclipse Foundation - www.eclipse.org
Content provided under the terms and conditions of the Eclipse Public License Version 1.0
24
Web Service
DATE
Eclipse Foundation - www.eclipse.org
Content provided under the terms and conditions of the Eclipse Public License Version 1.0
25
Discovery
DATE
Eclipse Foundation - www.eclipse.org
Content provided under the terms and conditions of the Eclipse Public License Version 1.0
26
Test Facility
DATE
Eclipse Foundation - www.eclipse.org
Content provided under the terms and conditions of the Eclipse Public License Version 1.0
27
Publication
DATE
Eclipse Foundation - www.eclipse.org
Content provided under the terms and conditions of the Eclipse Public License Version 1.0
28
Download