Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Redirect
locationTECHNOS:Web Services Linker


Panel

On this page:

Table of Contents

Target audience:

CAST Administrators

...

For example for the AngularJS extension:

Image RemovedImage Added

What does it do?

The Web Service Linker automatically creates cross-technology call links between client (front end) and server (back end) objects. For example, AngularJS front end connected to JEE/Spring MVC back end (click to enlarge):

Image RemovedImage Added

How does it do it?

Info
End-users do not need to interact or configure the Web Services Linker extension, all configuration is automatic.

...

The connection is made via four "root" objects:

Image Removed

Image Added

HTTP GET Service

Image Removed

Image Added

HTTP DELETE Service

Image Removed

Image Added

HTTP POST/SOAP Service

Image Removed

Image Added

HTTP PUT Service


Info
Note that you can view a list of errors and warnings that may potentially be returned during an analysis in Web Services Linker.

...

  • It replace all "//" with "/{}/" except "//" after ":" (to avoid replacing "http://"), supposing that a parameter was intended between both "/" (REST format).
  • It removes everything after "?" in the uri (to suppress uri parameters part which are not part of REST format parameters).
  • It adds a "/" at the end of uri when not present
CAST_ResourceService.uriAfter transformation

https://www.castsoftware.com/offices//phone//

https://www.castsoftware.com/offices/{}/phone/{}/

https://www.castsoftware.com/offices//phone/

https://www.castsoftware.com/offices/{}/phone/

https://www.castsoftware.com/offices//phone

https://www.castsoftware.com/offices/{}/phone/

https://www.castsoftware.com/offices/{}/phone

https://www.castsoftware.com/offices/{}/phone/

https://www.castsoftware.com/offices?office=1

https://www.castsoftware.com/offices/

 The result is then compared to CAST_WebService_Operation.identification.name / CAST_WebServiceLinker_Operation.identification.name using the endswith function, ignoring the uri part corresponding to the operation name part whose value is {}.

CAST_ResourceService.uriCAST_WebService_Operation.identification.nameMatch: Yes/No
.../path1/path2/path3/path4/path3/No
.../path1/path2/path3/{}/path3/{}/Yes
.../path1/path2/path3/path2/path3/Yes
.../param1/value1/param2/value2/.../param1/{}/param2/{}/Yes

Examples of matches

A client side url like:

...

  • operation name
  • port type

Samples

Image RemovedImage Added

Client side

BPEL

...

Cross-Technology Transaction

Front-End/Service Exit PointBack-end/Service Entry Point
  • HTML5/Javascript
    • Web Socket Service (WebSocket)
    • XMLHttpRequest Service (XMLHttpRequest)
    • Http Request Service (HttpRequest,Fetch, Axios, SuprAgent)
  • AngularJS
    • AngularJS Service ($resource)
    • Restangular Service (Restangular)
    • Http Service ($http)
  • jQuery
    • jQuery Service ($.ajax, $.get, $.getJSON)
  • iOS
    • NSURLConnection, NSURLSession
  • ASP.NET
    • SOAP Resource (SoapDocumentAttr, WebMethodAttr)
    • Razor HttpRequest
  • Python
    • Urllib, Urllib2, Httplib, Httplib2, aiohttp, Flask
  • Node.js
    • Express Service (Express)
    • Http Service (Http)
  • JEE
    • JAX-RS (@GET, @POST)
    • SpringMVC (
@RequestMapping,
    • @Request/Put/Post/Get/Mapping)
  • .NET
    • WCF Operation (OperationMethod)
  • ASP.NET
    • SOAP Operation (WebServiceAttribute)
  • Python
    • aiohttp, Flask