| 7. März 2007 | PHP & SAP | Martin Probst PHP talking to SAP Martin Probst.

Slides:



Advertisements
Similar presentations
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 16 Introduction to Ajax.
Advertisements

Distributed Information System December 7, 20091Alvin MACCHIONE - Rémy JAVELLE.
MIT Lincoln Laboratory A Service-Oriented Approach to Application Development Robert Darneille & Gary Schorer WPI MQP Presentations ICS Group 10 October.
Usage of the memoQ web service API by LSP – a case study
1 Web Services Based partially on Sun Java Tutorial at Also, XML, Java and the Future of The Web, Jon Bosak. And WSDL.
Web Service Ahmed Gamal Ahmed Nile University Bioinformatics Group
1 XML Web Services Practical Implementations Bob Steemson Product Architect iSOFT plc.
Introduction to WSDL presented by Xiang Fu. Source WSDL 1.1 specification WSDL 1.1 specification – WSDL 1.2 working draft WSDL.
SOAP.
CIS 375—Web App Dev II SOAP.
XML in the real world (2) SOAP. What is SOAP? ► SOAP stands for Simple Object Access Protocol ► SOAP is a communication protocol ► SOAP is for communication.
Web Services Seminar: Service Description Languages
Embedded Web Hyung-min Koo. 2 Table of Contents Introduction of Embedded Web Introduction of Embedded Web Advantages of Embedded Web Advantages of Embedded.
Understand Web Services
Windows Communication Foundation and Web Services.
XML Technologies and Applications Rajshekhar Sunderraman Department of Computer Science Georgia State University Atlanta, GA 30302
Web Services Andrea Miller Ryan Armstrong Alex. Web services are an emerging technology that offer a solution for providing a common collaborative architecture.
Integration of Applications MIS3502: Application Integration and Evaluation Paul Weinberg Adapted from material by Arnold Kurtz, David.
Peoplesoft: Building and Consuming Web Services
Web service testing Group D5. What are Web Services? XML is the basis for Web services Web services are application components Web services communicate.
TP2653 Adv Web Programming SOAP and WSDL. SOAP Simple Object Access Protocol – Lightweight XML-based messaging protocol – A protocol for accessing a Web.
Enterprise Resource Planning
PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.
Apache Chemistry face-to-face meeting April 2010.
JavaScript & jQuery the missing manual Chapter 11
A Simplified Approach to Web Service Development Peter Kelly Paul Coddington Andrew Wendelborn.
Adapting Legacy Computational Software for XMSF 1 © 2003 White & Pullen, GMU03F-SIW-112 Adapting Legacy Computational Software for XMSF Elizabeth L. White.
SSC2: Web Services. Web Services Web Services offer interoperability using the web Web Services provide information on the operations they can perform.
T Network Application Frameworks and XML Web Services and WSDL Sasu Tarkoma Based on slides by Pekka Nikander.
Grid Computing, B. Wilkinson, 20043b.1 Web Services Part II.
Module 14: WCF Send Adapters. Overview Lesson 1: Introduction to WCF Send Adapters Lesson 2: Consuming a Web Service Lesson 3: Consuming Services from.
Enabling Embedded Systems to access Internet Resources.
© 2006 IBM Corporation IBM WebSphere Portlet Factory Architecture.
DEVS Namespace for Interoperable DEVS/SOA
James Holladay, Mario Sweeney, Vu Tran. Web Services Presentation Web Services Theory James Holladay Tools – Visual Studio Vu Tran Tools – Net Beans Mario.
Web Services Week 7 Aims: A detailed look at the underlying mechanisms for communication between web services Objectives: SOAP, WSDL, UDDI.
11 Web Services. 22 Objectives You will be able to Say what a web service is. Write and deploy a simple web service. Test a simple web service. Write.
Creating Dynamic Web Pages Using PHP and MySQL CS 320.
Jan Hatje, DESY CSS ITER March 2009: Technology and Interfaces XFEL The European X-Ray Laser Project X-Ray Free-Electron Laser 1 CSS – Control.
FIMS v1.1 Version numbers in schema Richard Cartwright Quantel July 2013.
PHP PDO & PHP SOAP Introduce. Agenda What is PHP PDO and PHP SOAP? Setup PHP PDO to connect database, query database and close the connection. Setup SOAP.
Federated Database Set Up Greg Magsamen ITK478 SIA.
Server-side Programming The combination of –HTML –JavaScript –DOM is sometimes referred to as Dynamic HTML (DHTML) Web pages that include scripting are.
Facebook API Kelly Orser. Client Libraries Client libraries will simplify the calls to the platform by reducing the amount of code you have to write.
David Lawrence 7/8/091Intro. to PHP -- David Lawrence.
S O A P ‘the protocol formerly known as Simple Object Access Protocol’ Team Pluto Bonnie, Brandon, George, Hojun.
Web Services from 10,000 feet Part I Tom Perkins NTPCUG CertSIG XML Web Services.
EBIZ302 Jupiter Business Process Automation and Web Services David Fong Program Manager.
Page 1 CSISS Center for Spatial Information Science and Systems CWIC Development Team Meeting, 2014 CWIC OpenSearch Design and Implementation Yuanzheng.
Martin Kruliš by Martin Kruliš (v1.1)1.
Intro to Web Services Dr. John P. Abraham UTPA. What are Web Services? Applications execute across multiple computers on a network.  The machine on which.
AJAX. Overview of Ajax Ajax is not an API or a programming language Ajax aims to provide more responsive web applications In normal request/response HTTP.
Web Services using PHP. web services (recap) Web services today are frequently just Application Programming Interfaces (API) or web APIs that can be accessed.
Lecture VI: SOAP-based Web Service CS 4593 Cloud-Oriented Big Data and Software Engineering.
Google Code Libraries Dima Ionut Daniel. Contents What is Google Code? LDAPBeans Object-ldap-mapping Ldap-ODM Bug4j jOOR Rapa jongo Conclusion Bibliography.
DEVELOPING WEB SERVICES WITH JAVA DESIGN WEB SERVICE ENDPOINT.
Kai Ruhl, Pablo Beltrami November 2009 Webservices for Distributed Access to Space Weather Models ESWW6, Bruges, Belgium.
Jackson, Web Technologies: A Computer Science Perspective, © 2007 Prentice-Hall, Inc. All rights reserved Chapter 9 Web Services: JAX-RPC,
Added Value to XForms by Web Services Supporting XML Protocols Elina Vartiainen Timo-Pekka Viljamaa T Research Seminar on Digital Media Autumn.
Windows Communication Foundation and Web Services
WEB SERVICES.
T Network Application Frameworks and XML Web Services and WSDL Sasu Tarkoma Based on slides by Pekka Nikander.
Unit – 5 JAVA Web Services
XML in Web Technologies
Windows Communication Foundation and Web Services
Chapter 9 Web Services: JAX-RPC, WSDL, XML Schema, and SOAP
Testing RESTful Web APIs
Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta
Introduction of Week 11 Return assignment 9-1 Collect assignment 10-1
Chengyu Sun California State University, Los Angeles
Presentation transcript:

