Monday, January 29, 2007

How does your brain not explode?

WSDL (pronounced: Wiz-dull)? SOAP? Tomcat? Lucene? Apache? Combating people hi-jacking a session? Query string? Axis frame work? Parse message from outside requestor? The intuitive level of the SOAP monitor...(I had to laugh out loud at that one!) What is going on here? My brain is really starting to hurt. There are, however, some people actually paying attention, who actually seem like they're getting something out of this nonsensical data. Everyone else is either playing games, sleeping, or racking their brain like me trying to put everything together.

Things started to tie in together toward the end, and with my own research on web services I'm starting to understand more of what is going on in class. This is definitely a class that requires a lot of self discipline to do your own research outside of class, to actually put into practice (or attempt) what we go over in class. I figured I should get a head start and record some of my findings here.

Web services (as explained by http://en.wikipedia.org) are "frequently application programming interfaces (API) that can be accessed over a network, such as the Internet, and executed on a remote system hosting the requested services." One example that keeps being brought up in class is the Google homepage. It offers the capability of customizing the webpage with any number of services you choose. To give a more specific definition it is important that the following specifications of web services are understood:

SOAP: a messaging framework that different layers can build on, the foundation of the web services stack. It is a protocol for exchanging XML-based messages over a computer network.

WSDL: Web Services Description Language: A client program connecting to a web service can read the WSDL to determine what functions are available on the server. Any special datatypes used are embedded in the WSDL file in the form of XML schema. The client can then use SOAP to actually call one of the functions listed in the WSDL.

Here's an example:
http://en.wikipedia.org/wiki/SOAP

i tried copying the example, but blogger doesn't like xml tags :(

guess is that the client knew it could call the "getProductDetails" function because of the WSDL that contained the information on this function.

Remote Procedure Calls:
-Basic unit is the WSDL operation
-Allows a program to cause a subroutine or a procedure to execute in another address space w/o the programmer explicitly coding the details for this remote interaction.
-Criticized for not being loosely coupled.

Service-Oriented Architecture: ○ Basic unit is a message, rather than an operation
○ Loose coupling is more likely than RPC, because the focus is on the "contract" that WSDL provides, rather than the underlying implementation details.
§ WSDL contract: ???
○ Representational State Transfer: attempt to emulate HTTP and similar protocols by constraining the interface to a set of well-known, standard operations (e.g., GET, PUT, DELETE). The focus is on interacting with stateful resources, rather than messages or operations.

Most information found at: http://en.wikipedia.org/wiki/SOAP

No comments: