Presentation is loading. Please wait.

Presentation is loading. Please wait.

Current Trends in Network- Based Application Developments Bill Chu Department of Software and Information Systems UNC Charlotte.

Similar presentations


Presentation on theme: "Current Trends in Network- Based Application Developments Bill Chu Department of Software and Information Systems UNC Charlotte."— Presentation transcript:

1 Current Trends in Network- Based Application Developments Bill Chu Department of Software and Information Systems UNC Charlotte

2 © Bei-Tseng Chu March 2002 Microsoft.Net A framework for network-based application development Provides a middleware for web-services to communicate with each other Specifically designed to address the following problems Lack of consistent access Proprietary data formats Isolation of information

3 © Bei-Tseng Chu March 2002.Net components Cross language interoperability Allows components written in different programming languages to work with each other Use Inheritance Self-describing components Common Type System Application domain Unit of processing and security policy enforcement.NET My Service Streamline the use of authentication information

4 © Bei-Tseng Chu March 2002 Example of cross language interoperability: Box Class in C# Public class Box{ Public Double Length, Width, Height; Public Box () { Length=0;Width=0; Height=0; print();} public void print() { System.Console.WriteLine(“Length=“+Length.ToString()+”Width=“Width.ToString() +”Height=“Height.ToString());} } VB.NET Simple Inheritance Public Class Car : Inherits Box Private iAxils as Integer Property Axils as Integer Get Axils=iAxils End Get Set iAxils = Value End Set End Property End Class

5 © Bei-Tseng Chu March 2002.net: Microsoft Intermediate Language (MSIL) All.net applications are compiled into this language Preserves metadata about the components Verified for type safety JIT compiled into native assembly language for execution

6 © Bei-Tseng Chu March 2002 ASP.NET Solve the following problems of classic ASP Interpreted ASP/VB scripts Lack of maintainability as all components are contained in one file State Management Use of COM objects/lack of interoperability

7 © Bei-Tseng Chu March 2002.NET My Service User store identity information in the Passport. Web services can cooperate and share information under the control of information owner Routing: specify the routing path of a SOAP message and also what part of the message is intended for which receiver Referral: how a SOAP intermediary can modify the routing Security: SOAP does not address message security. Credentials: authenticate the origin of the message Integrity: verification of message integrity (digital signature) Confidentiality: encryption of SOAP messages Microsoft Passport Provide a single Internet identity accepted by many sites User authentication by sites can be handled indirectly through MS Passport server system A single passport ID and password can get one into multiple sites

8 © Bei-Tseng Chu March 2002 XML-RPC: forerunner to SOAP XML formatted message Using HTTP Post to transmit the message Enable any web service with CGI interface to accept the message Universal acceptance, even through firewalls! Many implementations: www.xmlrpc.com

9 © Bei-Tseng Chu March 2002 An example XML-RPC Request POST /RPC2 HTTP/1.0 User-Agent: Frontier/5.1.2 (WinNT) Host: someserver.com Content-Type: text/xml Content-length: 181 lookup.getStateFromAreaCode 512

10 © Bei-Tseng Chu March 2002 An example of Response to the Request HTTP/1.1 200 OK Connection: close Content-length: 158 Content-Type: text/html Date: Fri, 17 Jan 2001 11:50:13 GMT Server: UserLand Frontier/5.1.2-WinNT Texas s

11 © Bei-Tseng Chu March 2002 SOAP (Simple Object Access Protocol) SOAP defines XML based format for sending messages Envelope Data encoding RPC convention Unlike XML-RPC, SOAP tries to be neutral to transportation protocol HTTP SMTP Java Message Service.Net also uses SOAP as the RPC mechanism

12 © Bei-Tseng Chu March 2002 A generalized SOAP architecture HTTP SMTP FTP JMS Others SOAP Envelope SOAP Server Application

13 © Bei-Tseng Chu March 2002 Deployment Descriptor (APPACHE) http://xml.apache.org/xml-soap/deployment <isd:provider type=“java” scope=“Application” methods=‘getPubCount getModDate getByCode”> org.apache.soap.server.DOMFaultListener

14 © Bei-Tseng Chu March 2002 Java methods for the server package com.lanw.soapsrvr; Import java.util.*; Import org.w3c.dom.Element; Public class PubsServer { //…. Public Element getByCode( String code) throws SOAPException { //…. } /…. }

15 © Bei-Tseng Chu March 2002 Client using the service //…. URL url = new URL(“http”, “www.soap.uncc.edu”, 8080, “soap/servlet/rpcrouter”); Call call = new Call(); call.setMethodName(“getByCode”); Vector params = new Vector(); Params.addElement(new Parameter(“param”,String.class,”1234”, Constants.NS_URI_SOAP_ENC)); call. setParams(params); Try { resp=call.invoke(url, “ “); } catch (SOAPException e) { //… }

16 © Bei-Tseng Chu March 2002 Universal Description, Discovery, and Integration (UDDI) Directory for web services XML formatted information for Contact points “white page” Industry classification “yellow pages” Web service discovery “green page”, technical information UDDI registry

17 © Bei-Tseng Chu March 2002 Web Service Description Language (WSDL) Defines a web/network service End point Accepts messages Key elements of a web service Documentation – English description Types – data type (e.g. structure) Message – message format PortType – Java class and their operations Binding – protocols for message or portType Service – Specifies web addresses WSDL description may be automatically generated based on Java class definitions


Download ppt "Current Trends in Network- Based Application Developments Bill Chu Department of Software and Information Systems UNC Charlotte."

Similar presentations


Ads by Google