SlideShare a Scribd company logo
1 of 23
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

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 MongoDBNate Abele
 
STL ALGORITHMS
STL ALGORITHMSSTL ALGORITHMS
STL ALGORITHMSfawzmasood
 
Improving The Quality of Existing Software
Improving The Quality of Existing SoftwareImproving The Quality of Existing Software
Improving The Quality of Existing SoftwareSteven 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
 
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 designConfiz
 
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 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
 
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

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 indiaJignesh Aakoliya
 
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 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 SOASubin Sugunan
 
Exposing EJBs As Web Services
Exposing EJBs As Web ServicesExposing EJBs As Web Services
Exposing EJBs As Web ServicesSubin Sugunan
 
WebService-Java
WebService-JavaWebService-Java
WebService-Javahalwal
 
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 Technologiesssuser3a47cb
 
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 SOAJeffrey 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 CorrelationJeffrey 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

Generative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdfGenerative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdfalexjohnson7307
 
State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!Memoori
 
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptxHarnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptxFIDO Alliance
 
The Metaverse: Are We There Yet?
The  Metaverse:    Are   We  There  Yet?The  Metaverse:    Are   We  There  Yet?
The Metaverse: Are We There Yet?Mark Billinghurst
 
How we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfHow we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfSrushith Repakula
 
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider  Progress from Awareness to Implementation.pptxTales from a Passkey Provider  Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider Progress from Awareness to Implementation.pptxFIDO Alliance
 
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...FIDO Alliance
 
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...panagenda
 
Working together SRE & Platform Engineering
Working together SRE & Platform EngineeringWorking together SRE & Platform Engineering
Working together SRE & Platform EngineeringMarcus Vechiato
 
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on ThanabotsContinuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on ThanabotsLeah Henrickson
 
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdfSimplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdfFIDO Alliance
 
Introduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptxIntroduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptxFIDO Alliance
 
TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024Stephen Perrenod
 
Event-Driven Architecture Masterclass: Challenges in Stream Processing
Event-Driven Architecture Masterclass: Challenges in Stream ProcessingEvent-Driven Architecture Masterclass: Challenges in Stream Processing
Event-Driven Architecture Masterclass: Challenges in Stream ProcessingScyllaDB
 
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...FIDO Alliance
 
Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Patrick Viafore
 
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdfIntroduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdfFIDO Alliance
 
AI mind or machine power point presentation
AI mind or machine power point presentationAI mind or machine power point presentation
AI mind or machine power point presentationyogeshlabana357357
 
Intro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptxIntro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptxFIDO Alliance
 
ADP Passwordless Journey Case Study.pptx
ADP Passwordless Journey Case Study.pptxADP Passwordless Journey Case Study.pptx
ADP Passwordless Journey Case Study.pptxFIDO Alliance
 

Recently uploaded (20)

Generative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdfGenerative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdf
 
State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!
 
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptxHarnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
 
The Metaverse: Are We There Yet?
The  Metaverse:    Are   We  There  Yet?The  Metaverse:    Are   We  There  Yet?
The Metaverse: Are We There Yet?
 
How we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfHow we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdf
 
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider  Progress from Awareness to Implementation.pptxTales from a Passkey Provider  Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
 
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
 
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
 
Working together SRE & Platform Engineering
Working together SRE & Platform EngineeringWorking together SRE & Platform Engineering
Working together SRE & Platform Engineering
 
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on ThanabotsContinuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
 
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdfSimplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
 
Introduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptxIntroduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptx
 
TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024
 
Event-Driven Architecture Masterclass: Challenges in Stream Processing
Event-Driven Architecture Masterclass: Challenges in Stream ProcessingEvent-Driven Architecture Masterclass: Challenges in Stream Processing
Event-Driven Architecture Masterclass: Challenges in Stream Processing
 
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
 
Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024
 
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdfIntroduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
 
AI mind or machine power point presentation
AI mind or machine power point presentationAI mind or machine power point presentation
AI mind or machine power point presentation
 
Intro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptxIntro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptx
 
ADP Passwordless Journey Case Study.pptx
ADP Passwordless Journey Case Study.pptxADP Passwordless Journey Case Study.pptx
ADP Passwordless Journey Case Study.pptx
 

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.