SlideShare a Scribd company logo
Web Service Architecture
Prem Krishna Chettri
Table of Contents
 What’s Web Service?
 Why Web Service?
 Architecture Overview
 XML
 SOAP
 WSDL
 NetSuite Web Service
What’s Is Web Service?
 Web services are application programming interfaces
(API) or Web APIs that are accessed via some
protocols like HTTP.
 “Software application identified by a URI, whose
interfaces and bindings are capable of being
defined, described, and discovered as XML artifacts”
– W3C Web Services Architecture
Requirements, Oct. 2002
Why Web Services?
 Allow companies to reduce the cost of doing e-
business, to deploy solutions faster
 Need a common program-to-program communications
model
 Allow heterogeneous applications to be integrated
more rapidly, easily and less expensively
 Facilitate deploying and providing access to business
functions over the Web
XML
 XML Inherited from SGML which is a markup
language like HTML.
 XML stands for Extensible Markup Language
because we can Extend its capability.
 XML uses parser to decode the file content.
Example :-
 <?xml version="1.0"?>
 <note>
 <to>Receiver</to>
 <from>Sender </from>
 <heading>Reminder</heading>
 <body>Message Body!</body>
 </note>
SOAP: Simple Object
Access Protocol
 What is SOAP?
 SOAP is a communication protocol
 SOAP is for communication between applications
 SOAP is a format for sending messages
 SOAP is designed to communicate via Internet
 SOAP is platform independent
 SOAP is language independent
 SOAP is based on XML
 SOAP is simple and extensible
 SOAP will be developed as a W3C standard
SOAP Message Structure
 Request and Response messages
 Request invokes a method on a remote
object
 Response returns result of running the
method
 SOAP specification defines an
“envelop”
 “envelop” wraps the message itself
 Message is a different vocabulary
 Namespace prefix is used to distinguish
the two parts
Application-specific
message vocabulary
SOAP Envelop
vocabulary
SOAP Request Message
<?xml version="1.0"?>
<soap:Envelope
xmlns:soap="http://www.w3.org/2001/12/soap-envelope"
soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">
<soap:Body xmlns:m="http://www.stock.org/stock">
</soap:Body>
</soap:Envelope>
<m:GetStockPrice>
<m:StockName>IBM</m:StockName>
</m:GetStockPrice>
SOAP Envelope
Message
SOAP Envelope
Namespace
Message
Namespace
SOAP Response Message
<?xml version="1.0"?>
<soap:Envelope
xmlns:soap="http://www.w3.org/2001/12/soap-envelope"
soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">
<soap:Body xmlns:m="http://www.stock.org/stock">
</soap:Body>
</soap:Envelope>
<m:GetStockPriceResponse>
<m:Price>34.5</m:Price>
</m:GetStockPriceResponse>
SOAP Envelope
Message
Result
returned in
Body
Web Services Description Language
 What is WSDL?
 WSDL is written in XML
 WSDL is an XML document
 WSDL is used to describe Web services
 WSDL is also used to locate Web services
 WSDL is not yet a W3C standard
 Operational information about the service
 Location of the service
 Service interface
 Implementation details for the service interface
WSDL Document Structure (1/2)
 <portType> element
 Defines a web service, the operations that can be
performed, and the messages that are involved
 <message> element
 Defines the data elements of an operation
 consists of one or more parts.
 The parts can be compared to the parameters of a
function call in a traditional programming language
WSDL Document Structure (2/2)
 <types> element
 Defines the data type that are used by the web
service
 For maximum platform neutrality, WSDL uses XML
Schema syntax to define data types
 <binding> element
 Defines the message format and communication
protocols used by the web service
NetSuite WSDL
 <defination xmlns:..>
 <types>
 <xsd:schema xmlns:xsd=“http://www.w3.org/2001/XMLSchema”>
 <xsd:import namespace=“ “ schemaLocation=“ ”>
 <xsd:import namespace=“ “ schemaLocation=“ ”>
 ……….
 </xsd:schema>
 </types>
 <message name=“ ”>
 <part name =“ “ element =“ ”>
 </message>
 <portType name=“NetSuitePortType”>
 <operation name=“Login”>
 <input name = “ login Request” message=“tns:loginRequest”>
 <outpur name=“loginResponse” message=“tns:loginResponse”>
 </operation>
 </portType>
WSDL Continuation
 <binding name="NetSuiteBinding" type="tns:NetSuitePortType">
 <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
 <operation name="login">
 <soap:operation soapAction="login"/>
 <input name="loginRequest">
 <soap:header message="tns:headers" part="applicationInfo" use="literal"/>
 <soap:header message="tns:headers" part="partnerInfo" use="literal"/>
 <soap:body use="literal"/>
 </input>
 <output name="loginResponse">
 <soap:body use="literal"/>
 </output>
 <fault name="InsufficientPermissionFault">
 <soap:fault name="InsufficientPermissionFault" use="literal"/>
 </fault>
 </operation>
 </binding>
 <service name="NetSuiteService">
 <port name="NetSuitePort" binding="tns:NetSuiteBinding">
 <soap:address location="https://webservices.netsuite.com/services/NetSuitePort_2012_2"/>
 </port>
 </service>
 </definitions>
XML Schema Definition (XSD)
 An XML schema describes the structure of an
XML document.
NetSuite XSD’s:-
1>core.xsd,
2>messages.xsd,
3>faults.xsd,
4>common.xsd etc.
Web Service Model (1/3)
Web Service Model (2/3)
 Roles in Web Service architecture
 Service provider
 Owner of the service
 Platform that hosts access to the service
 Service requestor
 Business that requires certain functions to be satisfied
 Application looking for and invoking an interaction with a
service
 Service registry
 Searchable registry of service descriptions where service
providers publish their service descriptions
Web Service Model (3/3)
 Operations in a Web Service Architecture
 Publish
 Service descriptions need to be published in order for
service requestor to find them
 Find
 Service requestor retrieves a service description directly
or queries the service registry for the service required
 Bind
 Service requestor invokes or initiates an interaction with
the service at runtime
NetSuite WebServices
 General Setup (UI) :-
 To enable the Web services feature:
1. As administrator, click Setup > Company > Enable Features.
2. Click the SuiteCloud tab.
3. Select the Web Services check box.
4. Click Save.
 Enable Show Internal ID from :-
1. Home > Set Preferences.
2. Click the General Tab.
3. check the Show Internal IDs box.
NetSuite IDE Setup
 Project Setup :-
1> Install the IDE ( Visual Studio or Eclipse).
2> Create a New Project.
3> Add Web Reference. Using Below given URL’s
 WSDL URL :-
https://webservices.netsuite.com/wsdl/v2012_2_0/netsuite.wsdl
 SOAP URL :-
https://webservices.netsuite.com/services/NetSuitePort_2012_2
Note :- Use dynamic method to get the correct service url’s by getDataCenterUrls() api.
 WebService Listener :-
https://webservice.na1.netsuite.com
 Schema Browser (For Reference):-
https://system.netsuite.com/help/helpcenter/en_US/SchemaBrowser/indexv2012_2_0.html
Web Services Class and API’s
 “NetSuiteService” Class is a primary Class
exposed by NetsuiteWeb Interface.
 It has exposed Events and API’s
Example :- add, delete, update, initialize
get, search etc.
Practical’s Next
Q&A
Thank You
Ad

More Related Content

What's hot (20)

Web Service Implementation Using ASP.NET
Web Service Implementation Using ASP.NETWeb Service Implementation Using ASP.NET
Web Service Implementation Using ASP.NET
Ponraj
 
Java web services
Java web servicesJava web services
Java web services
kumar gaurav
 
Webservices
WebservicesWebservices
Webservices
Gerard Sylvester
 
Web service Introduction
Web service IntroductionWeb service Introduction
Web service Introduction
Madhukar Kumar
 
web service technologies
web service technologiesweb service technologies
web service technologies
Yash Darak
 
Intro to web services
Intro to web servicesIntro to web services
Intro to web services
Neil Ghosh
 
Understanding Web services
Understanding Web servicesUnderstanding Web services
Understanding Web services
Fabricio Epaminondas
 
Description of soa and SOAP,WSDL & UDDI
Description of soa and SOAP,WSDL & UDDIDescription of soa and SOAP,WSDL & UDDI
Description of soa and SOAP,WSDL & UDDI
TUSHAR VARSHNEY
 
Web services
Web servicesWeb services
Web services
Akshay Ballarpure
 
SOA - From Webservices to APIs
SOA - From Webservices to APIsSOA - From Webservices to APIs
SOA - From Webservices to APIs
Holger Reinhardt
 
