Virtual Real-time 3D Object Sharing for Supporting Distance Education and Training Hiroko Suzuki Faculty of Computer and Information Science, Hosei University,

Slides:



Advertisements
Similar presentations
Message Passing Vs Distributed Objects
Advertisements

TSpaces Services Suite: Automating the Development and Management of Web Services Presenter: Kevin McCurley IBM Almaden Research Center Contact: Marcus.
What is RMI? Remote Method Invocation –A true distributed computing application interface for Java, written to provide easy access to objects existing.
RMI Varun SainiYing Chen. What is RMI? RMI is the action of invoking a method of a remote interface on a remote object. It is used to develop applications.
15-May-15 RMI Remote Method Invocation. 2 “The network is the computer” Consider the following program organization: If the network is the computer, we.
Remote Method Invocation in Java Bennie Lewis EEL 6897.
Advanced Programming Rabie A. Ramadan Lecture 4. A Simple Use of Java Remote Method Invocation (RMI) 2.
Java Remote Object Invocation (RMI) Overview of RMI Java RMI allowed programmer to execute remote function class using the same semantics as local functions.
Remote Object Invocation Tran, Van Hoai Department of Systems & Networking Faculty of Computer Science & Engineering HCMC University of Technology.
Company LOGO Remote Method Invocation Georgi Cholakov, Emil Doychev, University of Plovdiv “Paisii.
Remote Method Invocation Chin-Chih Chang. Java Remote Object Invocation In Java, the object is serialized before being passed as a parameter to an RMI.
DISTRIBUTED FILE SYSTEM USING RMI
EEC-681/781 Distributed Computing Systems Lecture 5 Wenbing Zhao Department of Electrical and Computer Engineering Cleveland State University
Lecture 23: Software Architectures
CSE331: Introduction to Networks and Security Lecture 11 Fall 2002.
Introduction to Remote Method Invocation (RMI)
Java Remote Object Invocation (RMI) Overview of RMI Java RMI allowed programmer to execute remote function class using the same semantics as local functions.
CSCE 515: Computer Network Programming Chin-Tser Huang University of South Carolina.
CECS 474 Computer Network Interoperability Notes for Douglas E. Comer, Computer Networks and Internets (5 th Edition) Tracy Bradley Maples, Ph.D. Computer.
Principles of Computer Programming (using Java) Review Haidong Xue Summer 2011, at GSU.
1 Java Programming II Java Network II (Distributed Objects in Java)
CS 584 Lecture 18 l Assignment » Glenda assignment extended to the Java RMI Deadline » No Java RMI Assignment l Test » Friday, Saturday, Monday.
+ A Short Java RMI Tutorial Usman Saleem
Presentation: RMI Continued 2 Using The Registry & Callbacks.
J2EE Overview ver 1.0Page 1 © Wipro Technologies Talent Transformation J2EE Overview.
LAB 1CSIS04021 Briefing on Assignment One & RMI Programming February 13, 2007.
1 Some initial Design suggestions… Getting started… where to begin? Find out whether your design architecture will work… as soon as possible. If you need.
Java RMI: Remote Method Invocation January 2000 Nancy McCracken Syracuse University.
Spring/2002 Distributed Software Engineering C:\unocourses\4350\slides\DefiningThreads 1 RMI.
Remote Method Invocation onlineTraining/rmi/RMI.html.
RMI Continued IS Outline  Review of RMI  Programming example.
RMI remote method invocation. Traditional network programming The client program sends data to the server in some intermediary format and the server has.
RMI Remote Method Invocation Distributed Object-based System and RPC Together 2-Jun-16.
Presentation: RMI Continued 2 Using The Registry & Callbacks.
Java Remote Object Invocation (RMI) Overview of RMI Java RMI allowed programmer to execute remote function class using the same semantics as local functions.
 Remote Method Invocation  A true distributed computing application interface for Java, written to provide easy access to objects existing on remote.
Liang, Introduction to Java Programming, Seventh Edition, (c) 2009 Pearson Education, Inc. All rights reserved Chapter 43 Remote Method Invocation.
Resource Manager for Distance Education Systems Goran Kimovski Vladimir Trajkovik Danco Davcev Faculty of Electrical Engineering and Computer Science,
Fall 2007cs4251 Distributed Computing Umar Kalim Dept. of Communication Systems Engineering 17/10/2007.
Li Tak Sing COMPS311F. RMI callbacks In previous example, only the client can initiate a communication with the server. The server can only response to.
JAVA Programming “When you are willing to make sacrifices for a great cause, you will never be alone.” Instructor: รัฐภูมิ เถื่อนถนอม
Remote Procedure Calls CS587x Lecture Department of Computer Science Iowa State University.
Java Remote Method Invocation (RMI) Overview of RMI Java RMI allowed programmer to execute remote function class using the same semantics as local functions.
Remote Method Invocation Instructors: Fu-Chiung Cheng ( 鄭福炯 ) Associate Professor Computer Science & Engineering Tatung University.
Lorenz: Visitor Beans: An Aspect-Oriented Pattern Aspect-oriented pattern: describes a solution to a tangling problem in a particular context.
Presentation: RMI Continued 2 Using The Registry & Callbacks.
 Java RMI Distributed Systems IT332. Outline  Introduction to RMI  RMI Architecture  RMI Programming and a Sample Example:  Server-Side RMI programming.
RMI Example. Compilation: /home2/fccheng/temp/RMI2> javac MyObject.java /home2/fccheng/temp/RMI2> javac RemoteServer.java /home2/fccheng/temp/RMI2> javac.
Florida State UniversityCOP Advanced Unix Programming Remote Method Invocation /rmi/index.html.
Remote Method Invocation A Client Server Approach.
UMBC Distributed Computing with Objects RMI/Corba CMSC 432 Shon Vick.
Remote Method Invocation RMI architecture stubs and skeletons for remote services RMI server and client in Java Creating an RMI Application step-by- step.
Java RMI. RMI Any object whose methods can be invoked from another Java VM is called a remote object.
1 Lecture 15 Remote Method Invocation Instructors: Fu-Chiung Cheng ( 鄭福炯 ) Associate Professor Computer Science & Engineering Tatung Institute of Technology.
Distributed programming in Java Faculty:Nguyen Ngoc Tu Session 5 - RMI.
Netprog Java RMI1 Remote Method Invocation.
Using RMI The Example of A Remote Calculator 1. Parts of A Working RMI System A working RMI system is composed of several parts. –Interface definitions.
RMI1 Remote Method Invocation Adapted from “Core Java 2” by Cay Horstmann.
Liang, Introduction to Java Programming, Fifth Edition, (c) 2005 Pearson Education, Inc. All rights reserved Chapter 29 Remote Method.
January 26, Ann Wollrath Copyright 1999 Sun Microsystems, Inc., all rights reserved. Java ™ RMI Overview Ann Wollrath Senior Staff Engineer Sun Microsystems,
Electronic Commerce Java (1)
Remote Method Invocation
Java RMI (more) CS-328 Internet Programming.
Chapter 40 Remote Method Invocation
Chapter 46 Remote Method Invocation
Chapter 46 Remote Method Invocation
Java Remote Method Invocation
Calypso Service Architecture
Java Chapter 5 (Estifanos Tilahun Mihret--Tech with Estif)
Presentation transcript:

Virtual Real-time 3D Object Sharing for Supporting Distance Education and Training Hiroko Suzuki Faculty of Computer and Information Science, Hosei University,

Presentation Outline Objectives System Design Ideas Implementations –Communications –Rendering Discussions of Implementation Results Conclusions

Objectives Supporting distance education Training of younger/junior designers

System Design Ideas (1) What is this application? It allows group participants to share:  working space  3D objects  manipulations on the 3D objects in real-time such as moving, scaling, generating,…

System Design Ideas (2) Communication style  Server-Client architecture How to avoid the bottleneck network problem  Reduce the amount of transmission data whole of 3D object data action event, object ID, transformation data,…

System Design Ideas (3) How to avoid the collision problem  Action collision equal-right policy supervisor or tutor oriented policy

User Interface B A CD E Manipulation spaceWorking space

Implementations (1) Server functionality Member Management RMI Server Functions Object Management Database Client functionality User Interface Local Data Management RMI Client Functions Rendering Database

Implementations (2) Communication tool  Java RMI technology simplify program avoid unnecessary data communications multi-thread communication callback function

public class ServerImpl extends UnicastRemoteObject implements ServerInt{ …… public static void main( String[] args ) { System.setSecurityManager( new RMISecurityManager () ); try{ ServerImpl obj = new ServerImpl(); Naming.rebind( "Server", obj ); } catch ( Exception e ) { } } …… } public class ClientImpl extends UnicastRemoteObject implements ClientInterface { …… public void connection ( int flag ) { switch( flag ){ case 0 : ServerInt server = (ServerInt) Naming.lookup( "rmi://" + addr + :1099/Server"); break; case 1 : server.addMember( user, client ); break; case 2 : server.shareMember( user_name, share, parameters ); break; case 3 : server.addObject( share, user, obj.wfr.pf.par ); break: …… } }} A fragment code for communications

Implementations (3) Rendering tool  Java 3D API simple and high-level programming model adding objects, lighting up, view, adding texture enabling interaction with objects… control the behavior of 3D objects

Discussions of Implementation Results Transmission time versus the number of objects Rendering Time versus the number of objects Environment: 1 RMI server and 2 client machines on same LAN

Conclusions Virtual real-time 3D object sharing enables collaborative group activities effectively I will present this paper at the international conference on AINA2004.