What Is It?
The VSE Passthrough provides a way to define the LISA VSE endpoint to the application and allow the VSE to first access the LIVE service.
In the event the live system does not provide a suitable response, then the Virtual Service Image would be used.
All supported DevTest releases.
N/A
How Does It Work?
It uses out of the box VSM functionality provided by LISA. The creation of Virtual Service Model when done via the WSDL or the VS Image Recorder creates the Virtual Service Router node.
Virtual Service Router
Although the VSM does not initially contain a LIVE Service node, this is added to the model (Raw SOAP step) and specified as the node to be branched to in the Virtual Service Router node as the Live invocation step. Once defined an assertion will be done to the LIVE Service node when this node is executed. The default (no Live Invocation node) is to go to the VS Image Response Selection step.
LIVE Service
A Raw SOAP node is added and it contains two important properties: the URL of the Live service and a reference to the flTxn property. The latter property is a best practice that is filtered after the Listen step. It contains the raw SOAP request that will be forwarded to the LIVE Service node. There are several assertions in this node of importance:
Format LIVE Response
The node is added immediately after the LIVE Service to do formatting of the response emitted by the VSM.
A filter is defined on this node to create property flResponse that will be used by the Prepare Response node.
<linked-list> \\
<com.itko.lisa.vse.stateful.model.TransientResponse>
<metaData>
<p key="HTTP-Response-Code" value="200"/>
<p key="HTTP-Response-Code-Text" value="Invalid Request Error"/>
<p key="Date" value="Mon, 22 Mar 2010 12:33:25 GMT"/>
<p key="Server" value="Lisa virtual server 5.0"/>
<p key="Content-Type" value="text/xml; charset=utf-8"/>
</metaData>
<thinkTimeSpec>1</thinkTimeSpec>
<isBinary>false</isBinary>
<body><![CDATA[{{flLiveResponse}}]]>
</body>
</com.itko.lisa.vse.stateful.model.TransientResponse>
</linked-list>
See attached zip file for example.