throbber
(19) United States
`(12) Patent Application Publication (10) Pub. No.: US 2008/0140861 A1
`
` Kothari et al. (43) Pub. Date: Jun. 12, 2008
`
`
`US 20080140861A1
`
`(54) WEB SERVICES MULTI—PROTOCOL
`SUPPORT
`
`(75)
`
`Inventors:
`
`Pankaj Kothari, Bangalore (IN);
`Avinash Atreya, Bangalor (IN)
`
`Correspondence Address:
`BEYER WEAVER LLP/Yahoo
`P'O' BOX 70250
`OAKLAND: CA 94612'0250
`
`.
`(73) Ass1gnee:
`
`Yahoo! Inc-
`
`(21) Appl. No.:
`
`11/567,375
`
`(22)
`
`Filed:
`
`Dec. 6, 2006
`
`Publication Classification
`
`(51)
`
`Int. Cl.
`G06F 15/16
`(2006.01)
`(52) US. Cl. ........................................................ 709/246
`(57)
`ABSTRACT
`
`A solution is provided wherein a single service implementa-
`tion may be exposed to users as two or more different web
`service protocols. The service then appears to the user to be
`utilizing a desired protocol even though the service itself is
`potentially operating under a different protocol. A gateway
`may be utilized that maintains mappings between the sup-
`ported protocols. When a user sends a request to a particular
`service, the gateway may determine whether the request is in
`the format of the protocol utilized by the underlying web
`service. If not, the gateway may convert the format to match
`the correct protocol. An embodiment is also possible where a
`single endpoint is utilized for multiple services having mul-
`tiple protocols. This may be coupled with an ability to detect
`a protocol automatically from request contents, thus seam-
`lessly integrating multiple protocols into a user’s experience.
`
`204
`202
`,
`/
`4
`/
`
`/Z/
`,//[//
`
`
`
`REST
`
`User
`
`
`
`diREST Response—
`
`REST Request!»
`
`
`
`
`
`REST/SOAP
`Endpoint
`(Gateway)
`
`
`
`210
`/
`
`x/f/
`/ /
`
`200
`/
`
`/7/
`/ z/
`
`
`
`REST Requestgb
`
`{iREST Responsei
`\\ \
`\§\\
`212
`
`
`
`
`
`REST
`Web Service
`
`TELESIGN EX1014
`
`Page 1
`
`206
`
`/Z/
`/ V
`
`SOAP
`User
`
`208
`4/
`
`’
`SOAP Request!»
`HSOAP Responsei
`\ \
`\§\\
`214
`
`
`
`TELESIGN EX1014
`Page 1
`
`

`

`
`
`REST
`User
`
`4
`
`
`
`104
`
`41/"
`I
`
`
`
`SOAP
`User
`
`4
`
`
`
`
`
`REST Requestgv
`REST Response
`\\$\
`1\14
`
`REST/SOAP
`Endpoint
`(Gateway)
`
`
`
`
`
`Patent Application Publication
`
`Jun. 12, 2008 Sheet 1 0f 4
`
`US 2008/0140861 A1
`
`102
`
`
`4/
`
`/
`
`
`
`108
`,/
`/Z/
`
`106
`.
`/
`
`4/
`
`/
`
`SOAP Req uestgb
`SOAP Response
`
`FIG. 1
`
`
`
`<780AP Responsei
`\
`
`110
`/ /
`,/Z/
`SOAP Requestgb
`
`\3\\
`112
`
`100
`/
`
`//[/
`
`SOAP
`Web Service
`
`
`
`TELESIGN EX1014
`
`Page 2
`
`TELESIGN EX1014
`Page 2
`
`

