next up previous contents
Next: Handling Concurrent Requests Up: Implementation of an OPC Previous: Problems and Workarounds During   Contents

Implementing OPC Server Functionality

After the successful implementation of the parsing and serializing of the SOAP message, the server functionality had to be implemented. Requests made to a SOAP server have to be dispatched to the appropriate message handler in one of the following styles:

Top-level SOAP Element:
Every SOAP message has a top-level element which may be used for dispatching.

URL-based:
The URL that addresses the SOAP Web Service may directly specify the message handler135.

SOAP-Action:
The SOAP specification, as shown in [WAL02], defines a special HTTP header, called ``SOAP-Action'', which can be used for dispatching purposes.

ZSI currently only supports dispatching via the top-level element, while OPC XML-DA uses ``SOAP-Action''. Therefore dispatching had to be done by hand.

The basic server layout, as shown in figure 62, depicts that most of the OPC operations, such as ``Read'' and ``Write'', can directly be translated to their ESD counterparts. However, subscriptions are not supported by ESD, therefore this functionality has to be implemented by the server. The server will have to maintain polling reads and store changed values in a cache/buffer, which is depicted in figure 62 as ``Subscription Polls''.

Figure 62: Basic Server Layout
\begin{figure}\centering
\includegraphics[scale=0.6]{graphics/devel-serverlayout.eps}\end{figure}



Subsections
next up previous contents
Next: Handling Concurrent Requests Up: Implementation of an OPC Previous: Problems and Workarounds During   Contents
Hermann Himmelbauer 2006-09-27