Server Side Development for Smart Clients, Game Development. Smart Client Architecture

Size: px
Start display at page:

Download "Server Side Development for Smart Clients, Game Development. Smart Client Architecture"

Transcription

1 Server Side Development for Smart Clients, Game Development David Tipper Associate Professor Department of Information Science and Telecommunications University of Pittsburgh Slides 7 Smart Client Architecture Custom software executes on Devices Components: Smart clients Synchronization server data/content source may include proxies or gateways Smart Clients Base Station Wired connection WWAN Wireless Gateway Internet Synchronization server Enterprise Data Sources 2 1

2 Platform Independence Rather than develop multiple versions of the same application for various platforms strive for platform independence Primary Tools Sun s Java 2 Micro Edition (J2ME) Run java apps on a java virtual machine (JVM) Microsoft.NET Compact Framework (.NET CF) Run on Microsoft s Common Language Runtime (CLR) platform 3 Distributed Application Architectures 1-Tier Architecture All the layers are tightly integrated 2-Tier Architecture The presentation layer and some or all of the business logic is spread across to the clients Server becomes more or less just a database server N-Tier Architecture The Presentation layer is located on the client device The Business Logic layer on a shared computer (application server) The data access layer on a database server Presentation Layer Business Logic Layer Data Access Layer 4 2

3 2-Tier Architecture User interface and business logic is bound to an individual application on the device Thin Client vs. Fat Client How large the business logic is embedded in the client device Pros: Applications are easy and relatively inexpensive to develop Performance is reasonable good Cons Parts of applications on clients might be very complex and expensive to maintain Low reusability Presentation Layer (MIDlet UI) Business Logic Layer (MIDlet engine) J2ME/MIDP Client Data Access Layer Server 5 3-Tier Architecture Business logic at the application server has a dual role: Act as a server towards client devices Act as a client towards the database server Pros: Decoupling layer implementation Codes are easy to upgrade High reusability Easy to enhance with security, load balancing, etc. Cons Complex implementation May degrade the performance for a simple application Presentation Layer (MIDlet UI) Business Logic Layer (MIDlet engine) J2ME/MIDP Client Business Logic Layer Application Server Data Access Layer Database Server 6 3

4 Server Side Development Issues related to server side development relate to Tier model Managing code to client Synchronization Data management updates up/down Two platforms Microsoft.NET for.net CF C# applications Sun Java platform (J2EE) for J2ME apps 7 Java Server Side Development Servlet: Standard are Java 2 programs which run on the server. MIDlet: The application, a MIDlet, was designed for the Mobile Information Device Profile, one of the J2ME specifications. The MIDlets can connect to servlets using http/gcf as discussed earlier. Servlet implement server side functionality (ex, available seats in movie theatre) Servlets developed in standard J2SE or J2EE environment using development tools like Tomcat, Netbeans, etc. 8 4

5 J2ME to J2EE Overview Data persistence possible on the client, server or both Client MIDP Record Management System (RMS) APIs allows for data storage that is persistent on the device HTTP provides the bridge between J2ME (MIDP) and the J2EE Platform Both Platforms use HTTP/HTTPS (MIDP 1.0.3) MIDP supports HTTP 1.1 and APIs for generating GET, POST, and HEAD requests Messages may tunnel through different protocols that are transparent to the client and server MIDlet can send any Message Format in the body of a HTTP request XML, Text, binary, Mime-types are used to indicate body format/type 9 HTTP Originally designed for transferring raw data, such as Web pages, across the Internet Ideal Client/Server Communication protocol for mobile Java applications. High compatibility and portability Firewall Friendly 10 5

6 MIDlet-Servlet Communication Through HTTP HTTP Get The input values are sent as part of the URL in the QUERY_STRING environment variable. Easy to develop o Support only text o Limit in length HTTP Post Data is sent to the server as an input stream independently from the URL, and its length is saved in the CONTENT_LENGTH environment variable. Data volume is not constrained Support binary data o May not be efficient 11 HTTP Get vs. HTTP Post Student#: <form action=" method="get"> Student#: <input type="text" name="idnum" size=30> <input type="submit"> </form> Submit <form action=" method= POST"> Student#: <input type="text" name="idnum" size=30> <input type="submit"> </form> m/cgi-bin/gergrade.cgi idnum=

7 J2ME to J2EE Areas to Consider for J2ME to J2EE Communications Session: Sequence of service requests by single user using a client to access server State: Information maintained in the session across requests. Ex: Contents of Shopping Cart Personalization data: Information about the user, such as address, SSN, etc This information does not normally change from session to session, thus a J2ME application should use it to enhance the user s experience. 13 J2ME to J2EE Managing Session States for MIDlet to J2EE Communications HTTP is a stateless protocol. The Java Servlet API provides a HTTPSession object to work around this limitation J2EE App Servers use 3 methods to maintain integrity of HTTP Sessions: Using Cookies Using URL Rewriting Using HTTPS MIDP Devices can use all these 3 methods Managing Personalization Data for MIDlets Session Management may be transient Personalization data by nature is Persistent Major benefit of utilizing Personalization is fewer interaction for the user 14 7

8 J2ME Connection Types HTTP/HTTPS Very simple to use XML over HTTP/HTTPS Beginning to be a viable choice due to varying parsers available Model Creates an object representation of a document in memory (e.g., DOM) Push Parses through an entire document, spitting out events to registered listeners Pull Parses a little at a time, returning a single element or tag 15 Wireless Web Services APIs (1) J2ME Web Services (JSR 172) J2ME Web Services specification goals Access remote SOAP/XML based web services Does not support web service hosting capabilities JAX-RPC subset» Must support stub based invocation (stub created using WSDL)» No support yet for Dynamic proxies and Dynamic Invocation Interface (DII)» No asynchronous messaging with attachment support» Not required to support Java beans Provides parsing XML data JAXP subset» Must support SAX 2.0 (with exceptions)» Must not support DOM 16 8

9 Wireless Web Services APIs 1 (2) SOAP and J2ME J2ME has only limited string functionalities, a problem for every wireless java XML parser J2ME/CLDC lacks support Float datatypes SOAP parsing requires to read the whole document ksoap & kxml ksoap API with Small footprint ksoap is open source and based on kxml Adds support for data types not supported by J2ME kxml Non validating XML pull parser 17 MIDlet, J2EE Deployment, On the J2EE side, the Servlets and any other J2EE components such as EJBs are packaged in a JAR file, which along with any WARs go in an EAR file together with a deployment descriptor You can use the many tools that many App Servers provide to accomplish the packaging MIDP application (code and any resources) packaged into a JAR file a JAD file accompanies the JAR file Over The AIR (OTA) Provisioning provides guidelines for deploying the MIDlet on MIDP devices 18 9

10 Servlet Development Cycle Enable the invoker servlet Create a Java class that extends javax.servlet.http.httpservlet Testing and Debugging Deployment 19 Example Create a web-application to count number of Hits Enable the invoker servlet <?xml version="1.0" encoding="iso "?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" " <web-app> <servlet> <servlet-name>myservlet</servlet-name> <servlet-class>hitservlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>myservlet</servlet-name> <url-pattern>/hits</url-pattern> </servlet-mapping> </web-app> 10

11 Writing a Counting Servlet HitServlet simply counts the number of times it's been invoked and writes back to the client a message containing the count. import javax.servlet.http.*; import javax.servlet.*; import java.io.*; public class HitServlet extends HttpServlet { private int mcount; public void doget(httpservletrequest request, HttpServletResponse response) throws ServletException, IOException { String message = "Hits: " + ++mcount; response.setcontenttype("text/plain"); response.setcontentlength(message.length()); PrintWriter out = response.getwriter(); out.println(message); Hooking Up a MIDlet to the Servlet Create a command action method in your MIDlet: public void commandaction(command c, Displayable s) { if (c == mexitcommand) notifydestroyed(); else if (c == mconnectcommand) { Form waitform = new Form("Waiting..."); mdisplay.setcurrent(waitform); Thread t = new Thread() { public void run() { connect(); ; t.start(); 11

