
Syracuse University SURFACE Electrical Engineering and Computer Science College of Engineering and Computer Science 2004 Building Desktop Applications with Web Service in a Message- based MVC Paradigm”, to appear Xiaohong Qiu Syracuse University, Electrical Engineering and Computer Science Department ; Indiana University, Community Grid Labs, [email protected] Follow this and additional works at: https://surface.syr.edu/eecs Part of the Computer Sciences Commons Recommended Citation Qiu, Xiaohong, "Building Desktop Applications with Web Service in a Message-based MVC Paradigm”, to appear" (2004). Electrical Engineering and Computer Science. 63. https://surface.syr.edu/eecs/63 This Article is brought to you for free and open access by the College of Engineering and Computer Science at SURFACE. It has been accepted for inclusion in Electrical Engineering and Computer Science by an authorized administrator of SURFACE. For more information, please contact [email protected]. Building Desktop Applications with Web Services in a Message-based MVC Paradigm Xiaohong Qiu1, 2 1EECS Department, Syracuse University 2Community Grids Lab, Indiana University 501 Morton N. St, Suite 224, Bloomington, IN 47404, U.S.A [email protected] Abstract interface partially specified by the portlet Over the past decade, classic client side standard. applications with Model-View-Controller (MVC) architecture haven’t changed much but become We have a general approach of building Web more complex. In this paper, we present an applications centered around messages. The key approach of building desktop applications with challenge is to exploit this concept in design and Web Services in an explicit message-based MVC implementation to provide scalable interoperable paradigm. By integrating with our systems. Specifically we investigate a universal publish/subscribe messaging middleware, it modular design with messaging linkage service makes SVG browser (a Microsoft PowerPoint model that converge desktop applications, Web like client application) with Web Service style applications, and Internet collaboration to interfaces universally accessible from different achieve reusability, scalability, interoperability client platforms ─ Windows, Linux, MacOS, and pervasive accessibility. We have PalmOS and other customized ones. systematically carried out our work by proposing Performance data suggests that this scheme of an “explicit message-based MVC” paradigm building application around messages is a (MMVC) as the general architecture for Web practical architecture for the next generation applications [2]; presenting an approach of Web application client. building “collaboration as a Web Service” by decomposition of MMVC in a three-stage Keywords pipeline architecture for three collaboration types Message, MVC, Web service, SVG and ─ monolithic, thin client and interactive client publish/subscribe [3]; bridging the gap between desktop and Web application by leveraging the existing desktop 1. Introduction application Web Services are becoming an increasingly with a Web R F I O ce Facing our Port important feature of Internet and Grid systems. service Res Web Service They support a loosely coupled service oriented interface Application or Model architecture that builds on previous distributed rt through User Facing Po object architectures like CORBA, Java RMI, and “MMVC in a Input port Output port WSRP COM to provide scalable interoperable systems. publish/subscr Portal and Aggregate WS User Facing fragments JSR168 The broad applicability of this approach includes ibe scheme”, Por tlets enterprise software, e-Science and e-Business. which is the View Correspondingly there are a growing number of focus of this View powerful tools that are available for building, paper; maintaining and accessing Web Service-based identifying phone systems. These tools include portals that allow desktop handheld some key Figure1 Portlet Approach to Web Services and user frontends to Web Services. This model for issues that their user interfaces user interaction has new standards like portlets influence message-based Web applications with with WSRP (Web Services for Remote Portlets) a detailed analysis of performance in a and the Java Specification Request JSR168 presentational style application experiment with supporting lightweight interfaces to the backend rich Web content and high client interactivity [4]. resources. This architecture shown in fig.1 Elsewhere we discuss SIMD and MIMD implements the Model-View-Controller or MVC collaboration as the general architecture of [1] architecture with a clean message based “collaboration as a Web service” model [5]. 1 Control W3C Document Object Model (DOM) [8] defines “a platform- and language-neutral interface that allows programs and scripts to dynamically access and update the content, View Model Display structure and style of documents” and a generic 2a Conventional MVC paradigm event model, which implemented by version 5 browsers (e.g. Mozilla and Internet Explorer). t Control Su en b v sc I e ri U b DOM can reflect structure of Meta data h e U lis I b g ev u in Pu e P er b nt d li abstracted by XML schema. DOM also allows en sh e r re ib n cr de s ri b ng Model any language bindings; therefore it can be used Su View by variety of applications. Scalable Vector 2b Explicit message-based Publish/Subscribe MVC model Graphics (SVG) [9], as defined by W3C, is “a Figure 2 MVC in Publish/Subscribe language for describing two-dimensional The general MVC approach of fig. 2a) is a well- graphics and graphical applications in XML”. established paradigm, which has been used for SVG is an example of DOM application. many years. As we describe later in more detail, Compared with HTML content, SVG has richer traditional MVC applications employ method- web graphics flavor with additional features based interactions between the components with inherited from XML and DOM which makes it a this approach giving the needed high unique technology that has been widely used by performance for interactive applications. In this graphical authoring tools, GIS system and data paper, we explore “explicit message-based visualization. Apache Batik SVG browser is a MVC” (MMVC) ─ a different approach with stand-alone client application, which is written in MVC being used systematically but with Java apart from a few native classes; there are message based interactions (shown in fig. 2b), also customized SVG implementations for between the model and the view components. handheld devices. We suggest that modern computers and networks are fast enough that this approach will give 3 Message-based MVC and SVG adequate performance for desktop applications 3.1 Introduction such as those in the Microsoft Office Suite. We We choose an existing system ─ Batik SVG embody this idea as the “MVC rule of the browser [7], and modify its architecture from a Millisecond” [6]. This asserts that message based method-based desktop application to a message- interactions between “nearby” components have based one. This has several implications. The an intrinsic delay of a few milliseconds and so message-based architecture allows one to build this linkage approach is possible whenever such desktop applications as web services and so a delay is acceptable. Simple non-optimized Java unify traditional desktop and web service plus messaging gives such a delay whenever the portal approaches. This unification makes components are either on the same computer or collaborative applications straightforward to on machines with a local area connection. build as described in section 4. Further the separation of model and view makes it easier to In this paper, we explore this area and make two support diverse client devices and operating contributions. Firstly we look at existing systems. This could be significant with the method-based MVC application – the Batik SVG growing interest in PDA and Linux clients. Note browser from Apache [7] – and convert it into a our strategy allows “long distance” linkage message-based approach as contrasted in figures between the “model” (business logic of 2a) and 2b). We discuss some of the issues that application) and view as well as their came up in this conversion. Secondly we use this cooperation on local networks as within a message-based version of SVG to explore the campus. However transcontinental latencies are overhead in the message-based approach. We hundreds to thousands of milliseconds and so find it represents about a 20% overhead for this cannot be used for interactive experience. As “model’ and “view” distributed in different sites we describe later, we will use the same on Indiana University’s Bloomington campus messaging infrastructure that has been used to and the user does not distinguish the interactive support large Grid applications. This unification experience in switching from method to of Grid and client applications into a single message-based interactions. message-based architecture is key to our paper. We can use our approach for interactive 2. Technology Background: DOM and SVG applications when model and view are nearby 2 and allow collaboration and traditional Web separately developed and provides a variety of portal use for remote access. publish/subscribe models including peer-to-peer Our first goal is a complete analysis of the and Java Message Service (JMS) emulation. Our structure and interaction between components of use for collaborative SVG would exploit these a real client application. Batik SVG browser is latter Grid messaging capabilities
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages5 Page
-
File Size-