`

`Patent Application Publication
`
`Jun. 12, 2008 Sheet 2 of4
`
`US 2008/0140861 A1
`
`202
`, /
`
`,/_//
`
`204
`/
`
`///
`
`
`
`
`
`REST
`
`User
`
`206
`4/
`// M,
`
`SOAP
`User
`
`
`
`
`
`HSOAP Responsei 4
`
`REST Requestgb
`
`
`HREST Response
`
`REST/SOAP
`
`Endpoint
`(Gateway)
`
`208
`M ,/
`// 1/
`SOAP Requestgb
`
`
`
`210
`
`200
`4//
`/7/
`REST Requestgb
`
`REST
`Web Service
`
`
`
`
`
`REST Response
`\
`
`\S\\\
`21 2
`
`\\\
`21 4
`
`FIG.2
`
`TELESIGN EX1014
`
`Page 3
`
`TELESIGN EX1014
`Page 3
`
`

`

`Patent Application Publication
`
`Jun. 12, 2008
`
`Sheet 3 of 4
`
`US 2008/0140861 A1
`
`
`
`VVVVVVVVVVVVVVVVVVVVVVVV |\\\
`
`Perform URL rewriting
`on requests destined for
`a URL corresponding to
`a first web service
`
`
`
`
`
`
`
`V
`Receive a request
`in a first protocol
`for the first web
`service from a first
`user
`
`
`
`
`
`304
`
`
`Does
`
`
`the first web
`
`
`service support the
`first protocol
`’?
`
`
`
`
`
`
`30
`
`0
`
`302
`
`306
`fl/
`Access a stored mapping
`corresponding to the first
`protocol and to a second
`protocol, wherein the
`second protocol is
`supported by the first web
`service
`
`
`
`7777777 s
`
`308
`
`s C
`
`onvert the
`request into the
`second protocol
`using the stored
`mapping
`
`
`
`
`
`11/
`
`312
`
`Send the request
`to the first web
`service
`
`
`
`
`
`
`
`\‘V
`
`Receive a
`response from the
`first web service
`
`
`\\‘\.
`Access a stored
`
`4
`
`31
`
`mapping corresponding /
`to the first protocol and
`to the second protocol if
`the response must be
`converted
`
`
`
`
`
` Send the response
`
`316
` \“
`Convert the response V
`into the first protocol
`using the stored
`mapping if the
`response must be
`converted
`
`to the first user
`
`318
`
`FIG. 3
`
`77777777777777>\\@
`
`TELESIGN EX1014
`
`Page 4
`
`TELESIGN EX1014
`Page 4
`
`

`

`Patent Application Publication
`
`Jun. 12, 2008 Sheet 4 of 4
`
`US 2008/0140861 A1
`
`
`
`
`400
`402
`/
`//
`
`404
`1/
`
`.
`.
`First web serVIce
`.
`.
`First request first
`protocol
`.
`eterminer
`protocol receiver
`d
`.
`
`
`
`
`.
`URL rewnter
`
`
`
`//i7 /
`rrrrrrrrrrrrrrrrrr
`
`
`
`
`
`//f7//
`rrrrrrrrrrrrrrrrrr
`
`
`
`
`
`3
`
`z/Z /
`
`406
`/
`
`fl/
`/
`
`
`
`
`
`
`
`
`
`412
`/
`
`408
`/
`
`.
`First request first
`.
`web servnce
`sender
`
`/7/
`/’
`eeeeeeeeeeeeeeeeee
`
`.
`First request
`second protocol
`converter
`
`,/2/
`1
`eeeeeeeeeeeeee
`
`.
`Stored mapping
`accessor
`
`E
`/
`m /
`
`414
`;/2/
`3/1/
`/
`,
`/7/
`
`First response
`second protocol
`receiver
`
`,
`
`,
`
`,
`
`,
`
`,
`
`, ~~
`
`First response first
`protocol converter
`
`, ~~
`
`First response first
`user sender
`
`
`
`416
`
`418
`
`FIG. 4
`
`TELESIGN EX1014
`
`Page 5
`
`TELESIGN EX1014
`Page 5
`
`

`