Java Web Services [3/5]: WSDL, WADL and UDDI
Java Web Services [3/5]: WSDL, WADL and UDDIJava Web Services [3/5]: WSDL, WADL and UDDI
Java Web Services [3/5]: WSDL, WADL and UDDI
IMC Institute
 
Service Oriented Architecture Luqman
Service Oriented Architecture LuqmanService Oriented Architecture Luqman
Service Oriented Architecture Luqman
Luqman Shareef
 
Introduction to web services and how to in php
Introduction to web services and how to in phpIntroduction to web services and how to in php
Introduction to web services and how to in php
Amit Kumar Singh
 
Soap web service
Soap web serviceSoap web service
Soap web service
NITT, KAMK
 
Web service
Web serviceWeb service
Web service
Vaithiyanathan Govindarajan
 
Cloud computing by Luqman
Cloud computing by LuqmanCloud computing by Luqman
Cloud computing by Luqman
Luqman Shareef
 
Web services
Web servicesWeb services
Web services
Michael Weiss
 
Web service introduction 2
Web service introduction 2Web service introduction 2
Web service introduction 2
Sagara Gunathunga
 
Develop ASP.Net Web Service
Develop ASP.Net Web Service Develop ASP.Net Web Service
Develop ASP.Net Web Service
Safaa Farouk
 
Web Services ppt
Web Services pptWeb Services ppt
Web Services ppt
OECLIB Odisha Electronics Control Library
 

Viewers also liked (20)

Building Apps with MongoDB
Building Apps with MongoDBBuilding Apps with MongoDB
Building Apps with MongoDB
Nate Abele
 
STL ALGORITHMS
STL ALGORITHMSSTL ALGORITHMS
STL ALGORITHMS
fawzmasood
 
Distributed Systems Design
Distributed Systems DesignDistributed Systems Design
Distributed Systems Design
Dennis van der Stelt
 
The Style of C++ 11
The Style of C++ 11The Style of C++ 11
The Style of C++ 11
Sasha Goldshtein
 
Idiomatic C++
Idiomatic C++Idiomatic C++
Idiomatic C++
Federico Ficarelli
 
Improving The Quality of Existing Software
Improving The Quality of Existing SoftwareImproving The Quality of Existing Software
Improving The Quality of Existing Software
Steven Smith
 
Operator overloading
Operator overloadingOperator overloading
Operator overloading
farhan amjad
 
C++ Advanced
C++ AdvancedC++ Advanced
C++ Advanced
Vivek Das
 
Bjarne Stroustrup - The Essence of C++: With Examples in C++84, C++98, C++11,...
Bjarne Stroustrup - The Essence of C++: With Examples in C++84, C++98, C++11,...Bjarne Stroustrup - The Essence of C++: With Examples in C++84, C++98, C++11,...
Bjarne Stroustrup - The Essence of C++: With Examples in C++84, C++98, C++11,...
Complement Verb
 
Operator overloading
Operator overloading Operator overloading
Operator overloading
Northeastern University
 
An Introduction to Part of C++ STL
An Introduction to Part of C++ STLAn Introduction to Part of C++ STL
An Introduction to Part of C++ STL
乐群 陈
 
Solid principles of oo design
Solid principles of oo designSolid principles of oo design
Solid principles of oo design
Confiz
 
SOLID Principles part 2
SOLID Principles part 2SOLID Principles part 2
SOLID Principles part 2
Dennis van der Stelt
 
Programming In C++
Programming In C++ Programming In C++
Programming In C++
shammi mehra
 
SOLID Principles part 1
SOLID Principles part 1SOLID Principles part 1
SOLID Principles part 1
Dennis van der Stelt
 
Exception handling and templates
Exception handling and templatesException handling and templates
Exception handling and templates
farhan amjad
 
Inheritance, polymorphisam, abstract classes and composition)
Inheritance, polymorphisam, abstract classes and composition)Inheritance, polymorphisam, abstract classes and composition)
Inheritance, polymorphisam, abstract classes and composition)
farhan amjad
 
Memory Management In C++
Memory Management In C++Memory Management In C++
Memory Management In C++
ShriKant Vashishtha
 
MongoDB and hadoop
MongoDB and hadoopMongoDB and hadoop
MongoDB and hadoop
Steven Francia
 
