SlideShare a Scribd company logo
Webservices
connecting Joomla!
   with the rest




         Herman Peeren   June 1st 2010
Webservice:
•	   data-exchange with a webserver
•	   often in XML-format
Alternative: ODBC
directly calling the database from client-application




“normal”, indirect call, e.g. via   direct call to database,
webpage or webservice:              ODBC:
now: Webservices
Joomla!
as a
system
on its own
connecting
Joomla!
connecting
Joomla!
connecting
Joomla! to:
•	   desktop applications
     (RIAs), Java, Flex,
     Delphi, VS, Titanium,
     MS Office, etc.

•	   other webapplications:
     as a server or client

•	   browser: Ajax, Flash

•	   any other computer
     program...
Example uses:
•connecting to multiple Joomla!-
 sites for backup and upgrading.
 (e.g.: Akeeba Remote)

•using external services (e.g.
 Google Docs, Amazon S3, etc.)

•bridges with other applications
 (e.g. MageBridge)
Protocols:
•your own...
•a binary protocol like AMF
•using some XML or JSON (Ajax)
•one way XML: feed (Atom/RSS)

•XML-RPC
           }
               when we talk about
               webservices
•SOAP          we mostly talk about
•REST          those 3 ways
Webservices: connecting Joomla! with other programs.
Webservices: connecting Joomla! with other programs.
Remote Procedure Calls
(XML-RPC and SOAP)

•call a method on the server
•DO something (procedure, verb)

vs REST
•get/put/post/delete a resource
 on the server
•resource (object, noun)
XML-RPC
•define I/O types
•phpxmlrpc-library
•in Joomla!: as a plugin...
•better: use MVC
•changed in J! 1.6
Webservice and MVC
•model: is the “heart” of application
 (use same model for webservice)
•controller decides what to do
 based on the input
•view: renders the output
XML-RPC in Joomla! 1.6
•no plugin anymore
•new JController
 (might use a strategy pattern?)
•controllername.xmlrpc.php
•idem: controllername.json.php
•index.php?....&protocol=xmlrpc
•http://docs.joomla.org/Xml-rpc
SOAP
•evolved from XML-RPC
•heavily used in .NET
•meta-data:
 WSDL and SOAP-envellope
•SOAP-header:
 a.o. for authentication
•WSDL:
 description in XML-format
SOAP-envellope:
WSDL:
•description of a webservice
•automatic code generation!
•easy to use in e.g. Delphi, Flex, etc.
sample
SOAP-calls
and WSDL
importing WSDL in Delphi 2010:
importing WSDL in Flex Builder 3:
SOAP in Joomla!,
some possibilities:
•JMSOAP and com_connector: J!1.0
 (vBulletin-connection)
•VM SOA: SOAP for VirtueMart
•other PHP libraries and Frameworks:
 NuSoap, PearSoap, Zend, PHP5
 SOAP module... $server = new soap_server;
                  require_once(“nusoap.php”);


•JSOAP coming soon!
 (based on PHP5-SOAP)
REST
•“representational state transfer”
•architecture, not a protocol
•linking to recourses, not methods
•resource = object + URI
•stateless communication
•uniform interface (CRUD)
•using HTTP-headers and methods
Webservices: connecting Joomla! with other programs.
REST in Nooku Framework:
•KControllerBread + KRequest works
 out of the box!
•authentication and http status messa-
 ges not yet 100% (planned for 0.9)

Joomla! RESTful thoughts:
•www.alltogetherasawhole.org/profiles/
 blogs/restful-api-for-joomla
Authentication/Authorization
•with XML/RPC credentials are para-
 meters in the remote procedure call.

•with SOAP credentials are in the
 SOAP-header.

•with REST the credentials are in
 HTTP-headers.
