Jetspeed开发文档2

80酷酷网    80kuku.com

  Jetspeed开发文档2
这里假设monsys为web服务的名称,其路径在webapps/下面
1,jetspeed的图片处理
图片默认放在monsys/images下面,
调用方法:$clink.setURI("images/test.jpg")

2,javascript处理
javascript黑认放在monsys/javascript下
调用方法:$clink.setURI("javascript/test.css")

3,portlets的位置位于monsys/WEB-INF/templates/vm/portlets/html下面

4,页面总体布局控制看JetspeedResources.properties
bottomnav.enable=true
bottomnav.vm=bottom.vm

leftnav.enable=true
leftnav.vm=left.vm
leftnav.width=10%

topnav.enable=true
topnav.vm=top.vm
topnav.logo.file=images/jetspeed-logo-1.5.gif
topnav.logo.url=
topnav.user_login.enable=true
topnav.user_creation.enable=true
topnav.my_pages.enable=true

5,portlets源代码分析:
portlet主要实现三个方法:
<1>,buildMaximizedContext最大化
<2>,buildConfigureContext显示信息
<3>,buildNormalContext正常情况,也就是所看到的正常显示时所要显示的信息
<4>,调用时,在添加模块时添加新参数action=portlets.GraphDailyAction


package org.apache.jetspeed.modules.actions.portlets;

import .............(略)

public class GraphDailyAction
extends VelocityPortletAction {

/**
* Subclasses should override this method if they wish to
* build specific content when maximized. Default behavior is
* to do the same as normal content.
*/
protected void buildMaximizedContext(VelocityPortlet portlet,
Context context,
RunData rundata) {
buildNormalContext(portlet, context, rundata);

String text = (String) context.get("text");

if (text == null) {
text = "Top Record of baccarat game";
}

context.put("text", text + " (Maximized !)");
}

/**
* Subclasses should override this method if they wish to
* provide their own customization behavior.
* Default is to use Portal base customizer action
*/
protected void buildConfigureContext(VelocityPortlet portlet,
Context context,
RunData rundata) {

buildNormalContext(portlet, context, rundata);
setTemplate(rundata, "hello-customize");

}

/**
* 这是主要部份
* Subclasses must override this method to provide default behavior
* for the portlet action
*/
protected void buildNormalContext(VelocityPortlet portlet,
Context context,
RunData rundata) {
String mode= portlet.getPortletConfig().getInitParameter("mode"); //读取添加模块时从配置文件传来的参数
String searchdate = rundata.getParameters().getString("searchdate"); //取得从页面提交得到的参数
context.put("mode",mode);
context.put("searchdate",searchdate)//输出页面要显示的信息,支持输出数组,对像,及容器等形式的数据

}

}

<5>写好源代码,并编译,参考jetspeeed简单开发文档.txt里的:
  三,1,<3>所建的参数action,其值为portlets.GraphDailyAction,则系统会去热行这个类

6,数据库配置Torque.properties



分享到
  • 微信分享
  • 新浪微博
  • QQ好友
  • QQ空间
点击: