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

More Related Content

What's hot

Web Service Implementation Using ASP.NET
Web Service Implementation Using ASP.NETWeb Service Implementation Using ASP.NET
Web Service Implementation Using ASP.NETPonraj
 
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 servicesNeil 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 LuqmanLuqman 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
 
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
 
Develop ASP.Net Web Service
Develop ASP.Net Web Service Develop ASP.Net Web Service
Develop ASP.Net Web Service
Safaa Farouk
 

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
 
Java web services
Java web servicesJava web services
Java web services
 
Webservices
WebservicesWebservices
Webservices
 
Web service Introduction
Web service IntroductionWeb service Introduction
Web service Introduction
 
web service technologies
web service technologiesweb service technologies
web service technologies
 
Intro to web services
Intro to web servicesIntro to web services
Intro to web services
 
Understanding Web services
Understanding Web servicesUnderstanding Web services
Understanding Web services
 
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
 
Web services
Web servicesWeb services
Web services
 
SOA - From Webservices to APIs
SOA - From Webservices to APIsSOA - From Webservices to APIs
SOA - From Webservices to APIs
 
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
 
Service Oriented Architecture Luqman
Service Oriented Architecture LuqmanService Oriented Architecture Luqman
Service Oriented Architecture Luqman
 
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
 
Soap web service
Soap web serviceSoap web service
Soap web service
 
Web service
Web serviceWeb service
Web service
 
Cloud computing by Luqman
Cloud computing by LuqmanCloud computing by Luqman
Cloud computing by Luqman
 
Web services
Web servicesWeb services
Web services
 
Web service introduction 2
Web service introduction 2Web service introduction 2
Web service introduction 2
 
Develop ASP.Net Web Service
Develop ASP.Net Web Service Develop ASP.Net Web Service
Develop ASP.Net Web Service
 
Web Services ppt
Web Services pptWeb Services ppt
Web Services ppt
 

Viewers also liked

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 overloadingfarhan amjad
 
C++ Advanced
C++ AdvancedC++ Advanced
C++ AdvancedVivek 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 templatesfarhan 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
 
Building Embedded Linux
Building Embedded LinuxBuilding Embedded Linux
Building Embedded LinuxSherif Mousa
 

Viewers also liked (20)

Building Apps with MongoDB
Building Apps with MongoDBBuilding Apps with MongoDB
Building Apps with MongoDB
 
STL ALGORITHMS
STL ALGORITHMSSTL ALGORITHMS
STL ALGORITHMS
 
Distributed Systems Design
Distributed Systems DesignDistributed Systems Design
Distributed Systems Design
 
The Style of C++ 11
The Style of C++ 11The Style of C++ 11
The Style of C++ 11
 
Idiomatic C++
Idiomatic C++Idiomatic C++
Idiomatic C++
 
Improving The Quality of Existing Software
Improving The Quality of Existing SoftwareImproving The Quality of Existing Software
Improving The Quality of Existing Software
 
Operator overloading
Operator overloadingOperator overloading
Operator overloading
 
C++ Advanced
C++ AdvancedC++ Advanced
C++ Advanced
 
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,...
 
Operator overloading
Operator overloading Operator overloading
Operator overloading
 
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
 
SOLID Principles part 2
SOLID Principles part 2SOLID Principles part 2
SOLID Principles part 2
 
Programming In C++
Programming In C++ Programming In C++
Programming In C++
 
SOLID Principles part 1
SOLID Principles part 1SOLID Principles part 1
SOLID Principles part 1
 
Exception handling and templates
Exception handling and templatesException handling and templates
Exception handling and templates
 
Inheritance, polymorphisam, abstract classes and composition)
Inheritance, polymorphisam, abstract classes and composition)Inheritance, polymorphisam, abstract classes and composition)
Inheritance, polymorphisam, abstract classes and composition)
 
Memory Management In C++
Memory Management In C++Memory Management In C++
Memory Management In C++
 
