ZCS 6.0:Zimlet Developers Guide:Examples:Simple JSP via Ajax Async: Difference between revisions

(Adding categories)
No edit summary
Line 23: Line 23:


<pre>
<pre>
<zimlet name="com_zimbra_simplejspasync" version="1.0" description="An example zimlet using a JSP file.">
<zimlet name="com_zimbra_example_simplejspasync" version="1.0" description="An example zimlet using a JSP file.">
     <include>simplejspexample.js</include>
     <include>com_zimbra_example_simplejspasync.js</include>
     <handlerObject>com_zimbra_simplejspasyncHandlerObject</handlerObject>
     <handlerObject>com_zimbra_example_simplejspasync_HandlerObject</handlerObject>
     <zimletPanelItem label="JSP Example (via Ajax)" icon="zimbraIcon">
     <zimletPanelItem label="JSP Example (via Ajax)" icon="zimbraIcon">
       <toolTipText>Click to launch the JSP Example</toolTipText>
       <toolTipText>Click to launch the JSP Example</toolTipText>
Line 41: Line 41:
  *  
  *  
  */
  */
com_zimbra_simplejspasyncHandlerObject.prototype._displayDialog =  
com_zimbra_example_simplejspasyncHandlerObject.prototype._displayDialog =  
function() {
function() {
     var jspUrl = this.getResource("jspfile.jsp");
     var jspUrl = this.getResource("jspfile.jsp");
Line 58: Line 58:
  *  
  *  
  */
  */
com_zimbra_simplejspasyncHandlerObject.prototype._rpcCallback =
com_zimbra_example_simplejspasyncHandlerObject.prototype._rpcCallback =
function(p1, p2, response) {
function(p1, p2, response) {
     if (response.success == true) {
     if (response.success == true) {
Line 70: Line 70:
{| cellspacing="0" cellpadding="5" border="1"
{| cellspacing="0" cellpadding="5" border="1"
|Zimlet Package
|Zimlet Package
|[[Media:zcs-6-examples-simplejspasync-com_zimbra_simplejspasync.zip|com_zimbra_simplejspasync.zip]]
|[http://files.zimbra.com/docs/zimlet/zcs/6.0/examples/com_zimbra_example_simplejspasync/com_zimbra_example_simplejspasync.zip com_zimbra_example_simplejspasync.zip]
|}
|}



Revision as of 20:09, 10 February 2010

Zdg-6-menu-icon-zimbra.jpg Introduction Zdg-6-menu-icon-green-flag.png Getting Started Zdg-6-menu-icon-terminal.png Dev Environment Setup Zdg-6-menu-icon-gear.png Developing Zimlets Zdg-6-menu-icon-advanced.jpg Advanced Concepts Zdg-6-menu-icon-library.jpg API Specifications Zdg-6-menu-icon-checkbox.jpg Example Zimlets

Description

This zimlet shows how to launch a JSP from within the Zimlet Handler Object using Ajax and read the response asynchronously.

Definition File

<zimlet name="com_zimbra_example_simplejspasync" version="1.0" description="An example zimlet using a JSP file.">
    <include>com_zimbra_example_simplejspasync.js</include>
    <handlerObject>com_zimbra_example_simplejspasync_HandlerObject</handlerObject>
    <zimletPanelItem label="JSP Example (via Ajax)" icon="zimbraIcon">
      <toolTipText>Click to launch the JSP Example</toolTipText>
   </zimletPanelItem>
</zimlet>

Handler Object

The following code snippet from the zimlet JavaScript Handler Object show making the Ajax call to the JSP file and setting the callback method to read the response asyncrhonously:

/**
 * Displays the zimlet jsp page.
 * 
 */
com_zimbra_example_simplejspasyncHandlerObject.prototype._displayDialog = 
function() {
    var jspUrl = this.getResource("jspfile.jsp");

    var callback = new AjxCallback(this, this._rpcCallback, ["param1", "param2"])

    AjxRpc.invoke(null, jspUrl, null, callback, true);	
};

When the JSP page response is received, the callback method is executed:

/**
 * Called from the ajax callback.
 * 
 */
com_zimbra_example_simplejspasyncHandlerObject.prototype._rpcCallback =
function(p1, p2, response) {
    if (response.success == true) {
      appCtxt.getAppController().setStatusMsg(response.text);		
    }
};

Download

Zimlet Package com_zimbra_example_simplejspasync.zip


Verified Against: Zimbra Collaboration Suite 6.0 Date Created: 12/22/2009
Article ID: https://wiki.zimbra.com/index.php?title=ZCS_6.0:Zimlet_Developers_Guide:Examples:Simple_JSP_via_Ajax_Async Date Modified: 2010-02-10



Try Zimbra

Try Zimbra Collaboration with a 60-day free trial.
Get it now »

Want to get involved?

You can contribute in the Community, Wiki, Code, or development of Zimlets.
Find out more. »

Looking for a Video?

Visit our YouTube channel to get the latest webinars, technology news, product overviews, and so much more.
Go to the YouTube channel »

Jump to: navigation, search