jetspeed开发实战

王朝java/jsp·作者佚名  2006-12-17
窄屏简体版  字體: |||超大  

jetspeed开发实战

jetspeed开发实战 这里假设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 .............(N个,略)

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>写好源代码,并编译,参考里的:

1,<3>所建的参数action,其值为portlets.GraphDailyAction,则系统会去执行这个类

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航