| 7. März 2007 | PHP & SAP | Martin Probst PHP talking to SAP Martin Probst

PHP & SAP | Martin Probst | 7. März 2007 PHP / Outline demo of leave request desktop integration via Atom & iCalendar consuming web services in PHP feedback (technical, documentation, missing functionality)

PHP & SAP | Martin Probst | 7. März demo

PHP & SAP | Martin Probst | 7. März 2007 PHP / consuming web services / iCalendar & Atom Web interfaces are location independent, lightweight etc. But users prefer rich clients sometimes Better interface Integrate with other tools Aggregate data from many sources Support open iCalendar and Atom formats easy to produce and consume wide range of applications open standards (RFCs) Implementation read only, but not necessarily (WebCAL, APP)

PHP & SAP | Martin Probst | 7. März 2007 PHP / consuming web services / the basic code No real type system Create SOAP client, dynamic methods on it added Everything done at run time, but cached $wsdl = ' $soapclient = new SoapClient($wsdl); $message = array ( 'EmployeeLeaveRequestSelectionByID' => array ( 'EmployeeLeaveRequestID' => $ID ) ); $response = $soapclient-> EmployeeLeaveRequestByIDQueryResponse_In($message);

PHP & SAP | Martin Probst | 7. März 2007 PHP / consuming web services / dynamic types PHP has a dynamic (or no?) type system Classes are constructed from WSDL/Schema on the fly Can supply user implemented classes Use hash maps/arrays to construct messages Consume result types directly, no declaration This is all the code necessary to query services minimal LOC, but no static type check $leaverequest = $response->EmployeeLeaveRequest; echo $leaverequest->LifeCycleStatusCode, $leaverequest->StartDate;

PHP & SAP | Martin Probst | 7. März 2007 PHP / consuming web services / problems Automatic type conversion error prone is it a number, a string, a bird? Unstable language : _toString semantics change, Datetime class added backwards incompatible changes, break code Object oriented system strange at best Field visibility not enforced Types sometimes case insensitive

PHP & SAP | Martin Probst | 7. März 2007 PHP / consuming web services / soap issues SOAP API added in PHP5 Hash map syntax for messages no support for namespaces in messages Serialization into XML overly liberal fails to detect many bugs easy to send non-WSDL-conforming messages Fehler bei der Konvertierung XML => ABAP (; FehlerId: ; ( ) ) $message = array ( 'EmployeeLeaveRequestSelectionByID' => array ( 'EmployeeLeaveRequestID' => $ID ) );

PHP & SAP | Martin Probst | 7. März 2007 PHP / consuming web services / soap issues Arrays weird - if its only one element, its not an array need special case code everywhere Difficult to manage types in non typed system EmployeeLeaveRequest type different in services PHP has no way to handle this Create messages as hashmaps for each request $elr = $res->EmployeeLeaveRequest; if (is_array($elr)) { $elr = array ($elr); }

PHP & SAP | Martin Probst | 7. März conclusion PHP small server footprint low complexity (~2000 LOC, zipped ~60KB) quick development cycle bad programming language rather go for Ruby / Python Services see other feedback last modified for service would be nice