`US 2008/0140861 A1
`
`Jun. 12, 2008
`
`WEB SERVICES MULTI-PROTOCOL
`SUPPORT
`
`requires additional programming and wastes
`however,
`resources. What is needed is a solution that avoids the draw-
`
`BACKGROUND OF THE INVENTION
`
`1. Field of the Invention
`[0001]
`[0002] The present invention relates to the field of web
`services. More specifically, the present invention relates to
`multi-protocol support for web services.
`[0003]
`2. Description of the Related Art
`[0004] The field of Web Services involves the creation and
`utilization of software systems designed to support interop-
`erable machine-to-machine operation over a network (typi-
`cally the World Wide Web, hence the name “Web Services”).
`There are a variety of different protocols utilized by various
`Web Services vendors and customers when operating these
`web services. Three of the most common Web Services pro-
`tocols are Simple Object Access protocol (SOAP), Represen-
`tational State Transfer (REST), and Extensible Markup Lan-
`guage Remote Procedure Call (XML-RPC).
`[0005]
`In SOAP, XML-based messages are exchanged,
`typically using HyperText Transfer Protocol (HTTP). The use
`of XML can be both a benefit and a drawback. Its format is
`
`easy for humans to read and understand, but it can create slow
`processing times and the extra XML wrapper around every
`request and response can create bandwidth issues. Addition-
`ally, the use of SOAP requires the knowledge of a new XML
`specification, and many developers will need a SOAP toolkit
`to form requests and parse the results. In spite of these draw-
`backs, SOAP is currently the most commonly used Web Ser-
`vices protocol.
`[0006]
`In REST, a Uniform Resource Identifier (URI) is
`utilized for the messaging. The most common type of URI is
`a Uniform Resource Locator (URL), which many users will
`recognize as the data located in a web address field of an
`Internet browser. For example, http://www.brokerage.com/
`quote?symbol:QQQ may be a URI in the REST protocol for
`issuing a request for a stock quote. REST has the advantage of
`the fact that any developer can figure out how to create and
`modify a URI to access different web services. The major
`disadvantage of REST is security, in that is can be dangerous
`to provide sensitive information as parameters in a URI.
`Despite this limitation, REST has been gaining momentum in
`comparison to SOAP.
`[0007] XML-RPC is a predecessor of SOAP. Despite
`numerous improvements made by SOAP over XML-RPC,
`XML-RPC is still in use in many systems simply because
`many vendors have been slow to adopt newer protocols, a
`common occurrence in the computer industry.
`[0008]
`Since it is common to see many different protocols
`utilized in various web services, it would be beneficial to
`provide a way for a single web service to be easily utilized by
`users familiar with any of the web services protocols, as
`opposed to limiting access to a particular web service to only
`those users familiar with the one particular protocol utilized
`by the web service.
`[0009]
`In the past, the solution to this problem has been to
`provide different versions of the same web service for the
`various protocols. For example, the aforementioned stock
`quote web service might be implemented with a SOAP ver-
`sion, a REST version, and an XML-RPC version, and the user
`can simply select which version to access. This solution,
`
`backs of the prior art.
`
`SUMMARY OF THE INVENTION
`
`[0010] A solution is provided wherein a single service
`implementation may be exposed to users as two or more
`different web service protocols. The service then appears to
`the user to be utilizing a desired protocol even though the
`service itself is potentially operating under a different proto-
`col. A gateway may be utilized that maintains mappings
`between the supported protocols. When a user sends a request
`to a particular service, the gateway may determine whether
`the request is in the format of the protocol utilized by the
`underlying web service. If not, the gateway may convert the
`format to match the correct protocol. An embodiment is also
`possible where a single endpoint is utilized for multiple ser-
`vices having multiple protocols. This may be coupled with an
`ability to detect a protocol automatically from request con-
`tents, thus seamlessly integrating multiple protocols into a
`user’s experience.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`FIG. 1 is a block diagram illustrating a system for
`[0011]
`multi-protocol web services support in accordance with an
`embodiment of the present invention.
`[0012]
`FIG. 2 is a block diagram illustrating a system for
`multi-protocol web services support
`in accordance with
`another embodiment of the present invention.
`[0013]
`FIG. 3 is a flow diagram illustrating a method for
`multi-protocol web services support in accordance with an
`embodiment of the present invention.
`[0014]
`FIG. 4 is a block diagram illustrating an apparatus
`for multi-protocol web services support in accordance with
`an embodiment of the present invention.
`
`DETAILED DESCRIPTION OF SPECIFIC
`EMBODIMENTS
`
`[0015] Reference will now be made in detail to specific
`embodiments of the invention including the best modes con-
`templated by the inventors for carrying out the invention.
`Examples of these specific embodiments are illustrated in the
`accompanying drawings. While the invention is described in
`conjunction with these specific embodiments,
`it will be
`understood that it is not intended to limit the invention to the
`
`described embodiments. On the contrary, it is intended to
`cover alternatives, modifications, and equivalents as may be
`included within the spirit and scope of the invention as
`defined by the appended claims. In the following description,
`specific details are set forth in order to provide a thorough
`understanding of the present invention. The present invention
`may be practiced without some or all of these specific details.
`In addition, well known features may not have been described
`in detail to avoid unnecessarily obscuring the invention.
`[0016] The present
`invention provides a single service
`implementation that may be exposed to users as two or more
`different web service protocols. The service then appears to
`the user to be utilizing a desired protocol even though the
`service itself is potentially operating under a different proto-
`col. A gateway may be utilized that maintains mappings
`between the supported protocols. When a user sends a request
`to a particular service, the gateway may determine whether
`the request is in the format of the protocol utilized by the
`
`TELESIGN EX1014
`
`Page 6
`
`TELESIGN EX1014
`Page 6
`
`

