The AJAXTableContainerProvider is implemented as a JSPTableContainerProvider instance on the server. All the provider logic is implemented in JavaServer Page (JSP) template files of the AJAXTableContainerProvider. The container provider class remains JSPTableContainerProvider. For a content request, the AJAX Container returns a JavaScript object as a JSON representation of the display profile for the current user.
An example JSON Representation of the Display Profile is shown here.
"title": "News",
"name": "NewsContainer",
"layout": 3,
"isAuthless": false,
"maximizedChannel": "",
"channelsIsMinimizable": {"SiteSearch": false},
"channelsIsMinimized": {
"NewsContainer/NextTourPoll": false,
"SiteSearch": false
},
"channelsHasFrame": {
"SiteSearch": false,
"NewsContainer/google": true
},
"selectedChannels": [
{
"width": 1,
"isEditable": false,
"title": "Vote for our Next Tour",
"description": "A poll to vote for what tour should be offered next.",
"refreshTime": 0,
"name": "NewsContainer/NextTourPoll",
"id": "NextTourPoll"
},
{
"width": 1,
"isEditable": false,
"title": "Search",
"description": "Enter search term to search site content.",
"refreshTime": 0,
"name": "SiteSearch",
"id": "SiteSearch"
}
],
"channelsIsDetachable": {"SiteSearch": false},
"channelsRow": {
"SiteSearch": "1",
"NewsContainer/NextTourPoll": "1"
},
"refreshTime": "0",
"isEditable": true,
"channelsColumn": {
"SiteSearch": "3",
"NewsContainer/NextTourPoll": "1"
},
"description": Search",
"channelsIsMaximizable": {"SiteSearch": false},
"availableChannels": [
{
"width": 1,
"isEditable": false,
"title": "Customer Favorites",
"description": "The top tours as rated by customers.",
"refreshTime": 0,
"name": "NewsContainer/CustomerFavorites",
"id": "CustomerFavorites"
},
{
"width": 2,
"isEditable": false,
"title": "UrlScraper Channel",
"description": "This is a test for urlscraper",
"refreshTime": 0,
"name": "NewsContainer/google",
"id": "google"
}
]
}
The AJAXTableContainerProvider uses JSON Java API to construct a JSON representation of the display profile. The following JSON Java API classes are currently used in AJAXTableContainerProvider to construct the JSON message:
org.json.JSONObject org.json.JSONArray org.json.JSONException |