Web Services: Protocols and Applications
This tutorial provides an investigation of web services and web
service applications. It defines what web services are and discusses the
technologies feeding into web services, including:
- Simple Object Access Protocol (SOAP)
- Web Services Description Language (WSDL)
- Universal Description, Discovery, and Integration (UDDI)
- W3C XML Protocol efforts
This tutorial will also cover how applications can make use of these
technologies, from both a provider and a user perspective. This will
include a discussion of integration of such services with existing CORBA
and J2EE systems.
This is intended as an introductory tutorial. It assumes
some basic knowledge of networked applications.
Frank Eliassen, Thomas Plagemann
University in Oslo
- Brief introduction to middleware and CORBA
- Introduction to distributed multimedia and QoS
- Requirements to multimedia middleware
- Existing technologies and standards for multimedia middleware, including: CORBA A/V streams and RT-CORBA
- Multiemdia middleware research prototypes (c.f. soft realtime): QuO, Agilos, LegORB
- Real-time multimedia middleware research protoypes: Real-time CORBA/TAO, GOPI, omniORB
- Open issues and future challenges
The tutorial is intended for researchers and practioners having knowledge on state of the art of middleware and who needs an insight
into state of the art in distributed multimedia and QoS in general, and multimedia middleware in particular (standards as well as commercial and
Diverse Middleware is the order of the day
No one approach to communications middleware can cater for all requirements. There are many different approaches including: message passing or defined interfaces; synchronous or asynchronous; language independent or language specific interfaces; XML message formats or binary messages; CORBA or EJB; .Net or Sun One; integration server or direct communication.
[These and others will be explained.]
Many projects require a mix of these, across different programming languages, operating systems; component
models (SUN and Microsoft for example); into the mainframe (CICS and IMS); and probably the biggest one today is the boundary across the edge of the net
(bi-directional communication between an enterprise's system and the web, both to people and to other enterprises).
How can a suitable subset of middleware be used coherently to bridge these diverse software boundaries?
When different middleware is used, there is often a need to interwork between them.
Solutions to some interoperability will be discussed: CORBA-EJB; COM-CORBA;...
Some approaches such as Java and RMI give high productivity in a homogeneous case, but can cause severe problems when there are other languages in a project. Other approaches take a little more time to code in simple usages but come into their own in heterogeneous cases.
For years, the techniques used for communication on the web were very different to those used inside an enterprise. Probably the only thing
that they shared was IP and possibly SSL. This has begun to change in the last 6 months, but the pace of this change has been very fast. "Web Services"
is a new wave that combines much from the two worlds. It is close to the techniques used in distributed objects, and yet it is web focused.
Scalability (issues in of CORBA and in EJB)
Qusay H. Mahmoud
Simon Fraser University, Canada
Wireless Software Design for Handheld Devices
Most Internet technologies are designed for desktop and large computers running on reliable networks with relatively high bandwidth. Hand-held wireless devices, on the other hand, have a more constrained computing
environment. They tend to have less memory, less powerful CPUs, different input devices, and smaller displays. The Wireless Application Protocol (or WAP), which is a specification developed by the WAP Forum, takes advantage
of the several data-handling approaches already in use. Developing wireless applications using WAP technologies is similar to developing web pages with a markup language because it is browser based. Another approach to developing wireless applications is to use the Mobile Information Device Profile (MIDP).
With either WAP or MIDP, the Java programming language plays an important
role. In WAP, Java Servlets and Java Server Pages (JSPs) can be used to
generate Wireless Markup Language (WML) pages dynamically, and in MIDP,
applications (also called MIDlets) are written in Java.
The tutorial will help participants understand the different technologies
that can be used to develop wireless applications for hand-held devices.
The list of major topics to be covered in this tutorial includes:
- Handheld Device Markup Language (HDML)
- Compact HTML (cHTML)
- Wireless Application Protocol (WAP)
- Java 2 Micro Edition (J2ME)
- Kilo Virtual Machine (KVM)
- Mobile Information Device profile (MIDP)
- Palm Programming with Java
- Security Issues
- Useful Resources
J2EE for Enterprise-Wide Business Applications - A Case Study
An overview of Java 2 Enterprise Edition (J2EE) is presented first.
We focus on APIs relevant to Model-View-Controller (MVC) design
paradigm - Servlets, JSP, EJB. A convenient framework for separating
presentation layer from business logic and data model layer is
proposed. Finally, an implemented industry solution (J2EE, MVC,
Application Server, RDBMS, LDAP) is discussed in details.
Tutorial audience: software engineers, software consultants,
system architects dealing with technologies around J2EE.