Resource Management ↔ Application Logic ↔ Presentation

Total Page:16

File Type:pdf, Size:1020Kb

Resource Management ↔ Application Logic ↔ Presentation Web Services Introduction to Service-Oriented Computing Layers: Resource management ↔ application logic ↔ presentation (↔ client) Distributed Systems: Laufen zeitgleich auf mehreren computern und kommunizieren über Netzwerk Austausch erfolgt über jeweiligen application logic layer. Oft schwierig wegen Verwendung unterschiedlicher Betriebssysteme, Progammiersprachen, etc. Lösung: Service-Oriented Computing, d.h. Kommunikation über eigens eingerichteten Service. Vergleichbar mit facade software pattern. Wichtige Begriffe (Web) Services: Eigenständige Module, welche auf XML-Basis über ein Netzwerk aufgefunden, beschrieben, programmiert, orchestriert und veröffentlicht werden können. Service providers: Organisationen, welche Implementierungen, Beschreibungen und Support für einen Service anbieten. Service clients: Nutzer und Organisationen, welche Services Nutzen. Service aggregators: Organisationen, welche mehrere Services zu einem neuen vereinen. Service-oriented architecture (SOA): Art, software so zu designen, dass Services, über veröffentlichte und auffindbare interfaces, angeboten werden. Characteristika von Web Services (WS) Erfüllung einer einzigen Aufgabe als abgeschlossenes Modul (zB Input PLZ, Output Wetter) Teilen eines formalen Vertrags, welcher Informationsaustausch klar regelt Abstrahierung der darunterliegenden Programmlogik, diese bleibt verborgen Schwache Koppelung: Service interface unabhängig von Programmiersprache, Plattform etc.. Kann leicht ausgetauscht werden. Wiederverwendbarkeit durch andere Applikationen Dynamische Einbindbarkeit und Auffindbarkeit durch andere Applikationen Beschrieben durch standard description language (WSDL/WADL), functional- und non- functional requirements Verbreitet über das Internet durch bestehende Protokolle wie HTTP Funktionale Charakteristika geben genauere Auskunft über das Verhalten des Services, z.B. wie er aufgerufen oder lokalisiert wird, wie die Struktur des Nachrichtenaustausches ist. Frage des Systemdesings. Nicht-Funktionale Charakteristika beziehen sich auf Qualitätsindikatoren, wie Antwortzeit, Sicherheit, Authentifikation, etc.. Frage der Systemarchitektur. SOA weist im Vergleich zu Java geringe Kopplung auf, etwa wegen asynchroner Kommunikation, unterschiedlichen darunterliegenden Plattformen, dynamisch gebundenen Services, Unabhängigkeit von Betriebssystem und Programmiersprache1 Typen von Web Services SOAP/WSDL basiert: Service interface exponiert durch WSDL Dokumente, Nachrichtenaustausch über SOAP, client code kann über WSDL Beschreibung generiert werden. Ist mittlerweile fast schon überholt. REST (Respresentational State Transfer): Einfache Kommunikation mit Web Services, 1 Vollständige Gegenüberstellung: siehe WebServices-Vortrag-2016.pdf F 13 Resourcen durch URIs identifiziert, deren Status über HTTP durch GET, PORT, PUT, DELETE manipuliert wird. Sehr populär. Anwendungsgebiete von (Web) Services liegen zwischen Organisationen/Geschäftspartnern, und auch innerhalb einer Organisation, z.B. als Schnittstellen zwischen veralteten Systemen und neuen ERP-Systemen Vorteile von Web Services Interoperabel: Verbindung unterschiedlicher Systeme, Nutzung üblicher Standards Ökonomisch: Keine Installation, Wiederverwendbarkeit von Komponenten Automatisch: Kein menschliches Zutun nötig Zugänglich: Zugang zu veralteten Systemen und internen Anwendungen Verfügbar: Unabhängig von Endgerät, Zeit und Ort Lösung von Integrationsproblemen; Vervollständigung automatisierter Infrastruktur Service Oriented Architectures ...sind ein abstraktes Pattern, welches auf viele Web Services zutrifft SOA ist schwach gekoppelt mit business functions als geteilte und wiederverwendbare services Rollen: Service(Rg), -Requestor und -Provider Publish: Bereitstellung einer Beschreibung Find: Abrufen der Beschreibung Bind: Requestor stellt Interaktion mit Service her, indem die „binding details“ in der Beschreibung angewendet werden (Lokation, Kontaktierung, etc.) Rollen aus geschäftlicher bzw. technischer Sicht Service-Provider: Owner eines Services bzw. Plattform, welche den Service bereitstellt Service-Requestor: Geschäft bzw. Applikation Service-Registry: Durchsuchbares Register von Service-Beschreibungen SOA-Layers: Operational Systems (DBs, ERP, …) → Komponentenbasierte Servicerealisationen → Infrastruktur Services → Business Services → Business Processes → Business Domain Standards SOAP (W3C) – Nachrichtenaustauschformat. „Simple Object Access Protocol“ WSDL (W3C) – Zur Beschreibung was zwischen Provider und Requestor ausgetauscht wird. „Web Service Description Language“ UDDI (OASIS) – Basis für ein Datenverzeichnis Service. „Universal Description Discovery and Integration“ SOAP Andere Protokolle verlangten gewisse Implementierungsvoraussetzungen von Sender/Empfänger. Besteht aus Envelope: Beschreibt Nachrichteninhalt und Zugriff darauf Encoding Rules: bzgl. anwendungsdefinierter Datentypen Conventions: Für die Darstellung von Prozeduraufrufen und -antworten Beschreibt wie eine Nachricht formatiert ist, aber nicht wie sie bereitgestellt wird SOAP-Nachricht muss in Transport-Protokoll (meist HTTP) eingebettet sein SOAP transferiert Nachrichten zwischen Serviceinstanzen, die durch WSDL beschrieben werden Fundamentale WS-Nachrichtenaustauschpatterns: Strukur einer SOAP-Nachricht: Envelope ← (Header← Header Entries) (optional) ← Body ← Body Entries Nachrichten werden entlang SOAP-Nodes (transmit, receive, process, relay) geleitet. SOAP-Kommunikationsmodell unterstützt (2*2=)4 Styles 2 Kommunikationsstyles: Remote Procedure Calls (RPC) und Document Exchange (nur Nachrichten) 2 Encodingstyles: Encoded (Datentypen verschlüsselt in Nachricht) und literal (verweist auf XML-Schema) Relevant sind jedoch nur document/literal und RPC/literal RPC-Style Web Services erscheinen für client als remote Objekt. Requests werden durch Methodenaufrufe mit bestimmten Parametern ausgeführt => Starke Kopplung durch hardwireing <env:body><m:GetPrice><product-id>111<... Document-Style Web Services sind nachrichtengetrieben. Request als Document von Client an Service, Antwortnachricht erfolgt synchron oder asynchron <env:Body><p:PurchaseOrder orderDate="2010-05- 06" xmlns:p="http://www.supply.com/order"> <p:from>... Error Handling in SOAP über env:Fault Element mit Kindern <env:Code> <env:Reason> <env:Detail>. Bei Error wird env:Fault in Body retourniert. SOAP & HTTP: Client sendet POST mit SOAP Nachricht → Service Listener empfängt → Service Proxy decodiert Nachricht → Anwendung erhält function call, arbeitet ab, returned Wert → Service Proxy codiert Nachricht → Service listener sendet Antwort → Client erhält HTTP mit SOAP Antwort Vorteile von SOAP: Einfach (XML), plattformunabhängig, firewallfreundlich, Nutzung offener Standards, interoperabel (XML ist programmiersprachenabhängig), akzeptiert, beständig Nachteile von SOAP: Geringe Performance, stateless (requester muss sich immer neu „anmelden“), keine Serialisierung nach Referenz (Objekte nicht synchronisiert mit nicht Lokalen) WSDL Web Service Description Language ist ein XML-basiertes Spezifikationsschema. Es beschreibt die Schnittstelle eines Web Services, dient als Vertrag zwischen provider und client und beschreibt weiters was ein Service macht, wo er zu finden ist und wie er aufgerufen werden kann WSDL gliedert sich in abstrakten (Interface) und konkreten (Implementierung) Teil. Das Interface beschreibt die generelle Struktur, Operationen, Parameter und abstrakte Datentypen des WS. Types – messages – operations – port types. Die Implementierung bindet das Interface an konkrete Netzwerkadresse, Protokoll und Datenstrukturen. Ein Client kann eine Bindung zu einer Implementierung herstellen. Bindings – services and ports. <operation> Signaturen und I/O messages in <message>. Bestehend aus <input> <output> und <fault> Nachrichten. <binding><soap:binding>Definiert SOAP style (RPC/Document) und SOAP Protokoll</...> <operation>Definiert konkrete Operationen für referenzierten Port. Zudem die Kodierung (literal/encoded). Default: literal.</operation></binding> <service>Definiert ports des WS<port>Referenziert existierendes binding</port> <soap:address>URL des Services<... Beispiel F 49ff Messaging Patterns One-way: Sender –SOAP request→ Empfänger <operation><input></... Request/response: Sender –SOAP request→ Empfänger Sender ←SOAP response– Empfänger <operation><input><output></... Notifications: Sender ←SOAP request– Empfänger <operation><output></... Solicit/response: Sender ←SOAP request– Empfänger Sender –SOAP response→ Empfänger <operation><output><input></... UDDI Universal Description Discovery and Integration. „Gelbe Seiten für Web Services“. XML-Basiert. 3 Hauptsäulen: white pages – Adresse, Kontakt und bekannte Identifier yellow pages – Industrielle Klassifikation green pages – Metainformation über Services Wurde nie richtig populär, weil es sehr limitiert ist (keine komplexen Queries), rein technischen Fokus hat (keine Integration von Produktdaten, etc.), zu generisch ist und zu viele Fun-Einträge hat. Intraorganisational trotzdem noch brauchbar. (ERP ↔ EDI ↔ …). Java API for XML Web Services (JAX-WS) Einsatz von POJOs mit speziellen Annotationen (@WebService, @SOAPBinding, @WebMethod, @WebParam, @WebResult, @OneWay) XML-Verarbeitung durch JAX-B (Java Architecture for XML Binding) Marshalling: Java-Objekt → XML; Unmarshalling: XML → Java-Objekt Anwendungsentwicklungsvarianten Contract First: WSDL to Java. Besser für komplexe Web Service Projekte mit vielen Stakeholdern/Partnern. Tool: wsimport Contract Last: Java to WSDL. Besser geeignet für kleinere
Recommended publications
  • Asynchronous Web Requests As Service
    Asynchronous Web Requests As Service Manual and dodecahedral Royal ratified almost half-yearly, though Maxim licensing his refutation Wainwrightredates. Wallache paralysing stared closely leadenly? and tyrannises Godfree often her Pete. stages inoffensively when psycholinguistic Many kinds of business processes have these features. Professional Services Engineer at elastic. About Attaching Policies to Callback Clients. The new mapper, as a site is asynchronous web requests service as mechanisms for? Web Service improve response? When using the synchronous execution mode, the application must wait for the request to confess and clamp the results. Sets DOMReady to luggage and assigns a ready function to settings. An error occurred and moment were unable to loathe your request. There mat be gaps or spaces in between characters. Gaps between programs and add too many more asynchronous result will all asynchronous web service is this example? Scripting on pay page enhances content navigation, but does task change their content that any way. Specify whether the asynchronous as instances in? How google webmaster central time, magento creates an interface at what can add support asynchronous communications at ultra low by travel, service requests as asynchronous web url is an order. To monitor the SOAP messages, insert the software listener between heat flow by the service. Understanding the address the trading application as asynchronous web requests service port types of performance, the operation of hazardous material is a really exist? Younger students have clarity on your free to code execution first, the asynchronous web requests as service? To do surprise you gave use an asynchronous generator that yields bytes.
    [Show full text]
  • Web Services: Usage and Challenges in Mobile Phones (Computers) W3C
    Web Services: Usage and challenges in mobile phones (computers) W3C Seminar - Monday 6 March 2006 - Paris, France Timo Skyttä Director, Web Services Nokia Technology Platforms 1 © 2005 Nokia Topics • Web Services & presentation scope defined • Web Services - business ? ¡Si, habla Web Services! • Challenges in general, and some mobile specific.... • Nokia Web Services • Application Examples 2 © 2005 Nokia The Web and Web Services Web Services connect The Web connects computer applications people to information to each other on a global scale on a global scale (GARTNER, Oct 2005) 3 © 2005 Nokia Two models of mobilising service access Presentation Browser Application Presentation and Service Logic Service Logic HTTP server Scope of this Web Services interfaces presentation Enterprise Service Oriented Application Architecture (SOA) Integration (EAI) 4 © 2005 Nokia Web Services - business ? 5 © 2005 Nokia Why Web Services The deployment of Web Services technology aims to enhance existing services and to create new and innovative services. • Web Services are being widely deployed; Service/Consumer• to facilitate interoperability across runtime different hardware independence and software ! implementations, machine architectures and application programming interfaces (APIs). • to offer near-term benefits by enabling quicker and cheaper integration of existing Interoperabilityservices. ! • to define an environment where applications can be created by combining multiple services in a single workflow (a.k.a. mashups). This will make it easy to adjust Automaticapplication functionality, code because generation services can be added (WSDL or removed + from tools) the ! application workflow. • In addition, interoperability will allow application designers to replace one service implementation with another for technical or business reasons. This vision of Service-Oriented Architectures (SOAs) is rapidly becoming a reality through the standardization and deployment of Web Services technology.
    [Show full text]
  • Attacking AJAX Web Applications Vulns 2.0 for Web 2.0
    Attacking AJAX Web Applications Vulns 2.0 for Web 2.0 Alex Stamos Zane Lackey [email protected] [email protected] Blackhat Japan October 5, 2006 Information Security Partners, LLC iSECPartners.com Information Security Partners, LLC www.isecpartners.com Agenda • Introduction – Who are we? – Why care about AJAX? • How does AJAX change Web Attacks? • AJAX Background and Technologies • Attacks Against AJAX – Discovery and Method Manipulation – XSS – Cross-Site Request Forgery • Security of Popular Frameworks – Microsoft ATLAS – Google GWT –Java DWR • Q&A 2 Information Security Partners, LLC www.isecpartners.com Introduction • Who are we? – Consultants for iSEC Partners – Application security consultants and researchers – Based in San Francisco • Why listen to this talk? – New technologies are making web app security much more complicated • This is obvious to anybody who reads the paper – MySpace – Yahoo – Worming of XSS – Our Goals for what you should walk away with: • Basic understanding of AJAX and different AJAX technologies • Knowledge of how AJAX changes web attacks • In-depth knowledge on XSS and XSRF in AJAX • An opinion on whether you can trust your AJAX framework to “take care of security” 3 Information Security Partners, LLC www.isecpartners.com Shameless Plug Slide • Special Thanks to: – Scott Stender, Jesse Burns, and Brad Hill of iSEC Partners – Amit Klein and Jeremiah Grossman for doing great work in this area – Rich Cannings at Google • Books by iSECer Himanshu Dwivedi – Securing Storage – Hackers’ Challenge 3 • We are
    [Show full text]
  • Chapter 10 Document Object Model and Dynamic HTML
    Chapter 10 Document Object Model and Dynamic HTML The term Dynamic HTML, often abbreviated as DHTML, refers to the technique of making Web pages dynamic by client-side scripting to manipulate the document content and presen- tation. Web pages can be made more lively, dynamic, or interactive by DHTML techniques. With DHTML you can prescribe actions triggered by browser events to make the page more lively and responsive. Such actions may alter the content and appearance of any parts of the page. The changes are fast and e±cient because they are made by the browser without having to network with any servers. Typically the client-side scripting is written in Javascript which is being standardized. Chapter 9 already introduced Javascript and basic techniques for making Web pages dynamic. Contrary to what the name may suggest, DHTML is not a markup language or a software tool. It is a technique to make dynamic Web pages via client-side programming. In the past, DHTML relies on browser/vendor speci¯c features to work. Making such pages work for all browsers requires much e®ort, testing, and unnecessarily long programs. Standardization e®orts at W3C and elsewhere are making it possible to write standard- based DHTML that work for all compliant browsers. Standard-based DHTML involves three aspects: 447 448 CHAPTER 10. DOCUMENT OBJECT MODEL AND DYNAMIC HTML Figure 10.1: DOM Compliant Browser Browser Javascript DOM API XHTML Document 1. Javascript|for cross-browser scripting (Chapter 9) 2. Cascading Style Sheets (CSS)|for style and presentation control (Chapter 6) 3. Document Object Model (DOM)|for a uniform programming interface to access and manipulate the Web page as a document When these three aspects are combined, you get the ability to program changes in Web pages in reaction to user or browser generated events, and therefore to make HTML pages more dynamic.
    [Show full text]
  • The Development of Algorithms for On-Demand Map Editing for Internet and Mobile Users with Gml and Svg
    THE DEVELOPMENT OF ALGORITHMS FOR ON-DEMAND MAP EDITING FOR INTERNET AND MOBILE USERS WITH GML AND SVG Miss. Ida K.L CHEUNG a, , Mr. Geoffrey Y.K. SHEA b a Department of Land Surveying & Geo-Informatics, The Hong Kong Polytechnic University, Hung Hom, Kowloon, Hong Kong, email: [email protected] b Department of Land Surveying & Geo-Informatics, The Hong Kong Polytechnic University, Hung Hom, Kowloon, Hong Kong, email: [email protected] Commission VI, PS WG IV/2 KEY WORDS: Spatial Information Sciences, GIS, Research, Internet, Interoperability ABSTRACT: The widespread availability of the World Wide Web has led to a rapid increase in the amount of data accessing, sharing and disseminating that gives the opportunities for delivering maps over the Internet as well as small mobile devices. In GIS industry, many vendors or companies have produced their own web map products which have their own version, data model and proprietary data formats without standardization. Such problem has long been an issue. Therefore, Geographic Markup Language (GML) was designed to provide solutions. GML is an XML grammar written in XML Schema for the modelling, transport, and storage of geographic information including both spatial and non-spatial properties of geographic features. GML is developed by Open GIS Consortium in order to promote spatial data interoperability and open standard. Since GML is still a newly developed standard, this promising research field provides a standardized method to integrate web-based mapping information in terms of data modelling, spatial data representation mechanism and graphic presentation. As GML is not for data display, SVG is an ideal vector graphic for displaying geographic data.
    [Show full text]
  • UPS Web Services Code Samples
    UPS Web Services Sample Code Documentation Version: 2.00 NOTICE The use, disclosure, reproduction, modification, transfer, or transmittal of this work for any purpose in any form or by any means without the written permission of United Parcel Service is strictly prohibited. © 2010 United Parcel Service of America, Inc. All Rights Reserved. Table of Contents 1. Introduction ................................................................................................................. 3 2. Axis 2-1.4 Sample Code Naming Convention ............................................................ 3 3. JAX- WS 2.1 Sample Code Naming Convention........................................................ 3 4. Net Sample Code Naming Convention ..................................................................... 4 5. Axis 2-1.4 UPS Web Service Sample Code using ANT build.................................... 4 6. Axis 2-1.4 UPS Web Service Sample Code using Eclipse.......................................... 6 7. JAX- WS 2.1 UPS Web Service Sample Code using ANT build ............................. 11 8. Binding for Ship & Freight Ship Web Service JAX- WS 2.1 Web Service Sample Code .................................................................................................................................. 13 9. Void Web Service JAX-WS Sample Code................................................................ 14 10. Net(C#) UPS Web Service Sample Code with Microsoft Visual Studio ............ 14 11. Build UPS WebService Sample Code in Perl ..........................................................
    [Show full text]
  • Go Web App Example
    Go Web App Example Titaniferous and nonacademic Marcio smoodges his thetas attuned directs decreasingly. Fustiest Lennie seethe, his Pan-Americanism ballasts flitted gramophonically. Flavourless Elwyn dematerializing her reprobates so forbiddingly that Fonsie witness very sartorially. Ide support for web applications possible through gvm is go app and psych and unlock new subcommand go library in one configuration with embedded interface, take in a similar Basic Role-Based HTTP Authorization in fare with Casbin. Tools and web framework for everything there is big goals. Fully managed environment is go app, i is a serverless: verifying user when i personally use the example, decentralized file called marshalling which are both of. Simple Web Application with light Medium. Go apps into go library for example of examples. Go-bootstrap Generates a gait and allowance Go web project. In go apps have a value of. As of December 1st 2019 Buffalo with all related packages require Go Modules and. Authentication in Golang In building web and mobile. Go web examples or go is made against threats to run the example applying the data from the set the search. Why should be restarted for go app. Worth the go because you know that endpoint is welcome page then we created in addition to get started right of. To go apps and examples with fmt library to ensure a very different cloud network algorithms and go such as simple. This example will set users to map support the apps should be capable of examples covers both directories from the performance and application a form and array using firestore implementation.
    [Show full text]
  • Bachelor's Degree in Computer Science Performance Comparison Between C and Rust Compiled to Webassembly
    UMEÅ UNIVERSITY June 4, 2021 Department of Computing Science Report 5DV199 Bachelor’s degree in computer science Performance comparison between C and Rust compiled to WebAssembly Magnus Medin (dv18mmn) [email protected] Supervisor Ola Ringdahl Contents 1 Introduction 1 1.1 Background . .1 1.2 Purpose and research questions . .2 1.3 Delimitations . .2 2 Related work 2 3 Theoretical background 4 3.1 Language . .4 3.2 Compilation . .5 4 Method 5 4.1 Code analysis . .6 4.2 Testing . .6 4.3 Data collection . .6 5 Result 7 6 Discussion 9 6.1 Limitations and further research . 10 6.2 Conclusion and recommendations . 11 Abstract Web applications are used more and more and mainly they are developed with the help of Javascript, but when you have heavy demanding processes in a web app, javascript can be too slow. The new language WebAssembly is an alternative that seeks to solve this problem. But unlike Javascript, there are many compilers for many different languages that have WebAssembly as their compilation goal. This means that the choice of language to compile from could make a difference when it comes to execution time. This article takes a closer look at two of the most popular languages, namely C and Rust, to see if language choice makes a difference. The differences between the languages are measured with the help of tests done between a server and a client and also with the help of an analysis of the WebAssembly code. The result shows that Rust is faster than C in matrix multiplication and insertion sort but the addition test shows that the languages are similar in speed.
    [Show full text]
  • Automation of the Client Side of Web Services Using PHP
    University of New Orleans ScholarWorks@UNO University of New Orleans Theses and Dissertations Dissertations and Theses 12-20-2009 Automation of the Client Side of Web Services Using PHP Menad Medjkane University of New Orleans Follow this and additional works at: https://scholarworks.uno.edu/td Recommended Citation Medjkane, Menad, "Automation of the Client Side of Web Services Using PHP" (2009). University of New Orleans Theses and Dissertations. 1096. https://scholarworks.uno.edu/td/1096 This Thesis is protected by copyright and/or related rights. It has been brought to you by ScholarWorks@UNO with permission from the rights-holder(s). You are free to use this Thesis in any way that is permitted by the copyright and related rights legislation that applies to your use. For other uses you need to obtain permission from the rights- holder(s) directly, unless additional rights are indicated by a Creative Commons license in the record and/or on the work itself. This Thesis has been accepted for inclusion in University of New Orleans Theses and Dissertations by an authorized administrator of ScholarWorks@UNO. For more information, please contact [email protected]. Automation of the Client Side of Web Services Using PHP A Thesis Submitted to the Graduate Faculty of the University of New Orleans In partial fulfillment of the Requirements for the degree of Master of Science in Computer Science by Menad Medjkane B.S. University of Sciences and Technologies of Oran (Algeria), 1995 December, 2009 Acknowledgment I would like to express my deep gratitude toward everyone who has helped me during my graduate study at the University of New Orleans.
    [Show full text]
  • Build Web Services with PHP in Eclipse Using PHP Development Tools for Contract-First Development
    Build Web services with PHP in Eclipse Using PHP development tools for contract-first development Skill Level: Intermediate Nathan A. Good ([email protected]) Senior Information Engineer Consultant 13 May 2008 Learn how to build Web services in PHP using the PHP Development Tools plug-in in Eclipse Europa. Become familiar with the PDT project, and learn how to create and deploy useful PHP projects, learn about the philosophy behind contract-first development, and understand the basic parts that make up a Web Services Description Language (WSDL) file. Section 1. Before you start About this tutorial This tutorial shows how to build Web services in PHP using the PHP Development Tools (PDT) plug-in. The PDT project was unveiled in September 2007 and was followed by V1.0.2 in January 2008. The PDT project provides first-class abilities to edit, debug, and deploy PHP applications in the Eclipse IDE. Objectives This tutorial has three main objectives. The first is to become familiar with the PDT project, and learn how to create and deploy useful PHP projects. The second is to learn about the philosophy behind contract-first development. Third, this tutorial Build Web services with PHP in Eclipse © Copyright IBM Corporation 1994, 2008. All rights reserved. Page 1 of 26 developerWorks® ibm.com/developerWorks serves as an informative overview of the basic parts that make up a WSDL file. Prerequisites You should have experience with PHP development. System requirements To get the most out of this tutorial, you need to install Eclipse Europa and the PDT plug-in. You must also install the Eclipse Web Standard Tools (WST) subproject.
    [Show full text]
  • Adaptivity of 3D Web Content in Web-Based Virtual Museums a Quality of Service and Quality of Experience Perspective
    ADAPTIVITY OF 3D WEB CONTENT IN WEB-BASED VIRTUAL MUSEUMS A QUALITY OF SERVICE AND QUALITY OF EXPERIENCE PERSPECTIVE Hussein Bakri A Thesis Submitted for the Degree of PhD at the University of St Andrews 2019 Full metadata for this item is available in St Andrews Research Repository at: http://research-repository.st-andrews.ac.uk/ Please use this identifier to cite or link to this item: http://hdl.handle.net/10023/18453 This item is protected by original copyright Adaptivity of 3D Web Content in Web-Based Virtual Museums A Quality of Service and Quality of Experience Perspective Hussein Bakri This thesis is submitted in partial fulfilment for the degree of Doctor of Philosophy (PhD) at the University of St Andrews December 2018 Abstract The 3D Web emerged as an agglomeration of technologies that brought the third dimension to the World Wide Web. Its forms spanned from being systems with limited 3D capabilities to complete and complex Web-Based Virtual Worlds. The advent of the 3D Web provided great opportunities to museums by giving them an innovative medium to disseminate collections’ information and associated interpretations in the form of digital artefacts, and virtual reconstructions thus leading to a new revolutionary way in cultural heritage curation, preservation and dissemination thereby reaching a wider audience. This audience consumes 3D Web material on a myriad of devices (mobile devices, tablets and personal computers) and network regimes (WiFi, 4G, 3G, etc.). Choreographing and presenting 3D Web components across all these heterogeneous platforms and network regimes present a significant challenge yet to overcome. The challenge is to achieve a good user Quality of Experience (QoE) across all these platforms.
    [Show full text]
  • Making SVG a Web Service in a Message-Based MVC Architecture
    Making SVG a Web Service in a Message-based MVC Architecture Xiaohong Qiu1, 2, Shrideep Pallickara2, and Ahmet Uyar1, 2 1EECS Department, Syracuse University 2Community Grids Lab, Indiana University Keywords SVG, Web service, message, MVC, and publish/subscribe Abstract We reformulate Scalable Vector Graphics browser in a Web Service architecture separating the rendering from the W3C DOM processing of events. We describe this in a message-based Model-View-Controller (M-MVC) architecture and implement it with a powerful publish-subscribe messaging infrastructure. A Web Services oriented architecture with services loosely coupled by the exchange of messages is becoming an increasingly important feature in the deployment of Internet applications. The broad applicability of this approach includes enterprise software, e-Learning, e-Science and e-Business. Our work provides a general framework for integrating Desktop and Web Service applications. We summarize the performance results from detailed tests of our prototype. These measurements demonstrate the viability of our approach and identify some key issues influencing the performance of message-based Web and Desktop applications. We note how our architecture elegantly supports the major paradigms for collaboration. 1. Introduction In this paper, we discuss the conversion of Batik SVG browser [BATIK], a desktop application, into a distributed system. Specifically, it includes decomposition of Batik SVG browser into separate “View” and “Model” components; modification of its architecture from traditional method-based MVC [MVC] into message-based MVC. The “View” including client interface components (Swing GUI and GVT rendering) is dynamically downloaded to client. The “Model” consisting of DOM and JavaScript modules (see fig. 4) naturally becomes a Web Service running on a Web server.
    [Show full text]