MongoDB and hadoop
MongoDB and hadoopMongoDB and hadoop
MongoDB and hadoop
 
Building Embedded Linux
Building Embedded LinuxBuilding Embedded Linux
Building Embedded Linux
 

Similar to Web Service Basics and NWS Setup

Xml.ppt
Xml.pptXml.ppt
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 WokshopNishikant 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
 
Web services overview
Web services overviewWeb services overview
Service Oriented Architecture Updated Luqman
Service Oriented Architecture Updated  LuqmanService Oriented Architecture Updated  Luqman
Service Oriented Architecture Updated Luqmanguesteb791b
 
Web services
Web servicesWeb services
Web servicesaspnet123
 
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 Architecturerahmed_sct
 
webservices overview
webservices overviewwebservices overview
webservices overviewelliando dias
 
Xml web services
Xml web servicesXml web services
Xml web servicesRaghu nath
 
Unit 3-SOA Technologies
Unit 3-SOA TechnologiesUnit 3-SOA Technologies
Unit 3-SOA Technologies
ssuser3a47cb
 
Build Message-Based Web Services for SOA
Build Message-Based Web Services for SOABuild Message-Based Web Services for SOA
Build Message-Based Web Services for SOA
Jeffrey Hasan
 
WS-Addressing: Enabling Transport-Neutral Message Addressing and Correlation
WS-Addressing: Enabling Transport-Neutral Message Addressing and CorrelationWS-Addressing: Enabling Transport-Neutral Message Addressing and Correlation
WS-Addressing: Enabling Transport-Neutral Message Addressing and Correlation
Jeffrey Hasan
 

Similar to Web Service Basics and NWS Setup (20)

Xml.ppt
Xml.pptXml.ppt
Xml.ppt
 
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
 
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
 
Web services overview
Web services overviewWeb services overview
Web services overview
 
Service Oriented Architecture Updated Luqman
Service Oriented Architecture Updated  LuqmanService Oriented Architecture Updated  Luqman
Service Oriented Architecture Updated Luqman
 
Web services
Web servicesWeb services
Web services
 
Web Services
Web Services Web Services
Web Services
 
Web services SOAP Notes
Web services SOAP NotesWeb services SOAP Notes
Web services SOAP Notes
 
Web Programming
Web ProgrammingWeb Programming
Web Programming
 
Web services and SOA [Modified]
Web services and SOA [Modified]Web services and SOA [Modified]
Web services and SOA [Modified]
 
Web services and SOA
Web services and SOAWeb services and SOA
Web services and SOA
 
Exposing EJBs As Web Services
Exposing EJBs As Web ServicesExposing EJBs As Web Services
Exposing EJBs As Web Services
 
WebService-Java
WebService-JavaWebService-Java
WebService-Java
 
SOA and web services
SOA and web servicesSOA and web services
SOA and web services
 
Enterprise Software Architecture
Enterprise Software ArchitectureEnterprise Software Architecture
Enterprise Software Architecture
 
webservices overview
webservices overviewwebservices overview
webservices overview
 
Xml web services
Xml web servicesXml web services
Xml web services
 
Unit 3-SOA Technologies
Unit 3-SOA TechnologiesUnit 3-SOA Technologies
Unit 3-SOA Technologies
 
Build Message-Based Web Services for SOA
Build Message-Based Web Services for SOABuild Message-Based Web Services for SOA
Build Message-Based Web Services for SOA
 
WS-Addressing: Enabling Transport-Neutral Message Addressing and Correlation
WS-Addressing: Enabling Transport-Neutral Message Addressing and CorrelationWS-Addressing: Enabling Transport-Neutral Message Addressing and Correlation
WS-Addressing: Enabling Transport-Neutral Message Addressing and Correlation
 

Recently uploaded

LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
DianaGray10
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
Elena Simperl
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
Paul Groth
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
Elena Simperl
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
DianaGray10
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
RTTS
 

Recently uploaded (20)

LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 

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.