SSL or other encrypting
•SSL (https://) can be used to encrypt
 the credentials (and data)

•or you can define encryption of cre-
 dentials (and data) yourself:
   - basic (base64: no real encryption)
   - digest
   - WSSE, OAuth, your own variation
Get Joomla! connected
•providing standard, easy to use con-
 nections is essential for further deve-
 lopment of Joomla!

•let’s provide XML/RPC, SOAP and
 REST within the MVC framework in a
 uniform way
 (Zend has it all, why not we too?)
let’s
connect
Joomla!
let’s
connect
Joomla!
Questions?



Contact info:
Herman Peeren
herman@yepr.nl

More Related Content

What's hot (20)

PDF
ITT Flisol 2013
Domingo Suarez Torres
 
PPT
Web forms and server side scripting
sawsan slii
 
PPT
Active Server Page(ASP)
Keshab Nath
 
PPTX
REST and ASP.NET Web API (Tunisia)
Jef Claes
 
PPTX
Client and server side scripting
baabtra.com - No. 1 supplier of quality freshers
 
PPTX
Connect 2014 - EXTJS in XPages: Modernizing IBM Notes Views Without Sacrifici...
Mark Roden
 
PDF
C# ASP.NET WEB API APPLICATION DEVELOPMENT
Dr. Awase Khirni Syed
 
PDF
Tech Stack Ideas
nsclark
 
PDF
Building Desktop RIAs with PHP, HTML & Javascript in AIR
funkatron
 
PPTX
Introduction to ASP.NET
Peter Gfader
 
PPTX
ASP.NET - Introduction to Web Forms and MVC
Bilal Amjad
 
DOCX
Client side vs server side
abgjim96
 
PPTX
The ASP.NET Web API for Beginners
Kevin Hazzard
 
PDF
PLAT-8 Spring Web Scripts and Spring Surf
Alfresco Software
 
DOC
Tutorial asp.net
Vivek K. Singh
 
PPTX
What is a good technology stack today?
Netlight Consulting
 
PPT
Introduction to the Web API
Brad Genereaux
 
PDF
Single page application
Jeremy Lee
 
PPTX
Web Development Today
bretticus
 
PPT
SenchaCon 2016: Expect the Unexpected - Dealing with Errors in Web Apps
Sencha
 
ITT Flisol 2013
Domingo Suarez Torres
 
Web forms and server side scripting
sawsan slii
 
Active Server Page(ASP)
Keshab Nath
 
REST and ASP.NET Web API (Tunisia)
Jef Claes
 
Client and server side scripting
baabtra.com - No. 1 supplier of quality freshers
 
Connect 2014 - EXTJS in XPages: Modernizing IBM Notes Views Without Sacrifici...
Mark Roden
 
C# ASP.NET WEB API APPLICATION DEVELOPMENT
Dr. Awase Khirni Syed
 
Tech Stack Ideas
nsclark
 
Building Desktop RIAs with PHP, HTML & Javascript in AIR
funkatron
 
Introduction to ASP.NET
Peter Gfader
 
ASP.NET - Introduction to Web Forms and MVC
Bilal Amjad
 
Client side vs server side
abgjim96
 
The ASP.NET Web API for Beginners
Kevin Hazzard
 
PLAT-8 Spring Web Scripts and Spring Surf
Alfresco Software
 
Tutorial asp.net
Vivek K. Singh
 
What is a good technology stack today?
Netlight Consulting
 
Introduction to the Web API
Brad Genereaux
 
Single page application
Jeremy Lee
 
Web Development Today
bretticus
 
SenchaCon 2016: Expect the Unexpected - Dealing with Errors in Web Apps
Sencha
 

Viewers also liked (20)

ODP
REST API for Joomla
Parth Lawate
 
PDF
Don't worry be API with Slim framework and Joomla
Pierre-André Vullioud
 
PPTX
Turning Marketing Words into a Branded People Experience
Bridge Training and Events
 
PPTX
Basic Website 101
Thomas Salmen
 
PPT
Web Security Introduction Webserver hacking refers to ...
webhostingguy
 
PPTX
Summer training seminar
Govind Singh Mahecha
 
PPTX
Nodejs
Bhushan Patil
 
PDF
Why Node.js
guileen
 
PDF
PHPNW14 - Getting Started With AWS
benwaine
 
PDF
Ajax And JSON
Rody Middelkoop
 
PPT
Web Fendamentals
Hiren Mistry
 
PPT
Pentesting web applications
Satish b
 
KEY
Server side scripting smack down - Node.js vs PHP
Marc Gear
 
PDF
SmokeTests
tech.kartenmacherei
 
PPTX
WebSphere App Server vs JBoss vs WebLogic vs Tomcat
WASdev Community
 
ODP
Creating a Java EE 7 Websocket Chat Application
Micha Kops
 
PPTX
Testing RESTful web services with REST Assured
Bas Dijkstra
 
PPTX
Rest assured
Yaniv Rodenski
 
ODP
Testing RESTful Webservices using the REST-assured framework
Micha Kops
 
PPTX
Rest assured
Varun Deshpande
 
REST API for Joomla
Parth Lawate
 
Don't worry be API with Slim framework and Joomla
Pierre-André Vullioud
 
Turning Marketing Words into a Branded People Experience
Bridge Training and Events
 
Basic Website 101
Thomas Salmen
 
Web Security Introduction Webserver hacking refers to ...
webhostingguy
 
Summer training seminar
Govind Singh Mahecha
 
Why Node.js
guileen
 
PHPNW14 - Getting Started With AWS
benwaine
 
Ajax And JSON
Rody Middelkoop
 
Web Fendamentals
Hiren Mistry
 
Pentesting web applications
Satish b
 
Server side scripting smack down - Node.js vs PHP
Marc Gear
 
WebSphere App Server vs JBoss vs WebLogic vs Tomcat
WASdev Community
 
Creating a Java EE 7 Websocket Chat Application
Micha Kops
 
Testing RESTful web services with REST Assured
Bas Dijkstra
 
Rest assured
Yaniv Rodenski
 
Testing RESTful Webservices using the REST-assured framework
Micha Kops
 
Rest assured
Varun Deshpande
 
Ad

Similar to Webservices: connecting Joomla! with other programs. (20)

PPT
Webservices
Nyros Technologies
 
PPTX
Web services soap and rest by mandakini for TechGig
Mandakini Kumari
 
PPTX
Phalcon 2 High Performance APIs - DevWeekPOA 2015
Jackson F. de A. Mafra
 
ODP
Creating Web Services with Zend Framework - Matthew Turland
Matthew Turland
 
PDF
Php and-web-services-24402
PrinceGuru MS
 
PDF
REST vs SOAP
javicid
 
PDF
PHP And Web Services: Perfect Partners
Lorna Mitchell
 
PPTX
An Overview of Web Services: SOAP and REST
Ram Awadh Prasad, PMP
 
PDF
Building Web Services
Jussi Pohjolainen
 
PDF
Web Services
Katrien Verbert
 
PPT
Web services - REST and SOAP
Compare Infobase Limited
 
PPTX
Web Services - A brief overview
Raveendra Bhat
 
PDF
Application.pdf
KarthigeyanS13
 
PPT
Soap and Rest
Edison Lascano
 
PPTX
Webservices Overview : XML RPC, SOAP and REST
Pradeep Kumar
 
PPT
ghfghg
hoefo
 
PDF
Rest web service
Hamid Ghorbani
 
PDF
Rest vs soap
Ioanna Tsalouchidou
 
PDF
Restful web services by Sreeni Inturi
Sreeni I
 
PPTX
Day03 api
ABDEL RAHMAN KARIM
 
Webservices
Nyros Technologies
 
Web services soap and rest by mandakini for TechGig
Mandakini Kumari
 
Phalcon 2 High Performance APIs - DevWeekPOA 2015
Jackson F. de A. Mafra
 
Creating Web Services with Zend Framework - Matthew Turland
Matthew Turland
 
Php and-web-services-24402
PrinceGuru MS
 
REST vs SOAP
javicid
 
PHP And Web Services: Perfect Partners
Lorna Mitchell
 
An Overview of Web Services: SOAP and REST
Ram Awadh Prasad, PMP
 
Building Web Services
Jussi Pohjolainen
 
Web Services
Katrien Verbert
 
Web services - REST and SOAP
Compare Infobase Limited
 
Web Services - A brief overview
Raveendra Bhat
 
Application.pdf
KarthigeyanS13
 
Soap and Rest
Edison Lascano
 
Webservices Overview : XML RPC, SOAP and REST
Pradeep Kumar
 
ghfghg
hoefo
 
Rest web service
Hamid Ghorbani
 
Rest vs soap
Ioanna Tsalouchidou
 
Restful web services by Sreeni Inturi
Sreeni I
 
Ad

More from Herman Peeren (20)

PDF
ProjectionalForms-2023-11-14.pdf
Herman Peeren
 
PDF
ExtensionGenerator-JoomlaDagen2023-slides.pdf
Herman Peeren
 
PDF
Cut & Shave
Herman Peeren
 
PDF
Programmeren, talen en het begrijpen van de wereld
Herman Peeren
 
PDF
Dci in PHP
Herman Peeren
 
PDF
Improve our PHP code with ideas from Functional Programming
Herman Peeren
 
PDF
DCI DDD-BE April 2015
Herman Peeren
 
PDF
Design patterns illustrated-2015-03
Herman Peeren
 
PDF
Event Sourcing
Herman Peeren
 
PDF
Next Generation Joomla!
Herman Peeren
 
PDF
Behat, Behavioral Driven Development (BDD) in PHP
Herman Peeren
 
PDF
Design patterns illustrated 010PHP
Herman Peeren
 
PDF
Print, geen kunst aan
Herman Peeren
 
PDF
Jooctrine - Doctrine ORM in Joomla!
Herman Peeren
 
PDF
#jd12nl Joomla 2.5 extensies
Herman Peeren
 
PDF
#jd12nl Seblod 2
Herman Peeren
 
PDF
Jug010 120320-templates
Herman Peeren
 
PDF
Joomla2.0 architecture
Herman Peeren
 
PDF
Commercial gpljoomla
Herman Peeren
 
PDF
Design Patterns Illustrated
Herman Peeren
 
ProjectionalForms-2023-11-14.pdf
Herman Peeren
 
ExtensionGenerator-JoomlaDagen2023-slides.pdf
Herman Peeren
 
Cut & Shave
Herman Peeren
 
Programmeren, talen en het begrijpen van de wereld
Herman Peeren
 
Dci in PHP
Herman Peeren
 
Improve our PHP code with ideas from Functional Programming
Herman Peeren
 
DCI DDD-BE April 2015
Herman Peeren
 
Design patterns illustrated-2015-03
Herman Peeren
 
Event Sourcing
Herman Peeren
 
Next Generation Joomla!
Herman Peeren
 
Behat, Behavioral Driven Development (BDD) in PHP
Herman Peeren
 
Design patterns illustrated 010PHP
Herman Peeren
 
Print, geen kunst aan
Herman Peeren
 
Jooctrine - Doctrine ORM in Joomla!
Herman Peeren
 
#jd12nl Joomla 2.5 extensies
Herman Peeren
 
#jd12nl Seblod 2
Herman Peeren
 
Jug010 120320-templates
Herman Peeren
 
Joomla2.0 architecture
Herman Peeren
 
Commercial gpljoomla
Herman Peeren
 
Design Patterns Illustrated
Herman Peeren
 

Recently uploaded (20)

PPTX
Dev Dives: Automate, test, and deploy in one place—with Unified Developer Exp...
AndreeaTom
 
PPTX
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
 
PPTX
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
PPTX
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
PPTX
Agile Chennai 18-19 July 2025 | Emerging patterns in Agentic AI by Bharani Su...
AgileNetwork
 
PDF
TrustArc Webinar - Navigating Data Privacy in LATAM: Laws, Trends, and Compli...
TrustArc
 
PPTX
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
PDF
Per Axbom: The spectacular lies of maps
Nexer Digital
 
PDF
introduction to computer hardware and sofeware
chauhanshraddha2007
 
PPTX
OA presentation.pptx OA presentation.pptx
pateldhruv002338
 
PPTX
Agile Chennai 18-19 July 2025 | Workshop - Enhancing Agile Collaboration with...
AgileNetwork
 
PDF
Researching The Best Chat SDK Providers in 2025
Ray Fields
 
PDF
MASTERDECK GRAPHSUMMIT SYDNEY (Public).pdf
Neo4j
 
PDF
Trying to figure out MCP by actually building an app from scratch with open s...
Julien SIMON
 
PDF
CIFDAQ's Market Wrap : Bears Back in Control?
CIFDAQ
 
PDF
Economic Impact of Data Centres to the Malaysian Economy
flintglobalapac
 
PDF
RAT Builders - How to Catch Them All [DeepSec 2024]
malmoeb
 
PDF
Responsible AI and AI Ethics - By Sylvester Ebhonu
Sylvester Ebhonu
 
PDF
NewMind AI Weekly Chronicles – July’25, Week III
NewMind AI
 
PDF
Research-Fundamentals-and-Topic-Development.pdf
ayesha butalia
 
Dev Dives: Automate, test, and deploy in one place—with Unified Developer Exp...
AndreeaTom
 
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
 
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
Agile Chennai 18-19 July 2025 | Emerging patterns in Agentic AI by Bharani Su...
AgileNetwork
 
TrustArc Webinar - Navigating Data Privacy in LATAM: Laws, Trends, and Compli...
TrustArc
 
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
Per Axbom: The spectacular lies of maps
Nexer Digital
 
introduction to computer hardware and sofeware
chauhanshraddha2007
 
OA presentation.pptx OA presentation.pptx
pateldhruv002338
 
Agile Chennai 18-19 July 2025 | Workshop - Enhancing Agile Collaboration with...
AgileNetwork
 
Researching The Best Chat SDK Providers in 2025
Ray Fields
 
MASTERDECK GRAPHSUMMIT SYDNEY (Public).pdf
Neo4j
 
Trying to figure out MCP by actually building an app from scratch with open s...
Julien SIMON
 
CIFDAQ's Market Wrap : Bears Back in Control?
CIFDAQ
 
Economic Impact of Data Centres to the Malaysian Economy
flintglobalapac
 
RAT Builders - How to Catch Them All [DeepSec 2024]
malmoeb
 
Responsible AI and AI Ethics - By Sylvester Ebhonu
Sylvester Ebhonu
 
NewMind AI Weekly Chronicles – July’25, Week III
NewMind AI
 
Research-Fundamentals-and-Topic-Development.pdf
ayesha butalia
 

Webservices: connecting Joomla! with other programs.