Building Embedded Linux
Building Embedded LinuxBuilding Embedded Linux
Building Embedded Linux
Sherif Mousa
 
Building Apps with MongoDB
Building Apps with MongoDBBuilding Apps with MongoDB
Building Apps with MongoDB
Nate Abele
 
STL ALGORITHMS
STL ALGORITHMSSTL ALGORITHMS
STL ALGORITHMS
fawzmasood
 
Improving The Quality of Existing Software
Improving The Quality of Existing SoftwareImproving The Quality of Existing Software
Improving The Quality of Existing Software
Steven Smith
 
Operator overloading
Operator overloadingOperator overloading
Operator overloading
farhan amjad
 
C++ Advanced
C++ AdvancedC++ Advanced
C++ Advanced
Vivek Das
 
Bjarne Stroustrup - The Essence of C++: With Examples in C++84, C++98, C++11,...
Bjarne Stroustrup - The Essence of C++: With Examples in C++84, C++98, C++11,...Bjarne Stroustrup - The Essence of C++: With Examples in C++84, C++98, C++11,...
Bjarne Stroustrup - The Essence of C++: With Examples in C++84, C++98, C++11,...
Complement Verb
 
An Introduction to Part of C++ STL
An Introduction to Part of C++ STLAn Introduction to Part of C++ STL
An Introduction to Part of C++ STL
乐群 陈
 
Solid principles of oo design
Solid principles of oo designSolid principles of oo design
Solid principles of oo design
Confiz
 
Programming In C++
Programming In C++ Programming In C++
Programming In C++
shammi mehra
 
Exception handling and templates
Exception handling and templatesException handling and templates
Exception handling and templates
farhan amjad
 
Inheritance, polymorphisam, abstract classes and composition)
Inheritance, polymorphisam, abstract classes and composition)Inheritance, polymorphisam, abstract classes and composition)
Inheritance, polymorphisam, abstract classes and composition)
farhan amjad
 
Building Embedded Linux
Building Embedded LinuxBuilding Embedded Linux
Building Embedded Linux
Sherif Mousa
 
Ad

Similar to Web Service Basics and NWS Setup (20)

Xml.ppt
Xml.pptXml.ppt
Xml.ppt
praveen gautam
 
Web service- Guest Lecture at National Wokshop
Web service- Guest Lecture at National WokshopWeb service- Guest Lecture at National Wokshop
Web service- Guest Lecture at National Wokshop
Nishikant Taksande
 
Understanding Web Services by software outsourcing company india
Understanding Web Services by software outsourcing company indiaUnderstanding Web Services by software outsourcing company india
Understanding Web Services by software outsourcing company india
Jignesh Aakoliya
 
webservicearchitecture-150614164814-lva1-app6892.ppt
webservicearchitecture-150614164814-lva1-app6892.pptwebservicearchitecture-150614164814-lva1-app6892.ppt
webservicearchitecture-150614164814-lva1-app6892.ppt
Matrix823409
 
Web services overview
Web services overviewWeb services overview
Web services overview
SRM Institute of Science & Technology, Tiruchirappalli
 
Service Oriented Architecture Updated Luqman
Service Oriented Architecture Updated  LuqmanService Oriented Architecture Updated  Luqman
Service Oriented Architecture Updated Luqman
guesteb791b
 
Web services
Web servicesWeb services
Web services
aspnet123
 
UNIT II-WEB SERVICES (WS) AND PRIMITIVE
UNIT II-WEB SERVICES (WS)  AND PRIMITIVEUNIT II-WEB SERVICES (WS)  AND PRIMITIVE
UNIT II-WEB SERVICES (WS) AND PRIMITIVE
VahidhabanuY
 
Web Services
Web Services Web Services
Web Services
Nibha Jain
 
Web services SOAP Notes
Web services SOAP NotesWeb services SOAP Notes
Web services SOAP Notes
Sunil Kumar Gunasekaran
 
Web Programming
Web ProgrammingWeb Programming
Web Programming
VijayapriyaP1
 
Web services and SOA [Modified]
Web services and SOA [Modified]Web services and SOA [Modified]
Web services and SOA [Modified]
Subin Sugunan
 
Web services and SOA
Web services and SOAWeb services and SOA
Web services and SOA
Subin Sugunan
 