`

`US 2008/0140861 A1
`
`Jun. 12, 2008
`
`underlying web service. If not, the gateway may convert the
`format to match the correct protocol.
`[0017]
`It should be noted that throughout this document,
`the term “gateway” shall be taken to mean any software or
`hardware (or combination thereof) that is able to intercept
`communications between clients and web services. While
`
`some implementations may locate the gateway physically
`between the client and the web service, there is no require-
`ment that the physical location of the gateway be separate
`from either the client or the web service.
`
`In an embodiment of the present invention, users
`[0018]
`may access a web service using either SOAP, REST, or XML-
`RPC requests. The web service may utilize only one of these
`three protocols. Nevertheless, embodiments are possible
`where different and/or additional protocols may be sup-
`ported, and nothing in this document should be taken as
`limiting the scope of protection to the three protocols listed
`above, except where explicitly stated.
`[0019]
`In an embodiment of the present invention, the user
`sends commands to the gateway as opposed to directly to the
`web service. As such, the gateway acts as a first endpoint of
`communications. It should be noted that the user may or may
`not be aware ofthe use ofthe gateway. In some embodiments,
`Uniform Resource Locator (URL) rewriting may be utilized
`to give the appearance to the user that he is directly accessing
`a web service using a particular protocol, when in fact his
`requests are being routed through the gateway, which con-
`verts the requests to a different protocol.
`[0020]
`In order to perform the necessary conversions
`between protocols, in an embodiment ofthe present invention
`configurable mappings may be stored by the gateway. These
`mappings may include predefined portions and user-config-
`urable portions. The predefined portions may contain map-
`pings between commonly used commands. The user-config-
`urable portions may contain mappings that a user has added
`on top of, or instead of, the predefined mappings. This may be
`particularly useful for rare commands that universal map-
`pings may not contain, or commands that ordinarily have
`ambiguous conversions (i.e., can be theoretically converted
`correctly to two or more different commands), with the con-
`figurable mapping clearing up the ambiguity.
`[0021]
`In an embodiment ofthe present invention, the gate-
`way may “intercept” requests from and responses to the user
`in order to perform the translations. The term “intercept” is
`used loosely, however, since the user and web service may
`both be fully aware that the gateway exists and may be inten-
`tionally sending the requests and responses directly to the
`gateway.
`FIG. 1 is a block diagram illustrating a system for
`[0022]
`multi-protocol web services support in accordance with an
`embodiment of the present invention. In this embodiment, a
`SOAP web service 100 is accessed. Two different users 102,
`104 access the same web service 100, but each user interfaces
`with the web service using a different protocol. User 102 is a
`REST user, and as such the gateway 106 accesses mappings to
`convert the REST requests 108 into SOAP requests 110, as
`well as convert the corresponding SOAP responses 112 into
`REST responses 114. User 104, on the other hand, is a SOAP
`user. As such, gateway 106 does not need to perform a con-
`version when the user communicates with the SOAP web
`service 100.
`
`FIG. 2 is a block diagram illustrating a system for
`[0023]
`multi-protocol web services support
`in accordance with
`another embodiment ofthe present invention. In this embodi-
`
`ment, a REST web service 200 is accessed. User 202 is a
`REST user. As such, gateway 204 does not need to perform a
`conversion when the user communicates with the REST web
`service 200. User 206, on the other hand, is a SOAP user, and
`as such the gateway 108 accesses mappings to convert the
`SOAP requests 208 into REST requests 210, as well as con-
`vert the corresponding REST responses 212 into SOAP
`responses 214.
`[0024]
`FIG. 3 is a flow diagram illustrating a method for
`multi-protocol web services support in accordance with an
`embodiment of the present invention. The method may be
`performed by a gateway. At 300, URL rewriting may be
`performed on requests destined for a URL corresponding to a
`first web service. At 302, a request may be received in a first
`protocol for the first web service from a first user. At 304, it
`may be determined if the first web service supports the first
`protocol. If not, then at 306, a stored mapping corresponding
`to the first protocol and to a second protocol may be accessed,
`wherein the second protocol is supported by the first web
`service. The mapping may comprise a predefined portion and
`a user-configurable portion. Then at 308, the request may be
`converted into the second protocol using the stored mapping.
`Then, at 310, the request may be sent to the first web service.
`At some later time, at 312, a response in the second protocol
`may be received from the first web service. At 314, a stored
`mapping corresponding to the first protocol and to the second
`protocol may be accessed. It should be noted that this stored
`mapping may or may not be the same mapping as was
`accessed in 306. For example, there may be one mapping
`from REST to SOAP and a separate mapping from SOAP to
`REST. Alternatively,
`there may be one single mapping
`between REST and SOAP.
`
`[0025] At 316, the response may be converted into the first
`protocol using the stored mapping. It should be noted that 3 14
`and 316 only need to be performed ifthe protocol ofresponse
`must be converted. If, for example, it was determined at 304
`that the web service supports the first protocol, then it is likely
`that the responses from the web service would also be in the
`first protocol and thus 314 and 316 need not be performed.
`Then at 318, the response may be sent to the first user.
`[0026]
`FIG. 4 is a block diagram illustrating an apparatus
`for multi-protocol web services support in accordance with
`an embodiment of the present invention. The apparatus may
`be a gateway. A Uniform Resource Locator (URL) rewriter
`400 may perform URL rewriting on requests destined for a
`URL corresponding to a first web service. A first request first
`protocol receiver 402 coupled to the URL rewriter 400 may
`receive a request in a first protocol for the first web service
`from a first user. A first web service protocol determiner 404
`coupled to the first request first protocol receiver 402 may
`determine ifthe first web service supports the first protocol. If
`not, then a stored mapping accessor 406 coupled to the first
`web service protocol determiner 404 may access a stored
`mapping corresponding to the first protocol and to a second
`protocol, wherein the second protocol is supported by the first
`web service. The mapping may comprise a predefined portion
`and a user-configurable portion. Then a first request second
`protocol converter 408 coupled to the stored mapping acces-
`sor 406 may convert the request into the second protocol
`using the stored mapping. Then a first request first web ser-
`vice sender 410 coupled to the first request second protocol
`converter 408 may send the request to the first web service. At
`some later time, a first response second protocol receiver 412
`coupled to the stored mapping accessor 406 may receive a
`
`TELESIGN EX1014
`
`Page 7
`
`TELESIGN EX1014
`Page 7
`
`

`

`US 2008/0140861 A1
`
`Jun. 12, 2008
`
`response in the second protocol from the first web service.
`Then the stored mapping accessor 406 may access a stored
`mapping corresponding to the first protocol and to the second
`protocol. It should be noted that this stored mapping may or
`may not be the same mapping as was accessed before. For
`example, there may be one mapping from REST to SOAP and
`a separate mapping from SOAP to REST. Alternatively, there
`may be one single mapping between REST and SOAP.
`[0027] A first response first protocol converter 416 coupled
`to the stored mapping accessor 406 may convert the response
`into the first protocol using the stored mapping. Then a first
`response first user sender 418 coupled to the first response
`first protocol converter 416 and to the first web service pro-
`tocol determiner 404 may send the response to the first user.
`[0028]
`Furthermore,
`in an embodiment of the present
`invention, multiple services (with multiple protocols) may
`have a single endpoint. This may be coupled with the ability
`to detect a protocol automatically from request contents. In
`such an embodiment, the system essentially seamlessly auto-
`mates the use of multiple services while potentially hiding
`such details from the users.
`
`[0029] While the invention has beenparticularly shown and
`described with reference to specific embodiments thereof, it
`will be understood by those skilled in the art that changes in
`the form and details of the disclosed embodiments may be
`made without departing from the spirit or scope of the inven-
`tion. In addition, although various advantages, aspects, and
`objects of the present invention have been discussed herein
`with reference to various embodiments, it will be understood
`that the scope of the invention should not be limited by ref-
`erence to such advantages, aspects, and objects. Rather, the
`scope ofthe invention should be determined with reference to
`the appended claims.
`What is claimed is:
`
`1. A method for multi-protocol web services support, the
`method comprising:
`receiving a first request in a first protocol for a first web
`service from a first user;
`determining if the first web service supports the first pro-
`tocol;
`if the first web service does not support the first protocol:
`accessing a stored mapping corresponding to the first
`protocol and to a second protocol, wherein the second
`protocol is supported by the first web service;
`converting the first request into the second protocol
`using the stored mapping; and
`sending the first request to the first web service.
`2. The method of claim 1, further comprising:
`receiving a first response in the second protocol from the
`first web service;
`accessing a stored mapping corresponding to the first pro-
`tocol and to the second protocol;
`converting the first response into the first protocol using the
`stored mapping; and
`sending the first response to the first user.
`3. The method of claim 1, wherein the mapping comprises
`a predefined portion and a user-configurable portion.
`4. The method of claim 1, wherein the first and second
`protocols are protocols selected from the group consisting of:
`Simple Object Access Protocol (SOAP), Representational
`State Transfer (REST), and Extensible Markup Language
`Remote Procedure Call OiML-RPC).
`5. The method of claim 1, wherein the method is performed
`by a gateway.
`
`6. The method of claim 1, further comprising: performing
`Uniform Resource Locator (URL) rewriting on requests des-
`tined for a URL corresponding to the first web service.
`7. The method of claim 1, further comprising:
`receiving a second request in the second protocol for the
`first web service from a second user; and
`sending the second request to the first web service without
`conversion.
`
`8. The method of claim 1, further comprising:
`receiving a second request in a third protocol for a second
`web service from a second user;
`determining of the second web service supports the third
`protocol;
`if the second web service does not support the third proto-
`col:
`
`accessing a second stored mapping corresponding to the
`third protocol and to a fourth protocol, wherein the
`fourth protocol is supported by the second web ser-
`vice;
`converting the request into the fourth protocol using the
`second stored mapping; and
`sending the second request to the second web service.
`9. The method of claim 8, wherein the first web service and
`the second web service are accessed via a single endpoint.
`10. An apparatus for multi-protocol web services support,
`the apparatus comprising:
`a first request first protocol receiver;
`a first web service protocol determiner coupled to the first
`request first protocol receiver;
`a stored mapping accessor coupled to the first web service
`protocol determiner;
`a first request second protocol converter coupled to the
`stored mapping accessor; and
`a first request first web service sender coupled to the first
`request second protocol converter and to the first web
`service protocol determiner.
`11. The apparatus of claim 10, further comprising:
`a first response second protocol receiver coupled to the
`stored mapping accessor;
`a first response first protocol converter coupled to the
`stored mapping accessor; and
`a first response first user sender coupled to the first
`response first protocol converter and to the first web
`service protocol determiner.
`12. The apparatus of claim 10, wherein the apparatus is a
`gateway.
`13. The apparatus of claim 10, wherein the apparatus is
`located on the same physical device as a first web service.
`14. The apparatus of claim 10, further comprising a Um-
`form Resource Locator (URL) rewriter coupled to the first
`request first protocol receiver.
`15. An apparatus for multi-protocol web services support,
`the apparatus comprising:
`means for receiving a first request in a first protocol for a
`first web service from a first user;
`means for determining if the first web service supports the
`first protocol;
`means for, if the first web service does not support the first
`protocol:
`accessing a stored mapping corresponding to the first
`protocol and to a second protocol, wherein the second
`protocol is supported by the first web service;
`
`TELESIGN EX1014
`
`Page 8
`
`TELESIGN EX1014
`Page 8
`
`

`

`US 2008/0140861 A1
`
`Jun. 12, 2008
`
`converting the first request into the second protocol
`using the stored mapping; and
`means for sending the first request to the first web service.
`16. The apparatus of claim 15, further comprising:
`means for receiving a first response in the second protocol
`from the first web service;
`means for accessing a stored mapping corresponding to the
`first protocol and to the second protocol;
`means for converting the first response into the first proto-
`col using the stored mapping; and
`means for sending the first response to the first user.
`17. The apparatus of claim 15, wherein the mapping com-
`prises a predefined portion and a user-configurable portion.
`18. The apparatus of claim 15, wherein the first and second
`protocols are protocols selected from the group consisting of:
`Simple Object Access Protocol (SOAP), Representational
`State Transfer (REST), and Extensible Markup Language
`Remote Procedure Call OiML-RPC).
`19. The apparatus of claim 15, wherein the apparatus is a
`gateway.
`20. The apparatus of claim 15, further comprising: means
`for performing Uniform Resource Locator (URL) rewriting
`on requests destined for a URL corresponding to the first web
`service.
`
`21. The apparatus of claim 15, further comprising:
`means for receiving a second request in the second protocol
`for the first web service from a second user; and
`means for sending the second request to the first web ser-
`vice without conversion.
`
`22. The apparatus of claim 15, further comprising:
`means for receiving a second request in a third protocol for
`a second web service from a second user;
`means for determining of the second web service supports
`the third protocol;
`means for, if the second web service does not support the
`third protocol:
`accessing a second stored mapping corresponding to the
`third protocol and to a fourth protocol, wherein the
`fourth protocol is supported by the second web ser-
`vice;
`converting the request into the fourth protocol using the
`second stored mapping; and
`means for sending the second request to the second web
`service.
`
`23. The apparatus ofclaim 22, wherein the first web service
`and the second web service are accessed via a single endpoint.
`*
`>X<
`*
`>X<
`*
`
`TELESIGN EX1014
`
`Page 9
`
`TELESIGN EX1014
`Page 9
`
`

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket