Callback messages format

Communication between client and server side is realized using simple message format:

Request (POST from client):
<cbk> <hlr name="MyHandler"> <state><![CDATA[{"Property1":"Value1"}]]></state> <!-- JSON representation of handler state --> <call method="callbackMethod"> <p><![CDATA["Parameter1"]]></p> <!-- Method parameter value in JSON representation --> <p><![CDATA[321]]></p> </call> </hlr> </cbk>

Response is pure JavaScript. Response to request listed above would look like:
var __c = Xaja.get("ServerStateProvider"); __c.update("MyHandler",{"Property1":"NewValue"});
When Xaja.ashx emits initial script (as response to first GET), it renders some little bit of script to initialize all handlers:
var __c = Xaja.get("ServerStateProvider"); __c.initXaja("/Xaja.ashx"); __c.assignHandlerContext("AppContext.xml","MyHandler"); __c.addMethod("MyHandler","callbackMethod",["param1","param2"]); __c.update("MyHandler",{"Property1":"InitialValue"});

So, adding Xaja support is easy using any server technology, as well as extension of functionality. (You may for example change response script rendering to invoke some specific script in callback response etc.)
Do you need more informations about "under the hood"? Do not hesitate to contact me!
XAJA Basics