Exposing EJBs As Web Services
Exposing EJBs As Web ServicesExposing EJBs As Web Services
Exposing EJBs As Web Services
Subin Sugunan
 
WebService-Java
WebService-JavaWebService-Java
WebService-Java
halwal
 
SOA and web services
SOA and web servicesSOA and web services
SOA and web services
Sreekanth Narayanan
 
Enterprise Software Architecture
Enterprise Software ArchitectureEnterprise Software Architecture
Enterprise Software Architecture
rahmed_sct
 
webservices overview
webservices overviewwebservices overview
webservices overview
elliando dias
 
Xml web services
Xml web servicesXml web services
Xml web services
Raghu nath
 
Unit 3-SOA Technologies
Unit 3-SOA TechnologiesUnit 3-SOA Technologies
Unit 3-SOA Technologies
ssuser3a47cb
 
Web service- Guest Lecture at National Wokshop
Web service- Guest Lecture at National WokshopWeb service- Guest Lecture at National Wokshop
Web service- Guest Lecture at National Wokshop
Nishikant Taksande
 
Understanding Web Services by software outsourcing company india
Understanding Web Services by software outsourcing company indiaUnderstanding Web Services by software outsourcing company india
Understanding Web Services by software outsourcing company india
Jignesh Aakoliya
 
webservicearchitecture-150614164814-lva1-app6892.ppt
webservicearchitecture-150614164814-lva1-app6892.pptwebservicearchitecture-150614164814-lva1-app6892.ppt
webservicearchitecture-150614164814-lva1-app6892.ppt
Matrix823409
 
Service Oriented Architecture Updated Luqman
Service Oriented Architecture Updated  LuqmanService Oriented Architecture Updated  Luqman
Service Oriented Architecture Updated Luqman
guesteb791b
 
Web services
Web servicesWeb services
Web services
aspnet123
 
UNIT II-WEB SERVICES (WS) AND PRIMITIVE
UNIT II-WEB SERVICES (WS)  AND PRIMITIVEUNIT II-WEB SERVICES (WS)  AND PRIMITIVE
UNIT II-WEB SERVICES (WS) AND PRIMITIVE
VahidhabanuY
 
Web services and SOA [Modified]
Web services and SOA [Modified]Web services and SOA [Modified]
Web services and SOA [Modified]
Subin Sugunan
 
Web services and SOA
Web services and SOAWeb services and SOA
Web services and SOA
Subin Sugunan
 
Exposing EJBs As Web Services
Exposing EJBs As Web ServicesExposing EJBs As Web Services
Exposing EJBs As Web Services
Subin Sugunan
 
WebService-Java
WebService-JavaWebService-Java
WebService-Java
halwal
 
Enterprise Software Architecture
Enterprise Software ArchitectureEnterprise Software Architecture
Enterprise Software Architecture
rahmed_sct
 
webservices overview
webservices overviewwebservices overview
webservices overview
elliando dias
 
Xml web services
Xml web servicesXml web services
Xml web services
Raghu nath
 
Unit 3-SOA Technologies
Unit 3-SOA TechnologiesUnit 3-SOA Technologies
Unit 3-SOA Technologies
ssuser3a47cb
 
Ad

Recently uploaded (20)

Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptxIncreasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Anoop Ashok
 
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
 
How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?
Daniel Lehner
 
Role of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered ManufacturingRole of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered Manufacturing
Andrew Leo
 
tecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdftecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdf
fjgm517
 
Big Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur MorganBig Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur Morgan
Arthur Morgan
 
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Aqusag Technologies
 
Linux Support for SMARC: How Toradex Empowers Embedded Developers
Linux Support for SMARC: How Toradex Empowers Embedded DevelopersLinux Support for SMARC: How Toradex Empowers Embedded Developers
Linux Support for SMARC: How Toradex Empowers Embedded Developers
Toradex
 
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptxDevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
Justin Reock
 
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep DiveDesigning Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
ScyllaDB
 
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
Alan Dix
 
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-UmgebungenHCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
panagenda
 
Build Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For DevsBuild Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For Devs
Brian McKeiver
 
Quantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur MorganQuantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur Morgan
Arthur Morgan
 
Mobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi ArabiaMobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi Arabia
Steve Jonas
 
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath MaestroDev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
UiPathCommunity
 
Linux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdfLinux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdf
RHCSA Guru
 
