Thông tin tài liệu:
This chapter presents the following content: Start the registry server, rmiregistry; start the object server; start the client; the client makes a request. Inviting you to refer.
Nội dung trích xuất từ tài liệu:
Bài giảng Lập trình mạng nâng cao: Java Remote Method Invocation - Nguyễn Xuân Vinh TRƯỜNGĐẠIHỌCNÔNGLÂMTP.HCMGV:NGUYỄNXUÂNVINH KHOACÔNGNGHỆTHÔNGTIN JavaMÔN:LẬPTRÌNHMẠNG2 Remote Method Invocation15/01/16 Presenter:NguyễnXuânVinh InformationTechnologyFaculty/26 NongLamUniversity1 TRƯỜNGĐẠIHỌCNÔNGLÂMTP.HCM KHOACÔNGNGHỆTHÔNGTIN “The network is the computer”GV:NGUYỄNXUÂNVINH Considerthefollowingprogramorganization: method callMÔN:LẬPTRÌNHMẠNG2 SomeClass AnotherClass returned object computer1 computer2 Ifthenetworkisthecomputer,weoughttobeabletoputthetwo classesondifferentcomputers15/01/16/262 TRƯỜNGĐẠIHỌCNÔNGLÂMTP.HCM KHOACÔNGNGHỆTHÔNGTIN Parameter marshallingGV:NGUYỄNXUÂNVINHMÔN:LẬPTRÌNHMẠNG215/01/16/263 TRƯỜNGĐẠIHỌCNÔNGLÂMTP.HCM KHOACÔNGNGHỆTHÔNGTIN Calling the remote getDescription methodGV:NGUYỄNXUÂNVINHMÔN:LẬPTRÌNHMẠNG215/01/16/264 TRƯỜNGĐẠIHỌCNÔNGLÂMTP.HCM KHOACÔNGNGHỆTHÔNGTIN RMI and other technologiesGV:NGUYỄNXUÂNVINH CORBA(CommonObjectRequestBrokerArchitecture)was usedforalongtime CORBAsupportsobjecttransmissionbetweenvirtuallyany languages ObjectshavetobedescribedinIDL(InterfaceDefinitionMÔN:LẬPTRÌNHMẠNG2 Language),whichlooksalotlikeC++datadefinitions CORBAiscomplexandflaky CORBAhasfallenoutoffavor MicrosoftsupportedCORBA,thenCOM,now.NET RMIispurelyJavaspecific JavatoJavacommunicationsonly Asaresult,RMIismuchsimplerthanCORBA15/01/16/265 TRƯỜNGĐẠIHỌCNÔNGLÂMTP.HCM KHOACÔNGNGHỆTHÔNGTIN What is needed for RMIGV:NGUYỄNXUÂNVINH JavamakesRMI(RemoteMethodInvocation)fairlyeasy,but therearesomeextrasteps Tosendamessagetoaremote“serverobject,” The“clientobject”hastofindtheobject DothisbylookingitupinaregistryMÔN:LẬPTRÌNHMẠNG2 Theclientobjectthenhastomarshaltheparameters(prepare themfortransmission) JavarequiresSerializableparameters Theserverobjecthastounmarshalitsparameters,doits computation,andmarshalitsresponse Theclientobjecthastounmarshaltheresponse Muchofthisisdoneforyoubyspecialsoftware15/01/16/266 TRƯỜNGĐẠIHỌCNÔNGLÂMTP.HCM KHOACÔNGNGHỆTHÔNGTIN TerminologyGV:NGUYỄNXUÂNVINH Aremoteobjectisanobjectonanothercomputer Theclientobjectistheobjectmakingtherequest(sendinga messagetotheotherobject) TheserverobjectistheobjectreceivingtherequestMÔN:LẬPTRÌNHMẠNG2 Asusual,“client”and“server”caneasilytraderoles(eachcan makerequestsoftheother) Thermiregistryisaspecialserverthatlooksupobjectsbyname Hopefully,thenameisunique! rmicisaspecialcompilerforcreatingstub(client)andskeleton (server)classes15/01/16/267 TRƯỜNGĐẠIHỌCNÔNGLÂMTP.HCM KHOACÔNGNGHỆTHÔNGTIN ProcessesGV:NGUYỄNXUÂNVINH ForRMI,youneedtoberunningthreeprocesses TheClient ...