WebServices Notes by Sekhar Sir JavabynataraJ

download WebServices Notes by Sekhar Sir JavabynataraJ

of 161

description

Web Services

Transcript of WebServices Notes by Sekhar Sir JavabynataraJ

  • Web Services

  • ~- ~ ~.~ -- .. . . ...

    WEB-SERVICES [Intro) By Mr. SekharReddy ., i ; Q.) What is distributed technology?

    I ' I

    A technology is said to be distributed i f it's business objects are geographically dispersed i I (across multiple JVM's) and st111 communicating one another. ' I

    Q.) Why distributed technology?

    I-) Load balancing

    I High Availability

    I-:, High Processing

    Q.) What are different distributed technologies?

    I > There are so many distributed technologies o CORBA o RMI o EJB o WEB SERVICES ... etc.

    .&

    CORBA > More complexity in the implementation

    I - > Heavy weight Language dependent

    I > Commercial I :, Plat from independent

    RMI I > Lack of Enterprise services/Middle ware services I > Open source I IVo acknowledgement , # I > Language dependent I > Plat from independent

    E3 B I-> Supports Enterprise services/Middle ware services in the declarative manner

    Having multiple flavors of APIs t o handle different requirements o Session beans

    Stateless Stateful

    o Entity beans(not using now) = JPA

    o Message Driven Beans -- !

    Naresh i Technologies, Opp. Satyam Theatre, Ameerpet, Hyderabad, Ph: 040-23746666,23734842 An IS0 9001 : 2000 Certified Company I

    . . . . . . . . . . . . . . . . . . .- - . . . . .. . . -, . . . - - . . - . - - - .- . . .. . .- - - - -- . . - - - .- .- . . . .

    Page 1 -

    http://javabynataraj.blogspot.com 2

  • . . - ~ - ~ .. - - ...p-p.p....p-.pp-

    WEB-SERVICES (Intro) By Mr. ~ e k h a r ~ e d d v ~ ~ . ~ ~ ! I > Managed by Application server

    Robust I Heavy weight c> Language Dependent G Plat from independent

    WEB SERVICES I-? Supports Enterprise services I > Interoperable (Language independent & Plat from independent)

    So, Web services is interoperable distributed technology I ! 1

    Q.) What we require if two persons need to communicate?

    1 .) Two persons @ I I 2.) Medium

    3.) Language 4.) RuIes(protocoI)

    I

    Web services architecture I f two applications needs to communicate

    a Both the applications should be connected (network) e Both application needs to communicate by following some rules(protocols)

    o H r r P o FTP o SMTP ... etc.

    r:, To communicate language is required(Neutra1 language) o XML

    - --

    ~ a G s h i Technologies, Opp. Satyam Theatre, Arneerpet, Hyderabad, Ph: 040-23746666,23734842 . . . . . . . . . . -. . - - - - - - -

    An I S 0 9001 : 2000 Certified Company P~@Z---

    http://javabynataraj.blogspot.com 3

  • - -. --ppp-p..-- --

    WEB-SERVICES (Introl Bv Mr. ~ e k h a r ~ F d x F T I 1

    SMTP

    I In the internet world we prefer t o use H-TTP protocol, and we have so many technologies ,, which supports HlTP protocol. I

    X I

    I > Lets assume that we are sending employee information form "Consumer" to "Provider" in the XML format as follows. i

    I

    ysreddy +.-..- - __.__.L.---'

    Authentication Data * * * * * *

  • ,,,'

    ,.,;,- Authentication Data ,,,,,, ,,.. ,,, ,,'

    ,,I'

    ,.,.,'' ,,.,

    ysreddy:::-. . ,, ,,,... ,,,, ,,,,, I, ,111 ..__> ,,,, , 1

    ,,,' ,,,"

    **** **

  • .- ~~ - ~ - - -

    WEB-SERVICES (Intro) Bv Mr. SekharReddv-- 1

    .;t, "WSDL" is the document which explains the services information. But how can I "Consumer" get that WSDL document, from where "Consumer" get? i

    L-:, So "WSDL" documents has to be placed in some location from where "Consumer" can access them, that location is nothing but "UDDI"

    I I

    ~2 UDDI stands for Universal Description Discovery and Integration I UDDI is the Registry where all the WSDL documents are registered ' I , ' I UDDI should be interoperable, so it is also developed in XPIL \ I r2 UDDI registry also called XlYL registry I

    -

    I

    i i ~.

    Naresh i Technologies, Opp. Satyam Theatre, Ari~eerpet, Hyderabad, Ph: 040-23746666,23734842 An IS0 9001 : 2000 Certified Company I

    ~ . - -. .-

    i Page 5 ' -

    http://javabynataraj.blogspot.com 6

  • 2. ) What is WS-I? The WS-I (Web Services Interoperability) Organization is an association of I T industry compa~iies, including IBM and Microsoft, that aim to create Web services specifications that all companies can use.

    4.) What are the different standards given by WS-I to implement Web services ? r3 WS-I has given

    o Basic Profile 1.0 (BP 1.0) o Basic Profile 1.1 (BP 1 .l) o Basic Profile 2.0 (BP 2.0)

    Naresh i Technologies, Opp. Satyam Theatre, Ameerpet, Hyderabad, Ph: 040-23746666,23734842 An I S 0 9001 : 2000 Certified Company

    . - - - - - -- -

    Pa=-6- http://javabynataraj.blogspot.com 7

  • , - - - ~

    WEB-SERVICES (Intro) By Mr. S e k h a r R e d d v . ,

    I Q.) What are Web services? I

    I-:, Web services is a software application that confirms the WS-1's given speicifiations( BP -.I

    l.O/BP l . l / B P 2.0) is said t o be web services. I I I I 13 Any program that is distributed in nature, language independent and plat form neutral is \ said to be web services.

    I I -

    I I There so many API's, Implementations for the WS-I given standards 1

    ~3 Sun has released "JAX-RPC" API that follows BP 1.0 standard Sun has released "JAX-WS" API that follows BP 1 . 1 standard

    JAX-RPC -4 ,AX-ws I

    JAX-RPC : Java APIs for XML-based Remote Procedure Call

    JAX-WS : Java API fo r XPlL Web Services

    JAX-P : Java API for XML Processing

    JAX-B : Java Architecture for XML Binding I i -

    JAX-R : Java API for XML Registries 1 SAAJ : SOAP with Attachments API for Java 1

    .-

    1 Naresh i Technologies, Opp. Satyam Theatre, Ameerpet, Hyderabad, Ph: 040-23746666,23734842 I

    I . - . -. . - - - -. -. . --

    An IS0 9001 : 2000 Certified Company p a g e - 7 -

    Implementation (from different companies)

    -- -- . -- --

    Specification (froni WS-I)

    API (from Sun microsystem)

    http://javabynataraj.blogspot.com 8

  • . . . . ~

    . WEB-SERVICES [Intro) By Mr. ~ekharkeddf

    JAX-WS RI(from Sun) BP 1.1 JAX-WS Apache-Axis2(from ASF)

    Metro(from Sun) CXF(from ASF) ... etc.

    - - - -- - -- - -- - - pp -

    BP 1.0

    NOTE: JAX-WS RI(Reference Implementation) was fa~led to access by .Net, means fa~led in interoperability. Sun then released "metro" implementation of JAX-WS, which resolved interoperab~lity problem and also added some more features.

    i i NOTE: Apache CXF internally uses spring.

    - --

    JAX-RPC

    ! Web Services Development

    -- ----

    JAX-RPC-SI(from sun) ... Apache-Axis(from ASF) etc

    I I Web services development can done in two ways

    1. Contract first(top-down) approach 2. Contract last(bottom-up) approach

    -

    I , Contract first A ~ ~ r o a c h -

    ! WSDL + Services ! - I

    Contract last Amroach 1 I

    I ' Services + WSDL I I , NOTE:

    ~3 Services can be developed with any technology like .Net, Java, Php ... etc ...

    ' d I n java, Services can be developed using any API like JAX-RPC, JAX-WS, RESTFUL etc.. ... I ~3 I n java, Services can be developed using any implementations like sun, apache etc..

    I I But WSDL development is unique, it's not plat form specific, not language specific, not technology specific, not API specific, not implementation specific.

    , So, we can say we are developing web services using I > JAX-RPC, Contract first approach

    I I 3 JAX-RPC , Contract last approach I I

    I NOTE: I n the internet world w& prefer to use HlTP protocol, and we have so many technologies I

    / which supports HlTP protocol. - I ! Q.) What are the HTTP protocols implemented API's? ( 1. Servlet API

    2. EJB API i I I

    Naresh i Technologies, opp. Satyarn Theatre, Ameerpet, Hyderabad, Ph: 040-23746666,23734842 1 I 1 An IS0 9001 : 2000 Certified Company

    -. . . . . . . . . . . . . . . . . . . . . . . . . . .-....... --

    I Pa ge8--. , http://javabynataraj.blogspot.com 9

  • --- --

    WEB-SERVICES (lntro'l--- Bv Mr. ~ e k h a r ~ e d T l t 7

    ' Q.) W h a t is e n d p o i n t ? 1 I, A component which receives "Consumer" request

    I, I n general we use either servlet or ejb as an End Po~nt. So, we can say we are developing web services using

    I > JAX-RPC, Servlet end point url, Contract first approach 1 > JAX-RPC, EJB end point url, Contract last approach

    I

    i MEP 1 MEP stands for ~ e s s a g d ~ x c h a n g i n g Patterns

    1

    r3 " C o n s ~ ~ r n e r ~ ~ can communicate with "Provider" in three ways o Synchronous request-reply o Asynchronous request-reply

    I I o Fire and forget

    I I Synchronous reques t - rep ly I 0 I n this "Consumer" sends the request t o "Provider", and "Consumer" blocks until response I

    comes back from the "Provider", Until response comes back "Consumer" can't proceed. I

    After Response Received, continues i ts process ......

    Asvnch ronous reauest-re~ly 1 I I

    e In this "Consumer" sends the.request t o "Provider", and "Consumer" will not wait until it ' gets the response. I

    I > After request sent t o the "Provider" it continues its flow of execution I "Consumer" will have "Response L is tener " which listens the response from the

    "Provider". - i

    I Naresh i Technologies, Opp. Satyam Theatre, Ameerpet, Hyderabad, Ph: 040-23746666,23734842

    An I S 0 9001 : 2000 Certified Company i - - - - -

    I .-,

    Page 9 http://javabynataraj.blogspot.com 10

  • http://javabynataraj.blogspot.com 11

  • http://javabynataraj.blogspot.com 12

  • http://javabynataraj.blogspot.com 13

  • http://javabynataraj.blogspot.com 14

  • http://javabynataraj.blogspot.com 15

  • http://javabynataraj.blogspot.com 16

  • http://javabynataraj.blogspot.com 17

  • http://javabynataraj.blogspot.com 18

  • http://javabynataraj.blogspot.com 19

  • http://javabynataraj.blogspot.com 20

  • http://javabynataraj.blogspot.com 21

  • http://javabynataraj.blogspot.com 22

  • http://javabynataraj.blogspot.com 23

  • http://javabynataraj.blogspot.com 24

  • http://javabynataraj.blogspot.com 25

  • http://javabynataraj.blogspot.com 26

  • http://javabynataraj.blogspot.com 27

  • http://javabynataraj.blogspot.com 28

  • http://javabynataraj.blogspot.com 29

  • http://javabynataraj.blogspot.com 30

  • http://javabynataraj.blogspot.com 31

  • http://javabynataraj.blogspot.com 32

  • http://javabynataraj.blogspot.com 33

  • http://javabynataraj.blogspot.com 34

  • http://javabynataraj.blogspot.com 35

  • http://javabynataraj.blogspot.com 36

  • http://javabynataraj.blogspot.com 37

  • http://javabynataraj.blogspot.com 38

  • http://javabynataraj.blogspot.com 39

  • http://javabynataraj.blogspot.com 40

  • http://javabynataraj.blogspot.com 41

  • http://javabynataraj.blogspot.com 42

  • http://javabynataraj.blogspot.com 43

  • http://javabynataraj.blogspot.com 44

  • http://javabynataraj.blogspot.com 45

  • http://javabynataraj.blogspot.com 46

  • http://javabynataraj.blogspot.com 47

  • http://javabynataraj.blogspot.com 48

  • http://javabynataraj.blogspot.com 49

  • http://javabynataraj.blogspot.com 50

  • http://javabynataraj.blogspot.com 51

  • http://javabynataraj.blogspot.com 52

  • http://javabynataraj.blogspot.com 53

  • http://javabynataraj.blogspot.com 54

  • http://javabynataraj.blogspot.com 55

  • http://javabynataraj.blogspot.com 56

  • http://javabynataraj.blogspot.com 57

  • http://javabynataraj.blogspot.com 58

  • http://javabynataraj.blogspot.com 59

  • http://javabynataraj.blogspot.com 60

  • http://javabynataraj.blogspot.com 61

  • http://javabynataraj.blogspot.com 62

  • http://javabynataraj.blogspot.com 63

  • http://javabynataraj.blogspot.com 64

  • http://javabynataraj.blogspot.com 65

  • http://javabynataraj.blogspot.com 66

  • http://javabynataraj.blogspot.com 67

  • http://javabynataraj.blogspot.com 68

  • http://javabynataraj.blogspot.com 69

  • http://javabynataraj.blogspot.com 70

  • http://javabynataraj.blogspot.com 71

  • http://javabynataraj.blogspot.com 72

  • http://javabynataraj.blogspot.com 73

  • http://javabynataraj.blogspot.com 74

  • http://javabynataraj.blogspot.com 75

  • http://javabynataraj.blogspot.com 76

  • http://javabynataraj.blogspot.com 77

  • http://javabynataraj.blogspot.com 78

  • http://javabynataraj.blogspot.com 79

  • http://javabynataraj.blogspot.com 80

  • http://javabynataraj.blogspot.com 81

  • http://javabynataraj.blogspot.com 82

  • http://javabynataraj.blogspot.com 83

  • http://javabynataraj.blogspot.com 84

  • http://javabynataraj.blogspot.com 85

  • http://javabynataraj.blogspot.com 86

  • http://javabynataraj.blogspot.com 87

  • http://javabynataraj.blogspot.com 88

  • http://javabynataraj.blogspot.com 89

  • http://javabynataraj.blogspot.com 90

  • http://javabynataraj.blogspot.com 91

  • http://javabynataraj.blogspot.com 92

  • http://javabynataraj.blogspot.com 93

  • http://javabynataraj.blogspot.com 94

  • http://javabynataraj.blogspot.com 95

  • http://javabynataraj.blogspot.com 96

  • http://javabynataraj.blogspot.com 97

  • http://javabynataraj.blogspot.com 98

  • http://javabynataraj.blogspot.com 99

  • http://javabynataraj.blogspot.com 100

  • http://javabynataraj.blogspot.com 101

  • http://javabynataraj.blogspot.com 102

  • http://javabynataraj.blogspot.com 103

  • http://javabynataraj.blogspot.com 104

  • http://javabynataraj.blogspot.com 105

  • http://javabynataraj.blogspot.com 106

  • http://javabynataraj.blogspot.com 107

  • http://javabynataraj.blogspot.com 108

  • http://javabynataraj.blogspot.com 109

  • http://javabynataraj.blogspot.com 110

  • http://javabynataraj.blogspot.com 111

  • http://javabynataraj.blogspot.com 112

  • http://javabynataraj.blogspot.com 113

  • http://javabynataraj.blogspot.com 114

  • http://javabynataraj.blogspot.com 115

  • http://javabynataraj.blogspot.com 116

  • http://javabynataraj.blogspot.com 117

  • http://javabynataraj.blogspot.com 118

  • http://javabynataraj.blogspot.com 119

  • http://javabynataraj.blogspot.com 120

  • http://javabynataraj.blogspot.com 121

  • http://javabynataraj.blogspot.com 122

  • http://javabynataraj.blogspot.com 123

  • http://javabynataraj.blogspot.com 124

  • http://javabynataraj.blogspot.com 125

  • http://javabynataraj.blogspot.com 126

  • http://javabynataraj.blogspot.com 127

  • http://javabynataraj.blogspot.com 128

  • http://javabynataraj.blogspot.com 129

  • http://javabynataraj.blogspot.com 130

  • http://javabynataraj.blogspot.com 131

  • http://javabynataraj.blogspot.com 132

  • http://javabynataraj.blogspot.com 133

  • http://javabynataraj.blogspot.com 134

  • http://javabynataraj.blogspot.com 135

  • http://javabynataraj.blogspot.com 136

  • http://javabynataraj.blogspot.com 137

  • http://javabynataraj.blogspot.com 138

  • http://javabynataraj.blogspot.com 139

  • http://javabynataraj.blogspot.com 140

  • http://javabynataraj.blogspot.com 141

  • http://javabynataraj.blogspot.com 142

  • http://javabynataraj.blogspot.com 143

  • http://javabynataraj.blogspot.com 144

  • http://javabynataraj.blogspot.com 145

  • http://javabynataraj.blogspot.com 146

  • http://javabynataraj.blogspot.com 147

  • http://javabynataraj.blogspot.com 148

  • http://javabynataraj.blogspot.com 149

  • http://javabynataraj.blogspot.com 150

  • http://javabynataraj.blogspot.com 151

  • http://javabynataraj.blogspot.com 152

  • http://javabynataraj.blogspot.com 153

  • http://javabynataraj.blogspot.com 154

  • http://javabynataraj.blogspot.com 155

  • http://javabynataraj.blogspot.com 156

  • http://javabynataraj.blogspot.com 157

  • http://javabynataraj.blogspot.com 158

  • http://javabynataraj.blogspot.com 159

  • http://javabynataraj.blogspot.com 160

  • http://javabynataraj.blogspot.com 161