How analogue intelligence complements AI
How analogue intelligence complements AIHow analogue intelligence complements AI
How analogue intelligence complements AI
Paul Rowe
 
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager APIUiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPathCommunity
 
Cyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of securityCyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of security
riccardosl1
 
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptxIncreasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Anoop Ashok
 
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
 
How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?
Daniel Lehner
 
Role of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered ManufacturingRole of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered Manufacturing
Andrew Leo
 
tecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdftecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdf
fjgm517
 
Big Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur MorganBig Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur Morgan
Arthur Morgan
 
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Aqusag Technologies
 
Linux Support for SMARC: How Toradex Empowers Embedded Developers
Linux Support for SMARC: How Toradex Empowers Embedded DevelopersLinux Support for SMARC: How Toradex Empowers Embedded Developers
Linux Support for SMARC: How Toradex Empowers Embedded Developers
Toradex
 
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptxDevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
Justin Reock
 
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep DiveDesigning Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
ScyllaDB
 
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
Alan Dix
 
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-UmgebungenHCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
panagenda
 
Build Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For DevsBuild Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For Devs
Brian McKeiver
 
Quantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur MorganQuantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur Morgan
Arthur Morgan
 
Mobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi ArabiaMobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi Arabia
Steve Jonas
 
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath MaestroDev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
UiPathCommunity
 
Linux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdfLinux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdf
RHCSA Guru
 
How analogue intelligence complements AI
How analogue intelligence complements AIHow analogue intelligence complements AI
How analogue intelligence complements AI
Paul Rowe
 
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager APIUiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPathCommunity
 
Cyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of securityCyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of security
riccardosl1
 