12 Hooking Up a MIDlet to the Servlet The Connect method private void connect() { HttpConnection hc = null; InputStream in = null; String url = getappproperty("hitmidlet.url"); try { hc = (HttpConnection)Connector.open(url); in = hc.openinputstream(); int contentlength = (int)hc.getlength(); byte[] raw = new byte[contentlength]; int length = in.read(raw); in.close(); hc.close(); // Show the response to the user. String s = new String(raw, 0, length); mmessageitem.settext(s); catch (IOException ioe) { mmessageitem.settext(ioe.tostring()); mdisplay.setcurrent(mmainform); Enhanced Counting Server Count Number of Hits for Each Client Using Cookies for Session Tracking Cookie: a little piece of data that is passed from the server to the client in an HTTP response MIDLet associated with a session ID Each time the MIDlet sends a request to the server, it will be sending a session ID as a request header Server manages the counter It uses the session ID from MIDlet to look up the counter object to increment and return the value back to the MIDlet 24 12

13 CookieServlet public class CookieServlet extends HttpServlet { private Map mhitmap = new HashMap(); public void doget(httpservletrequest request, HttpServletResponse response) throws ServletException, IOException { HttpSession session = request.getsession(); String id = session.getid(); int hits = -1; Integer hitsinteger = (Integer)mHitMap.get(id); if (hitsinteger!= null) hits = hitsinteger.intvalue(); hits++; mhitmap.put(id, new Integer(hits)); String message = "Hits for this session: " + hits + "."; response.setcontenttype("text/plain"); response.setcontentlength(message.length()); PrintWriter out = response.getwriter(); out.println(message); Using HashMap to store counter for each client Extract session ID from the request Increment, store, and return 25 Cookie MIDLet Public void run() { // Query the server and retrieve the response. HttpConnection hc = (HttpConnection)Connector.open(url); if (msession!= null) hc.setrequestproperty("cookie", msession); InputStream in = hc.openinputstream(); String cookie = hc.getheaderfield("set-cookie"); if (cookie!= null) { int semicolon = cookie.indexof(';'); msession = cookie.substring(0, semicolon); int length = (int)hc.getlength(); byte[] raw = new byte[length]; in.read(raw); String s = new String(raw); Alert a = new Alert("Response", s, null, null); a.settimeout(alert.forever); mdisplay.setcurrent(a, mform); in.close(); hc.close(); Query the server with a session ID Retrieve response from the server Display the result 26 13

14 J2ME Development Basic steps as any software application development Characterize the application (what will user be able to do?) For example check movie times and buy tickets Identify tasks and target devices Choose a movie, find a theater, view show times, buy ticket Sketch tasks/application flow Create a mock up Determine server side functionality 27 Recommended J2ME Programming Practices Keep in mind that there are strict memory constraints on most CLDC target devices Allocate memory resources just before use Free resources as soon as they are not needed Avoid allocating small temporary chunks of memory to avoid heap fragmentation Make local copies of global variables Avoid redundant method calls, and inline functions rather than creating a new class Optimize loops 28 14

15 Game Development Analyst Predictions for Mobile Games $2.8 billion in 2006 In-Stat/MDR $3.5 billion in Informa Media $4.4 billion in 2006 Ovum $9.3 billion in Frost and Sullivan $9 billion in 2010 Informa Media Mobile games expected to fall into many game genres Word and Trivia Games Puzzle Games Sports Games Action Games Multi-player games Location based games 29 Handheld Games Challenges of Limited device CPU Speed Screen size and colors Memory size and speed Input Latency For networked games Basic Game Components Graphics and Animation User Input Sound Networking 30 15

16 Handheld Games Basic Game Features Storyline Play Mode Single player standalone Multiplayer turn based vs. simultaneous vs. round robin Game Engine Options» On each client device and have clients connect in peer to peer fashion» Independent server that manages game state distributes events to players Map (space where game takes place) Design patterns exist for games Document / View pattern Model+Functions / User Interfaces 31 General Game Architecture/Components Map: models physical space where the game takes place; can be many viewers for the same map (e.g. 2d and 3d viewers). Generic Game Loop While the game is not over: read from the user process the user input process all automatic moves generate new state of the model before: check that moves are legal after: check for game over or winning situations refresh views sleep/synchronize 32 16

17 Game Enabling Technology Development platforms for games: J2ME Largest global market, used by most carriers Binary Runtime Environment Wireless (BREW) (C++ for games) Used by Verizon, largest US carrier Symbian Supports C++, Java, VB Windows.NET CF Mobile SmartPhone C#, VB.NET 33 Multi-Player Network Games Due to wireless network limitations, have following general guidelines Operate in standalone disconnected mode as much as possible, only connect to network if needed Try to batch message exchanged between players Perform client-side validations Make operations interruptible Provide progress meters and splash screens 34 17

18 J2ME Game Development javax.microedition.lcdui.game Series of Classes for the development of games APIs are optimized by device using native code Game APIs consist of Layer, Sprite, TiledLayer, LayerManager, GameCanvas 35 J2ME Game Development 36 18

19 J2ME Game Development Layer Abstract class that represents a visual element of the game Sprite Animated Layer displays one of several graphical frames Frames are equal size and provided by a single object Custom animation sequence possible Collision detection and transformation methods provided Tiled Layer A layer made up of a group of cells Cells filled with single image object or can be animated with rapid changes Use for background Sprites Tiled Layer 37 J2ME Game Development Layer Manager Provides APIs that control game s layers and how rendered on the screen Game Canvas Game engine 38 19

20 Game Blueprints Sun has developed set of wireless/handheld game blueprints Standalone Networked Basic game features coded as example games to show how tiled layer, sprites, layer manager game canvas, etc. work. Similarly Microsoft has a series of game forms for development of games in.net CF 39 Standalone Game Example Article discussing details of example game at Code: Player controls a paddle, which can be moved to the right, and to the left. To prevent the ball from falling out the bottom, the player has to keep moving the paddle to the point where the ball would drop out. The game is organized into levels. In each level, there are a number of bricks placed in the playing field. Some of these bricks will just disintegrate upon contact with the ball, some have special properties. The player has to use the ball to clear all destructible bricks from the playing field to advance to the next level. If the ball drops out the bottom, the player loses a life. The player has three lives. Once all lives are used up, the game is over

21 Multi-player Networked Game Example Article discussing details of example networked game Code: Two player, level based game Players control their characters (slugs) through their phone Slugs must move and avoid obstacles (brick walls, poison, opponent, boundaries) Goal is to be the first player to reach the one slug house in each level Some levels have extra lives & lettuce to boost slugs energy 41 21

Java EE Introduction, Content. Component Architecture: Why and How Java EE: Enterprise Java

Java EE Introduction, Content. Component Architecture: Why and How Java EE: Enterprise Java Java EE Introduction, Content Component Architecture: Why and How Java EE: Enterprise Java The Three-Tier Model The three -tier architecture allows to maintain state information, to improve performance,

More information

Web Container Components Servlet JSP Tag Libraries

Web Container Components Servlet JSP Tag Libraries Web Application Development, Best Practices by Jeff Zhuk, JavaSchool.com ITS, Inc. dean@javaschool.com Web Container Components Servlet JSP Tag Libraries Servlet Standard Java class to handle an HTTP request

More information

2.8. Session management

2.8. Session management 2.8. Session management Juan M. Gimeno, Josep M. Ribó January, 2008 Session management. Contents Motivation Hidden fields URL rewriting Cookies Session management with the Servlet/JSP API Examples Scopes

More information

Java ME Clients for XML Web Services

Java ME Clients for XML Web Services 66 Java ME Clients for XML Web Services Paul POCATILU Academy of Economic Studies, Bucharest Using Web services in developing applications has many advantages like the existence of standards, multiple

More information

ACM Crossroads Student Magazine The ACM's First Electronic Publication

ACM Crossroads Student Magazine The ACM's First Electronic Publication Page 1 of 8 ACM Crossroads Student Magazine The ACM's First Electronic Publication Crossroads Home Join the ACM! Search Crossroads crossroads@acm.org ACM / Crossroads / Columns / Connector / An Introduction

More information

Web Application Programmer's Guide

Web Application Programmer's Guide Web Application Programmer's Guide JOnAS Team ( Florent BENOIT) - March 2009 - Copyright OW2 consortium 2008-2009 This work is licensed under the Creative Commons Attribution-ShareAlike License. To view

More information

How to Build an E-Commerce Application using J2EE. Carol McDonald Code Camp Engineer

How to Build an E-Commerce Application using J2EE. Carol McDonald Code Camp Engineer How to Build an E-Commerce Application using J2EE Carol McDonald Code Camp Engineer Code Camp Agenda J2EE & Blueprints Application Architecture and J2EE Blueprints E-Commerce Application Design Enterprise

More information

An introduction to web programming with Java

An introduction to web programming with Java Chapter 1 An introduction to web programming with Java Objectives Knowledge Objectives (continued) The first page of a shopping cart application The second page of a shopping cart application Components

More information

DTS Web Developers Guide

DTS Web Developers Guide Apelon, Inc. Suite 202, 100 Danbury Road Ridgefield, CT 06877 Phone: (203) 431-2530 Fax: (203) 431-2523 www.apelon.com Apelon Distributed Terminology System (DTS) DTS Web Developers Guide Table of Contents

More information

Implementing Mobile Thin client Architecture For Enterprise Application

Implementing Mobile Thin client Architecture For Enterprise Application Research Paper Implementing Mobile Thin client Architecture For Enterprise Paper ID IJIFR/ V2/ E1/ 037 Page No 131-136 Subject Area Information Technology Key Words JQuery Mobile, JQuery Ajax, REST, JSON

More information

Nokia 9210i/9290 Communicators and PersonalJava TM Application Development

Nokia 9210i/9290 Communicators and PersonalJava TM Application Development Nokia 9210i/9290 Communicators and Personal TM Application Development 05-03-2002 Nokia 9210i/9290 Communicators and PersonalTM Application Development Table of contents 1. DIFFERENT JAVA TECHNOLOGIES...

More information

Java ME & NetBeans Mobility. Petr Suchomel Architect, NetBeans Mobility Sun Microsystems

Java ME & NetBeans Mobility. Petr Suchomel Architect, NetBeans Mobility Sun Microsystems Java ME & NetBeans Mobility Petr Suchomel Architect, NetBeans Mobility Sun Microsystems Agenda Java ME introduction Java ME applications NetBeans Mobility Edition Power of advanced features Demos, demos,

More information

How To Understand The Architecture Of Java 2Ee, J2Ee, And J2E (Java) In A Wordpress Blog Post

How To Understand The Architecture Of Java 2Ee, J2Ee, And J2E (Java) In A Wordpress Blog Post Understanding Architecture and Framework of J2EE using Web Application Devadrita Dey Sarkar,Anavi jaiswal, Ankur Saxena Amity University,UTTAR PRADESH Sector-125, Noida, UP-201303, India Abstract: This

More information

Contents. Client-server and multi-tier architectures. The Java 2 Enterprise Edition (J2EE) platform

Contents. Client-server and multi-tier architectures. The Java 2 Enterprise Edition (J2EE) platform Part III: Component Architectures Natividad Martínez Madrid y Simon Pickin Departamento de Ingeniería Telemática Universidad Carlos III de Madrid {nati, spickin}@it.uc3m.es Introduction Contents Client-server

More information

Development of Java ME

Development of Java ME Y39PDA Development of Java ME application České vysoké učení technické v Praze Fakulta Elektrotechnická Content What is Java ME Low Level a High Level API What is JSR LBS Java ME app. life-cycle 2/29 Is

More information

Java Platform, Micro Edition (Java ME) Mokoena F.R. The 7046 Team

Java Platform, Micro Edition (Java ME) Mokoena F.R. The 7046 Team Java Platform, Micro Edition (Java ME) Mokoena F.R The 7046 Team 1. Introduction Java Platform, Micro Edition (Java ME) technology is one of the popular mobile application runtime. It provides developers

More information

Using mobile phones to access Web Services in a secure way. Dan Marinescu

Using mobile phones to access Web Services in a secure way. Dan Marinescu Using mobile phones to access Web Services in a secure way Dan Marinescu March 7, 2007 Abstract Web Services is a technology that has gained in acceptance and popularity over the past years. The promise

More information

Announcements. Comments on project proposals will go out by email in next couple of days...

Announcements. Comments on project proposals will go out by email in next couple of days... Announcements Comments on project proposals will go out by email in next couple of days... 3-Tier Using TP Monitor client application TP monitor interface (API, presentation, authentication) transaction

More information

J2EE Web Development. Agenda. Application servers. What is J2EE? Main component types Application Scenarios J2EE APIs and Services.

J2EE Web Development. Agenda. Application servers. What is J2EE? Main component types Application Scenarios J2EE APIs and Services. J2EE Web Development Agenda Application servers What is J2EE? Main component types Application Scenarios J2EE APIs and Services Examples 1 1. Application Servers In the beginning, there was darkness and

More information

15-415 Database Applications Recitation 10. Project 3: CMUQFlix CMUQ s Movies Recommendation System

15-415 Database Applications Recitation 10. Project 3: CMUQFlix CMUQ s Movies Recommendation System 15-415 Database Applications Recitation 10 Project 3: CMUQFlix CMUQ s Movies Recommendation System Project Objective 1. Set up a front-end website with PostgreSQL back-end 2. Allow users to login, like

More information

Web Programming: Announcements. Sara Sprenkle August 3, 2006. August 3, 2006. Assignment 6 due today Project 2 due next Wednesday Review XML

Web Programming: Announcements. Sara Sprenkle August 3, 2006. August 3, 2006. Assignment 6 due today Project 2 due next Wednesday Review XML Web Programming: Java Servlets and JSPs Sara Sprenkle Announcements Assignment 6 due today Project 2 due next Wednesday Review XML Sara Sprenkle - CISC370 2 1 Web Programming Client Network Server Web

More information

Mobile Development Discovery Document

Mobile Development Discovery Document Mobile Development Discovery Document Prepared By: Abdul Wadood, Atifa Nadeem, Naima Khan and Haris Khan All Rights Reserved No part of this publication may be reproduced, reformatted or transmitted in

More information

Architectural Overview

Architectural Overview Architectural Overview Version 7 Part Number 817-2167-10 March 2003 A Sun ONE Application Server 7 deployment consists of a number of application server instances, an administrative server and, optionally,

More information

Clustering with Tomcat. Introduction. O'Reilly Network: Clustering with Tomcat. by Shyam Kumar Doddavula 07/17/2002

Clustering with Tomcat. Introduction. O'Reilly Network: Clustering with Tomcat. by Shyam Kumar Doddavula 07/17/2002 Page 1 of 9 Published on The O'Reilly Network (http://www.oreillynet.com/) http://www.oreillynet.com/pub/a/onjava/2002/07/17/tomcluster.html See this if you're having trouble printing code examples Clustering

More information

WEB SERVICES. Revised 9/29/2015

WEB SERVICES. Revised 9/29/2015 WEB SERVICES Revised 9/29/2015 This Page Intentionally Left Blank Table of Contents Web Services using WebLogic... 1 Developing Web Services on WebSphere... 2 Developing RESTful Services in Java v1.1...

More information

Step into the Future: HTML5 and its Impact on SSL VPNs

Step into the Future: HTML5 and its Impact on SSL VPNs Step into the Future: HTML5 and its Impact on SSL VPNs Aidan Gogarty HOB, Inc. Session ID: SPO - 302 Session Classification: General Interest What this is all about. All about HTML5 3 useful components

More information

Creating Java EE Applications and Servlets with IntelliJ IDEA

Creating Java EE Applications and Servlets with IntelliJ IDEA Creating Java EE Applications and Servlets with IntelliJ IDEA In this tutorial you will: 1. Create IntelliJ IDEA project for Java EE application 2. Create Servlet 3. Deploy the application to JBoss server

More information

A standards-based approach to application integration

A standards-based approach to application integration A standards-based approach to application integration An introduction to IBM s WebSphere ESB product Jim MacNair Senior Consulting IT Specialist Macnair@us.ibm.com Copyright IBM Corporation 2005. All rights

More information

PROGRESS Portal Access Whitepaper

PROGRESS Portal Access Whitepaper PROGRESS Portal Access Whitepaper Maciej Bogdanski, Michał Kosiedowski, Cezary Mazurek, Marzena Rabiega, Malgorzata Wolniewicz Poznan Supercomputing and Networking Center April 15, 2004 1 Introduction

More information

Introduction to J2EE Web Technologies

Introduction to J2EE Web Technologies Introduction to J2EE Web Technologies Kyle Brown Senior Technical Staff Member IBM WebSphere Services RTP, NC brownkyl@us.ibm.com Overview What is J2EE? What are Servlets? What are JSP's? How do you use

More information

Topics. Introduction. Java History CS 146. Introduction to Programming and Algorithms Module 1. Module Objectives

Topics. Introduction. Java History CS 146. Introduction to Programming and Algorithms Module 1. Module Objectives Introduction to Programming and Algorithms Module 1 CS 146 Sam Houston State University Dr. Tim McGuire Module Objectives To understand: the necessity of programming, differences between hardware and software,

More information

Web Application Architecture (based J2EE 1.4 Tutorial)

Web Application Architecture (based J2EE 1.4 Tutorial) Web Application Architecture (based J2EE 1.4 Tutorial) 1 Disclaimer & Acknowledgments Even though Sang Shin is a full-time employee of Sun Microsystems, the contents here are created as his own personal

More information

Project: E290 - MOBILE COMMERCE APPLICATION DEVELOPMENT

Project: E290 - MOBILE COMMERCE APPLICATION DEVELOPMENT Undergraduate Research Opportunity Programme (UROP) Project: E290 - MOBILE COMMERCE APPLICATION DEVELOPMENT Supervisor Professor Kong Pe Hin Hinny Nanyang Technological University Email: ephkong@ntu.edu.sg

More information

The Study on Mobile Phone-oriented Application Integration Technology of Web Services 1

The Study on Mobile Phone-oriented Application Integration Technology of Web Services 1 The Study on Mobile Phone-oriented Application Integration Technology of Web Services 1 Li Luqun 1, 2 Li Minglu 1 Cui Xianguo 2 1. Department of Computer Science of Shanghai Jiaotong University, 1954 Huashan

More information

An Overview of Java. overview-1

An Overview of Java. overview-1 An Overview of Java overview-1 Contents What is Java Major Java features Java virtual machine Java programming language Java class libraries (API) GUI Support in Java Networking and Threads in Java overview-2

More information

Servlets. Based on Notes by Dave Hollinger & Ethan Cerami Also, the Online Java Tutorial by Sun

Servlets. Based on Notes by Dave Hollinger & Ethan Cerami Also, the Online Java Tutorial by Sun Servlets Based on Notes by Dave Hollinger & Ethan Cerami Also, the Online Java Tutorial by Sun 1 What is a Servlet? A Servlet is a Java program that extends the capabilities of servers. Inherently multi-threaded.

More information

Glassfish, JAVA EE, Servlets, JSP, EJB

Glassfish, JAVA EE, Servlets, JSP, EJB Glassfish, JAVA EE, Servlets, JSP, EJB Java platform A Java platform comprises the JVM together with supporting class libraries. Java 2 Standard Edition (J2SE) (1999) provides core libraries for data structures,

More information

Component Middleware. Sophie Chabridon. INT - INF Department - Distributed Systems team 2006

Component Middleware. Sophie Chabridon. INT - INF Department - Distributed Systems team 2006 Sophie Chabridon INT - INF Department - Distributed Systems team 2006 Outline 1. Introduction................................................................... 3 2. Overview of EJB Technology.................................................

More information

Mobile Operating Systems. Week I

Mobile Operating Systems. Week I Mobile Operating Systems Week I Overview Introduction Mobile Operating System Structure Mobile Operating System Platforms Java ME Platform Palm OS Symbian OS Linux OS Windows Mobile OS BlackBerry OS iphone

More information

Mobile application development J2ME U N I T I I

Mobile application development J2ME U N I T I I Mobile application development J2ME U N I T I I Overview J2Me Layered Architecture Small Computing Device requirements Run Time Environment Java Application Descriptor File Java Archive File MIDlet Programming

More information

Developing Java Web Services

Developing Java Web Services Page 1 of 5 Developing Java Web Services Hands On 35 Hours Online 5 Days In-Classroom A comprehensive look at the state of the art in developing interoperable web services on the Java EE platform. Students

More information

Extreme Java G22.3033-006. Session 3 Main Theme Java Core Technologies (Part I) Dr. Jean-Claude Franchitti

Extreme Java G22.3033-006. Session 3 Main Theme Java Core Technologies (Part I) Dr. Jean-Claude Franchitti Extreme Java G22.3033-006 Session 3 Main Theme Java Core Technologies (Part I) Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute of Mathematical Sciences Agenda

More information

Evaluation of Distributed SOAP and RESTful Mobile Web Services

Evaluation of Distributed SOAP and RESTful Mobile Web Services International Journal on Advances in Networks and Services, vol 3 no 3 & 4, year 21, http://www.iariajournals.org/networks_and_services/ 447 Evaluation of Distributed SOAP and RESTful Mobile Web Services

More information

Redbooks Paper. WebSphere Application Server V5 Architecture. Carla Sadtler

Redbooks Paper. WebSphere Application Server V5 Architecture. Carla Sadtler Redbooks Paper Carla Sadtler WebSphere Application Server V5 Architecture WebSphere Application Server is IBM 's implementation of the J2EE (Java 2 Enterprise Edition) platform, conforming to V1.3 of the

More information

M-GIS Mobile and Interoperable Access to Geographic Information

M-GIS Mobile and Interoperable Access to Geographic Information M-GIS Mobile and Interoperable Access to Geographic Information Jorge Cardoso 1, Artur Rocha 1, João Correia Lopes 1,2 1 INESC Porto, R. Dr. Roberto Frias, 4200-465 Porto http://www.inescporto.pt/ {jcsc,artur.rocha,jlopes}@inescporto.pt

More information

The Java Virtual Machine and Mobile Devices. John Buford, Ph.D. buford@alum.mit.edu Oct 2003 Presented to Gordon College CS 311

The Java Virtual Machine and Mobile Devices. John Buford, Ph.D. buford@alum.mit.edu Oct 2003 Presented to Gordon College CS 311 The Java Virtual Machine and Mobile Devices John Buford, Ph.D. buford@alum.mit.edu Oct 2003 Presented to Gordon College CS 311 Objectives Review virtual machine concept Introduce stack machine architecture

More information

Implementing Java Distributed Objects with JDBC

Implementing Java Distributed Objects with JDBC Implementing Java Distributed Objects with JDBC Pritisha 1, Aashima Arya 2 1,2 Department of Computer Science Bhagwan Mahaveer institute of engineering & technology (BMIET), Deenbandhu Chhotu Ram University

More information

NetBeans IDE Field Guide

NetBeans IDE Field Guide NetBeans IDE Field Guide Copyright 2005 Sun Microsystems, Inc. All rights reserved. Table of Contents Introduction to J2EE Development in NetBeans IDE...1 Configuring the IDE for J2EE Development...2 Getting

More information

INTRODUCTION TO WEB TECHNOLOGY

INTRODUCTION TO WEB TECHNOLOGY UNIT-I Introduction to Web Technologies: Introduction to web servers like Apache1.1, IIS, XAMPP (Bundle Server), WAMP Server(Bundle Server), handling HTTP Request and Response, installation of above servers

More information

Developing an EJB3 Application. on WebSphere 6.1. using RAD 7.5

Developing an EJB3 Application. on WebSphere 6.1. using RAD 7.5 Developing an EJB3 Application on WebSphere 6.1 using RAD 7.5 Introduction This tutorial introduces how to create a simple EJB 3 application using Rational Application Developver 7.5( RAD7.5 for short

More information

Manual. Programmer's Guide for Java API

Manual. Programmer's Guide for Java API 2013-02-01 1 (15) Programmer's Guide for Java API Description This document describes how to develop Content Gateway services with Java API. TS1209243890 1.0 Company information TeliaSonera Finland Oyj

More information

Building Web Applications, Servlets, JSP and JDBC

Building Web Applications, Servlets, JSP and JDBC Building Web Applications, Servlets, JSP and JDBC Overview Java 2 Enterprise Edition (JEE) is a powerful platform for building web applications. The JEE platform offers all the advantages of developing

More information

Project SailFin: Building and Hosting Your Own Communication Server.

Project SailFin: Building and Hosting Your Own Communication Server. FSFS Conference: Dec 9-11, Thiruvananthapuram Project SailFin: Building and Hosting Your Own Communication Server. Binod PG Senior Staff Engineer Sun Microsystems, Inc. 1 Agenda SailFin: Open Source Java

More information

What Is the Java TM 2 Platform, Enterprise Edition?

What Is the Java TM 2 Platform, Enterprise Edition? Page 1 de 9 What Is the Java TM 2 Platform, Enterprise Edition? This document provides an introduction to the features and benefits of the Java 2 platform, Enterprise Edition. Overview Enterprises today

More information

Managing Data on the World Wide-Web

Managing Data on the World Wide-Web Managing Data on the World Wide-Web Sessions, Listeners, Filters, Shopping Cart Elad Kravi 1 Web Applications In the Java EE platform, web components provide the dynamic extension capabilities for a web

More information

Development of Web Applications

Development of Web Applications Development of Web Applications Principles and Practice Vincent Simonet, 2013-2014 Université Pierre et Marie Curie, Master Informatique, Spécialité STL 3 Server Technologies Vincent Simonet, 2013-2014

More information

If you wanted multiple screens, there was no way for data to be accumulated or stored

If you wanted multiple screens, there was no way for data to be accumulated or stored Handling State in Web Applications Jeff Offutt http://www.cs.gmu.edu/~offutt/ SWE 642 Software Engineering for the World Wide Web sources: Professional Java Server Programming, Patzer, Wrox Web Technologies:

More information

Agenda. Summary of Previous Session. Application Servers G22.3033-011. Session 3 - Main Theme Page-Based Application Servers (Part II)

Agenda. Summary of Previous Session. Application Servers G22.3033-011. Session 3 - Main Theme Page-Based Application Servers (Part II) Application Servers G22.3033-011 Session 3 - Main Theme Page-Based Application Servers (Part II) Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute of Mathematical

More information

Mobile Software Development Services

Mobile Software Development Services Mobile Software Development Services Rapidsoft Systems has extensive domain knowledge when it comes to wireless and mobile application solutions. We like to build smart phone applications for cellular

More information

Tomcat 5 New Features

Tomcat 5 New Features Tomcat 5 New Features ApacheCon US 2003 Session MO10 11/17/2003 16:00-17:00 Craig R. McClanahan Senior Staff Engineer Sun Microsystems, Inc. Slides: http://www.apache.org/~craigmcc/ Agenda Introduction

More information

Tutorial: Development of Interactive Applications for Mobile Devices

Tutorial: Development of Interactive Applications for Mobile Devices Tutorial: Development of Interactive Applications for Mobile Devices 7th International Conference on Human Computer Interaction with Mobile Devices and Services (Mobile HCI 2005) (Media Informatics Group,

More information

1 Introduction. 3 Open Mobile IS components 3.1 Embedded Database 3.2 Web server and Servlet API 3.3 Service API and template engine

1 Introduction. 3 Open Mobile IS components 3.1 Embedded Database 3.2 Web server and Servlet API 3.3 Service API and template engine 1 S u m m a r y 1 Introduction 2 Open Mobile IS Framework 2.1 Presentation 2.2 Main concepts 2.2.1 Accessibility 2.2.2 Availability 2.2.3 Evolution capabilities 2.3 Open Mobile IS constrains Answer 2.3.1

More information

Location-Based Information Systems

Location-Based Information Systems Location-Based Information Systems Developing Real-Time Tracking Applications Miguel A Labrador Alfredo J Perez Pedro M Wightman CRC Press Taylor & Francis Group Boca Raton London New York CRC Press Is

More information

25 May 11.30 Code 3C3 Peeling the Layers of the 'Performance Onion John Murphy, Andrew Lee and Liam Murphy

25 May 11.30 Code 3C3 Peeling the Layers of the 'Performance Onion John Murphy, Andrew Lee and Liam Murphy UK CMG Presentation 25 May 11.30 Code 3C3 Peeling the Layers of the 'Performance Onion John Murphy, Andrew Lee and Liam Murphy Is Performance a Problem? Not using appropriate performance tools will cause

More information

Web Service Development Using CXF. - Praveen Kumar Jayaram

Web Service Development Using CXF. - Praveen Kumar Jayaram Web Service Development Using CXF - Praveen Kumar Jayaram Introduction to WS Web Service define a standard way of integrating systems using XML, SOAP, WSDL and UDDI open standards over an internet protocol

More information

Java 2 Web Developer Certification Study Guide Natalie Levi

Java 2 Web Developer Certification Study Guide Natalie Levi SYBEX Sample Chapter Java 2 Web Developer Certification Study Guide Natalie Levi Chapter 8: Thread-Safe Servlets Copyright 2002 SYBEX Inc., 1151 Marina Village Parkway, Alameda, CA 94501. World rights

More information

Java 7 Recipes. Freddy Guime. vk» (,\['«** g!p#« Carl Dea. Josh Juneau. John O'Conner

Java 7 Recipes. Freddy Guime. vk» (,\['«** g!p#« Carl Dea. Josh Juneau. John O'Conner 1 vk» Java 7 Recipes (,\['«** - < g!p#«josh Juneau Carl Dea Freddy Guime John O'Conner Contents J Contents at a Glance About the Authors About the Technical Reviewers Acknowledgments Introduction iv xvi

More information

Principles and Techniques of DBMS 5 Servlet

Principles and Techniques of DBMS 5 Servlet Principles and Techniques of DBMS 5 Servlet Haopeng Chen REliable, INtelligentand Scalable Systems Group (REINS) Shanghai Jiao Tong University Shanghai, China http://reins.se.sjtu.edu.cn/~chenhp e- mail:

More information

How To Create A C++ Web Service

How To Create A C++ Web Service A Guide to Creating C++ Web Services WHITE PAPER Abstract This whitepaper provides an introduction to creating C++ Web services and focuses on:» Challenges involved in integrating C++ applications with

More information

7 Web Databases. Access to Web Databases: Servlets, Applets. Java Server Pages PHP, PEAR. Languages: Java, PHP, Python,...

7 Web Databases. Access to Web Databases: Servlets, Applets. Java Server Pages PHP, PEAR. Languages: Java, PHP, Python,... 7 Web Databases Access to Web Databases: Servlets, Applets Java Server Pages PHP, PEAR Languages: Java, PHP, Python,... Prof. Dr. Dietmar Seipel 837 7.1 Access to Web Databases by Servlets Java Servlets

More information

MIDlet development with J2ME and MIDP

MIDlet development with J2ME and MIDP MIDlet development with J2ME and MIDP ibm.com/developerworks Table of Contents If you're viewing this document online, you can click any of the topics below to link directly to that section. 1. Introduction...

More information

Managing Complexity in Mobile Application Deployment Using the OSGi Service Platform

Managing Complexity in Mobile Application Deployment Using the OSGi Service Platform Managing Complexity in Mobile Application Deployment Using the OSGi Service Platform Rafiul Ahad, Ph.D. Vice President, Mobile Products and Services Oracle Corporation copyright 2004 by OSGi Alliance All

More information

No no-argument constructor. No default constructor found

No no-argument constructor. No default constructor found Every software developer deals with bugs. The really tough bugs aren t detected by the compiler. Nasty bugs manifest themselves only when executed at runtime. Here is a list of the top ten difficult and

More information

CONTROLLING WEB APPLICATION BEHAVIOR WITH

CONTROLLING WEB APPLICATION BEHAVIOR WITH CONTROLLING WEB APPLICATION BEHAVIOR WITH WEB.XML Chapter Topics in This Chapter Customizing URLs Turning off default URLs Initializing servlets and JSP pages Preloading servlets and JSP pages Declaring

More information

JAVA. EXAMPLES IN A NUTSHELL. O'REILLY 4 Beijing Cambridge Farnham Koln Paris Sebastopol Taipei Tokyo. Third Edition.

JAVA. EXAMPLES IN A NUTSHELL. O'REILLY 4 Beijing Cambridge Farnham Koln Paris Sebastopol Taipei Tokyo. Third Edition. "( JAVA. EXAMPLES IN A NUTSHELL Third Edition David Flanagan O'REILLY 4 Beijing Cambridge Farnham Koln Paris Sebastopol Taipei Tokyo Table of Contents Preface xi Parti. Learning Java 1. Java Basics 3 Hello

More information

Mobile-PC Suite: Using Mobile Phone as Remote to Control PC Operations

Mobile-PC Suite: Using Mobile Phone as Remote to Control PC Operations Mobile-PC Suite: Using Mobile Phone as Remote to Control PC Operations R.S.S.Vishnu Priya, P.Panini Sai, K.Ruth Ramya, N.Chandra Sekhar, K.Venkata Prasad, P.D.Nageswara Rao Dept. of CSE, KLCE Vaddeswaram,

More information

Hello World Portlet Rendered with JSP for WebSphere Portal Version 4.1

Hello World Portlet Rendered with JSP for WebSphere Portal Version 4.1 1 of 11 16.10.2002 11:41 Hello World Portlet Rendered with JSP for WebSphere Portal Version 4.1 Table of Contents Creating the directory structure Creating the Java code Compiling the code Creating the

More information

Introduction to Sun ONE Application Server 7

Introduction to Sun ONE Application Server 7 Introduction to Sun ONE Application Server 7 The Sun ONE Application Server 7 provides a high-performance J2EE platform suitable for broad deployment of application services and web services. It offers

More information

Implementing the Shop with EJB

Implementing the Shop with EJB Exercise 2 Implementing the Shop with EJB 2.1 Overview This exercise is a hands-on exercise in Enterprise JavaBeans (EJB). The exercise is as similar as possible to the other exercises (in other technologies).

More information

Session Tracking Customized Java EE Training: http://courses.coreservlets.com/

Session Tracking Customized Java EE Training: http://courses.coreservlets.com/ 2012 Marty Hall Session Tracking Originals of Slides and Source Code for Examples: http://courses.coreservlets.com/course-materials/csajsp2.html 2 Customized Java EE Training: http://courses.coreservlets.com/

More information

CACHÉ: FLEXIBLE, HIGH-PERFORMANCE PERSISTENCE FOR JAVA APPLICATIONS

CACHÉ: FLEXIBLE, HIGH-PERFORMANCE PERSISTENCE FOR JAVA APPLICATIONS CACHÉ: FLEXIBLE, HIGH-PERFORMANCE PERSISTENCE FOR JAVA APPLICATIONS A technical white paper by: InterSystems Corporation Introduction Java is indisputably one of the workhorse technologies for application

More information

Introduction to Mobile Phone. Programming in Java Me

Introduction to Mobile Phone. Programming in Java Me Introduction to Mobile Phone Programming in Java Me (prepared for CS/ECE 707, UW-Madison) Author: Leszek Wiland and Suman Banerjee 1 Content 1. Introduction 2. Setting up programming environment 3. Hello

More information

What is ArcGIS Comprised Of?

What is ArcGIS Comprised Of? ArcGIS Server 9.1 What is ArcGIS Comprised Of? ArcGIS Desktop Integrated suite of GIS applications ArcGIS Engine Embeddable developer components Server GIS ArcSDE, ArcIMS, ArcGIS Server Mobile GIS ArcPad

More information

Developing Web Services with Eclipse and Open Source. Claire Rogers Developer Resources and Partner Enablement, HP February, 2004

Developing Web Services with Eclipse and Open Source. Claire Rogers Developer Resources and Partner Enablement, HP February, 2004 Developing Web Services with Eclipse and Open Source Claire Rogers Developer Resources and Partner Enablement, HP February, 2004 Introduction! Many companies investigating the use of web services! Cost

More information

Developing Web Services with Documentum

Developing Web Services with Documentum Developing Web Services with Documentum Documentum Technical White Paper September 16, 2002 Erin Samuels Page 1 of 50 INTRODUCTION... 4 INDUSTRY MOMENTUM... 4 ABOUT THIS DOCUMENT... 4 THE DOCUMENTUM ECM

More information

Controlling Web Application Behavior

Controlling Web Application Behavior 2006 Marty Hall Controlling Web Application Behavior The Deployment Descriptor: web.xml JSP, Servlet, Struts, JSF, AJAX, & Java 5 Training: http://courses.coreservlets.com J2EE Books from Sun Press: http://www.coreservlets.com

More information

Introduction to BlackBerry Development using Java ME. Presented by: Sean Fenton Technical Channel Manager RIM (Research in Motion )

Introduction to BlackBerry Development using Java ME. Presented by: Sean Fenton Technical Channel Manager RIM (Research in Motion ) Introduction to BlackBerry Development using Java ME Presented by: Sean Fenton Technical Channel Manager RIM (Research in Motion ) 2 Introduction to BlackBerry MDS BlackBerry Mobile Data System (BlackBerry

More information

WEB APPLICATION DEVELOPMENT. UNIT I J2EE Platform 9

WEB APPLICATION DEVELOPMENT. UNIT I J2EE Platform 9 UNIT I J2EE Platform 9 Introduction - Enterprise Architecture Styles - J2EE Architecture - Containers - J2EE Technologies - Developing J2EE Applications - Naming and directory services - Using JNDI - JNDI

More information

Instrumentation Software Profiling

Instrumentation Software Profiling Instrumentation Software Profiling Software Profiling Instrumentation of a program so that data related to runtime performance (e.g execution time, memory usage) is gathered for one or more pieces of the

More information

Penetration from application down to OS

Penetration from application down to OS April 8, 2009 Penetration from application down to OS Getting OS access using IBM Websphere Application Server vulnerabilities Digitаl Security Research Group (DSecRG) Stanislav Svistunovich research@dsecrg.com

More information

Base One's Rich Client Architecture

Base One's Rich Client Architecture Base One's Rich Client Architecture Base One provides a unique approach for developing Internet-enabled applications, combining both efficiency and ease of programming through its "Rich Client" architecture.

More information

Introducing Apache Pivot. Greg Brown, Todd Volkert 6/10/2010

Introducing Apache Pivot. Greg Brown, Todd Volkert 6/10/2010 Introducing Apache Pivot Greg Brown, Todd Volkert 6/10/2010 Speaker Bios Greg Brown Senior Software Architect 15 years experience developing client and server applications in both services and R&D Apache

More information

PDA DRIVEN WAREHOUSE INVENTORY MANAGEMENT SYSTEM Sebastian Albert Master of Science in Technology sebastianpremraj@yahoo.com

PDA DRIVEN WAREHOUSE INVENTORY MANAGEMENT SYSTEM Sebastian Albert Master of Science in Technology sebastianpremraj@yahoo.com PDA DRIVEN WAREHOUSE INVENTORY MANAGEMENT SYSTEM Sebastian Albert Master of Science in Technology sebastianpremraj@yahoo.com Abstract In times of economic slow-down, cutting costs is the major strategy

More information

HOW TO CONFIGURE PASS-THRU PROXY FOR ORACLE APPLICATIONS

HOW TO CONFIGURE PASS-THRU PROXY FOR ORACLE APPLICATIONS HOW TO CONFIGURE PASS-THRU PROXY FOR ORACLE APPLICATIONS Overview of Oracle JInitiator Oracle JInitiator enables users to run Oracle Forms applications using Netscape Navigator or Internet Explorer. It

More information

www.progress.com DEPLOYMENT ARCHITECTURE FOR JAVA ENVIRONMENTS

www.progress.com DEPLOYMENT ARCHITECTURE FOR JAVA ENVIRONMENTS DEPLOYMENT ARCHITECTURE FOR JAVA ENVIRONMENTS TABLE OF CONTENTS Introduction 1 Progress Corticon Product Architecture 1 Deployment Options 2 Invoking Corticon Decision Services 4 Corticon Rule Engine 5

More information

CS 55.17. Developing Web Applications with Java Technologies

CS 55.17. Developing Web Applications with Java Technologies CS 55.17 Developing Web Applications with Java Technologies Class Introduction Instructor: David B. Pearson Email: Dpearson@SantaRosa.edu Yahoo! ID: DavidPearson Website: http://www.santarosa.edu/~dpearson/

More information

Mobile Application Languages XML, Java, J2ME and JavaCard Lesson 04 Java

Mobile Application Languages XML, Java, J2ME and JavaCard Lesson 04 Java Mobile Application Languages XML, Java, J2ME and JavaCard Lesson 04 Java Oxford University Press 2007. All rights reserved. 1 C and C++ C and C++ with in-line-assembly, Visual Basic, and Visual C++ the

More information

AN OVERVIEW OF SERVLET AND JSP TECHNOLOGY

AN OVERVIEW OF SERVLET AND JSP TECHNOLOGY AN OVERVIEW OF SERVLET AND JSP TECHNOLOGY Topics in This Chapter Understanding the role of servlets Building Web pages dynamically Looking at servlet code Evaluating servlets vs. other technologies Understanding

More information

Ch-03 Web Applications

Ch-03 Web Applications Ch-03 Web Applications 1. What is ServletContext? a. ServletContext is an interface that defines a set of methods that helps us to communicate with the servlet container. There is one context per "web

More information

Chapter 4. Architecture. Table of Contents. J2EE Technology Application Servers. Application Models

Chapter 4. Architecture. Table of Contents. J2EE Technology Application Servers. Application Models Table of Contents J2EE Technology Application Servers... 1 ArchitecturalOverview...2 Server Process Interactions... 4 JDBC Support and Connection Pooling... 4 CMPSupport...5 JMSSupport...6 CORBA ORB Support...

More information