You are viewing a plain text version of this content. The canonical link for it is here.
Posted to portalapps-dev@portals.apache.org by wo...@apache.org on 2009/04/14 16:53:22 UTC

svn commit: r764808 - in /portals/applications/demo/src/main/webapp/WEB-INF: demo/groovy/DojoCustomerPortlet.groovy portlet.xml

Author: woonsan
Date: Tue Apr 14 14:53:21 2009
New Revision: 764808

URL: http://svn.apache.org/viewvc?rev=764808&view=rev
Log:
JS2-961: Migrating the dojo supporting groovy portlet.
By the way, the groovy bridge class implementing SupportsHeaderPhase needs to be marked as a deprecated one.

Modified:
    portals/applications/demo/src/main/webapp/WEB-INF/demo/groovy/DojoCustomerPortlet.groovy
    portals/applications/demo/src/main/webapp/WEB-INF/portlet.xml

Modified: portals/applications/demo/src/main/webapp/WEB-INF/demo/groovy/DojoCustomerPortlet.groovy
URL: http://svn.apache.org/viewvc/portals/applications/demo/src/main/webapp/WEB-INF/demo/groovy/DojoCustomerPortlet.groovy?rev=764808&r1=764807&r2=764808&view=diff
==============================================================================
--- portals/applications/demo/src/main/webapp/WEB-INF/demo/groovy/DojoCustomerPortlet.groovy (original)
+++ portals/applications/demo/src/main/webapp/WEB-INF/demo/groovy/DojoCustomerPortlet.groovy Tue Apr 14 14:53:21 2009
@@ -21,6 +21,7 @@
 import java.util.GregorianCalendar;
 import java.util.List;
 
+import javax.portlet.PortletConfig;
 import javax.portlet.ActionRequest;
 import javax.portlet.ActionResponse;
 import javax.portlet.PortletException;
@@ -28,17 +29,13 @@
 import javax.portlet.RenderRequest;
 import javax.portlet.RenderResponse;
 
-import org.apache.jetspeed.headerresource.HeaderResource;
-import org.apache.jetspeed.portlet.PortletHeaderRequest;
-import org.apache.jetspeed.portlet.PortletHeaderResponse;
-import org.apache.jetspeed.portlet.SupportsHeaderPhase;
+import org.apache.portals.gems.dojo.DojoPortletHelper;
 
 /**
  * @author <a href="mailto:paulsp@apache.org">Paul Spencer</a>
- * @version $Id: CustomerPortlet.java 516448 2007-03-09 16:25:47Z ate $
+ * @version $Id$
  */
-public class DojoCustomerPortlet extends org.apache.portals.bridges.common.GenericServletPortlet
-    implements SupportsHeaderPhase
+public class DojoCustomerPortlet extends org.apache.portals.gems.dojo.AbstractDojoVelocityPortlet
 {
     
     private List defaultCustomers = new ArrayList();
@@ -48,9 +45,10 @@
     {
     }
     
-    
-    public void init()
+    public void init(PortletConfig config)
     {
+        super.init(config);
+        
         CustomerInfo newCustomer = null;
         Address newAddress = null;
         
@@ -111,25 +109,23 @@
         this.defaultCustomers.add(newCustomer);
     }
 
-    public void doHeader(PortletHeaderRequest request, PortletHeaderResponse response)
+    protected void doHeaders(RenderRequest request, RenderResponse response)
     {
-        // use header resource component to ensure header logic is included only once
-        HeaderResource headerResource = response.getHeaderResource();
-        headerResource.dojoEnable();
-        
-        headerResource.dojoAddCoreLibraryRequire( "dojo.lang.*" );
-        headerResource.dojoAddCoreLibraryRequire( "dojo.event.*" );
-        headerResource.dojoAddCoreLibraryRequire( "dojo.io.*" );
-        headerResource.dojoAddCoreLibraryRequire( "dojo.widget.*" );
-        headerResource.dojoAddCoreLibraryRequire( "dojo.widget.LayoutContainer" );
-        headerResource.dojoAddCoreLibraryRequire( "dojo.widget.ContentPane" );
-        headerResource.dojoAddCoreLibraryRequire( "dojo.widget.SplitContainer" );
-        headerResource.dojoAddCoreLibraryRequire( "dojo.widget.TabContainer" );
-        headerResource.dojoAddCoreLibraryRequire( "dojo.widget.Checkbox" );
-        headerResource.dojoAddCoreLibraryRequire( "dojo.widget.Dialog" );
-        headerResource.dojoAddCoreLibraryRequire( "dojo.widget.Button" );
-        headerResource.dojoAddCoreLibraryRequire( "dojo.widget.Menu2" );
-        headerResource.dojoAddModuleLibraryRequire( "jetspeed.widget.EditorTable" );
+        super.doHeaders(request, response);
+        
+        DojoPortletHelper.contributeDojoRequire( response, "dojo.lang.*" );
+        DojoPortletHelper.contributeDojoRequire( response, "dojo.event.*" );
+        DojoPortletHelper.contributeDojoRequire( response, "dojo.io.*" );
+        DojoPortletHelper.contributeDojoRequire( response, "dojo.widget.*" );
+        DojoPortletHelper.contributeDojoRequire( response, "dojo.widget.LayoutContainer" );
+        DojoPortletHelper.contributeDojoRequire( response, "dojo.widget.ContentPane" );
+        DojoPortletHelper.contributeDojoRequire( response, "dojo.widget.SplitContainer" );
+        DojoPortletHelper.contributeDojoRequire( response, "dojo.widget.TabContainer" );
+        DojoPortletHelper.contributeDojoRequire( response, "dojo.widget.Checkbox" );
+        DojoPortletHelper.contributeDojoRequire( response, "dojo.widget.Dialog" );
+        DojoPortletHelper.contributeDojoRequire( response, "dojo.widget.Button" );
+        DojoPortletHelper.contributeDojoRequire( response, "dojo.widget.Menu2" );
+        DojoPortletHelper.contributeDojoRequire( response, "jetspeed.widget.EditorTable" );
     }
      
     /**

Modified: portals/applications/demo/src/main/webapp/WEB-INF/portlet.xml
URL: http://svn.apache.org/viewvc/portals/applications/demo/src/main/webapp/WEB-INF/portlet.xml?rev=764808&r1=764807&r2=764808&view=diff
==============================================================================
--- portals/applications/demo/src/main/webapp/WEB-INF/portlet.xml (original)
+++ portals/applications/demo/src/main/webapp/WEB-INF/portlet.xml Tue Apr 14 14:53:21 2009
@@ -1273,7 +1273,14 @@
         <portlet-name>GroovyDojoCustomerList</portlet-name>
         <display-name>Groovy Dojo Customer List</display-name>
         <portlet-class>
-            org.apache.portals.bridges.groovy.GroovyPortletHeaderPhaseSupport</portlet-class>
+            org.apache.portals.bridges.groovy.GroovyPortlet
+        </portlet-class>
+        <!-- You need to change the following dojo.js url if the path is different in your enviornment.
+        By default, the following url is pointing to the default path of the default Jetspeed deployment. -->
+        <init-param>
+            <name>dojo.js.url</name>
+            <value>/jetspeed/javascript/dojo/dojo.js</value>
+        </init-param>        
         <init-param>
             <name>script-source</name>
             <value>/WEB-INF/demo/groovy/DojoCustomerPortlet.groovy</value>