Web Service Basics and NWS Setup

  • 2. Table of Contents  What’s Web Service?  Why Web Service?  Architecture Overview  XML  SOAP  WSDL  NetSuite Web Service
  • 3. What’s Is Web Service?  Web services are application programming interfaces (API) or Web APIs that are accessed via some protocols like HTTP.  “Software application identified by a URI, whose interfaces and bindings are capable of being defined, described, and discovered as XML artifacts” – W3C Web Services Architecture Requirements, Oct. 2002
  • 4. Why Web Services?  Allow companies to reduce the cost of doing e- business, to deploy solutions faster  Need a common program-to-program communications model  Allow heterogeneous applications to be integrated more rapidly, easily and less expensively  Facilitate deploying and providing access to business functions over the Web
  • 5. XML  XML Inherited from SGML which is a markup language like HTML.  XML stands for Extensible Markup Language because we can Extend its capability.  XML uses parser to decode the file content. Example :-  <?xml version="1.0"?>  <note>  <to>Receiver</to>  <from>Sender </from>  <heading>Reminder</heading>  <body>Message Body!</body>  </note>
  • 6. SOAP: Simple Object Access Protocol  What is SOAP?  SOAP is a communication protocol  SOAP is for communication between applications  SOAP is a format for sending messages  SOAP is designed to communicate via Internet  SOAP is platform independent  SOAP is language independent  SOAP is based on XML  SOAP is simple and extensible  SOAP will be developed as a W3C standard
  • 7. SOAP Message Structure  Request and Response messages  Request invokes a method on a remote object  Response returns result of running the method  SOAP specification defines an “envelop”  “envelop” wraps the message itself  Message is a different vocabulary  Namespace prefix is used to distinguish the two parts Application-specific message vocabulary SOAP Envelop vocabulary
  • 8. SOAP Request Message <?xml version="1.0"?> <soap:Envelope xmlns:soap="http://www.w3.org/2001/12/soap-envelope" soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding"> <soap:Body xmlns:m="http://www.stock.org/stock"> </soap:Body> </soap:Envelope> <m:GetStockPrice> <m:StockName>IBM</m:StockName> </m:GetStockPrice> SOAP Envelope Message SOAP Envelope Namespace Message Namespace
  • 9. SOAP Response Message <?xml version="1.0"?> <soap:Envelope xmlns:soap="http://www.w3.org/2001/12/soap-envelope" soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding"> <soap:Body xmlns:m="http://www.stock.org/stock"> </soap:Body> </soap:Envelope> <m:GetStockPriceResponse> <m:Price>34.5</m:Price> </m:GetStockPriceResponse> SOAP Envelope Message Result returned in Body
  • 10. Web Services Description Language  What is WSDL?  WSDL is written in XML  WSDL is an XML document  WSDL is used to describe Web services  WSDL is also used to locate Web services  WSDL is not yet a W3C standard  Operational information about the service  Location of the service  Service interface  Implementation details for the service interface
  • 11. WSDL Document Structure (1/2)  <portType> element  Defines a web service, the operations that can be performed, and the messages that are involved  <message> element  Defines the data elements of an operation  consists of one or more parts.  The parts can be compared to the parameters of a function call in a traditional programming language
  • 12. WSDL Document Structure (2/2)  <types> element  Defines the data type that are used by the web service  For maximum platform neutrality, WSDL uses XML Schema syntax to define data types  <binding> element  Defines the message format and communication protocols used by the web service
  • 13. NetSuite WSDL  <defination xmlns:..>  <types>  <xsd:schema xmlns:xsd=“http://www.w3.org/2001/XMLSchema”>  <xsd:import namespace=“ “ schemaLocation=“ ”>  <xsd:import namespace=“ “ schemaLocation=“ ”>  ……….  </xsd:schema>  </types>  <message name=“ ”>  <part name =“ “ element =“ ”>  </message>  <portType name=“NetSuitePortType”>  <operation name=“Login”>  <input name = “ login Request” message=“tns:loginRequest”>  <outpur name=“loginResponse” message=“tns:loginResponse”>  </operation>  </portType>
  • 14. WSDL Continuation  <binding name="NetSuiteBinding" type="tns:NetSuitePortType">  <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>  <operation name="login">  <soap:operation soapAction="login"/>  <input name="loginRequest">  <soap:header message="tns:headers" part="applicationInfo" use="literal"/>  <soap:header message="tns:headers" part="partnerInfo" use="literal"/>  <soap:body use="literal"/>  </input>  <output name="loginResponse">  <soap:body use="literal"/>  </output>  <fault name="InsufficientPermissionFault">  <soap:fault name="InsufficientPermissionFault" use="literal"/>  </fault>  </operation>  </binding>  <service name="NetSuiteService">  <port name="NetSuitePort" binding="tns:NetSuiteBinding">  <soap:address location="https://webservices.netsuite.com/services/NetSuitePort_2012_2"/>  </port>  </service>  </definitions>
  • 15. XML Schema Definition (XSD)  An XML schema describes the structure of an XML document. NetSuite XSD’s:- 1>core.xsd, 2>messages.xsd, 3>faults.xsd, 4>common.xsd etc.
  • 17. Web Service Model (2/3)  Roles in Web Service architecture  Service provider  Owner of the service  Platform that hosts access to the service  Service requestor  Business that requires certain functions to be satisfied  Application looking for and invoking an interaction with a service  Service registry  Searchable registry of service descriptions where service providers publish their service descriptions
  • 18. Web Service Model (3/3)  Operations in a Web Service Architecture  Publish  Service descriptions need to be published in order for service requestor to find them  Find  Service requestor retrieves a service description directly or queries the service registry for the service required  Bind  Service requestor invokes or initiates an interaction with the service at runtime
  • 19. NetSuite WebServices  General Setup (UI) :-  To enable the Web services feature: 1. As administrator, click Setup > Company > Enable Features. 2. Click the SuiteCloud tab. 3. Select the Web Services check box. 4. Click Save.  Enable Show Internal ID from :- 1. Home > Set Preferences. 2. Click the General Tab. 3. check the Show Internal IDs box.
  • 20. NetSuite IDE Setup  Project Setup :- 1> Install the IDE ( Visual Studio or Eclipse). 2> Create a New Project. 3> Add Web Reference. Using Below given URL’s  WSDL URL :- https://webservices.netsuite.com/wsdl/v2012_2_0/netsuite.wsdl  SOAP URL :- https://webservices.netsuite.com/services/NetSuitePort_2012_2 Note :- Use dynamic method to get the correct service url’s by getDataCenterUrls() api.  WebService Listener :- https://webservice.na1.netsuite.com  Schema Browser (For Reference):- https://system.netsuite.com/help/helpcenter/en_US/SchemaBrowser/indexv2012_2_0.html
  • 21. Web Services Class and API’s  “NetSuiteService” Class is a primary Class exposed by NetsuiteWeb Interface.  It has exposed Events and API’s Example :- add, delete, update, initialize get, search etc.