当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > jetspeed开发实战

ASP.NET
ASP.NET 多附件上传实现代码
asp.net 类库中使用ConfigurationManager.ConnectionStrings
asp.net AjaxControlToolKit--TabContainer控件的介绍
ASP.NET环境下为网站增加IP过滤功能
asp.net访问Access数据库溢出错误
ASP.NET AJAX 4.0的模版编程(Template Programming)介绍
asp.net StringBuilder的用法 实例代码
asp.net Accee数据库连接不稳定解决方案
ASP.NET2.0 SQL Server数据库连接详解
asp.net Repeater之非常好的数据分页
C# 生转换网页为pdf
浅谈ASP.NET的Postback 实例代码
asp.net Ext grid 显示列表
通过ASP.net实现flash对数据库的访问
如何创建一个AJAXControlToolKit的扩展控件
asp.net 简单验证码验证实现代码
asp.net 在客户端显示服务器端任务处理进度条的探讨
Asp.net treeview实现无限级树实现代码
asp.net INI文件读写类
asp.net下检测SQL注入式攻击代码

ASP.NET 中的 jetspeed开发实战


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 205 ::
收藏到网摘: n/a

这里假设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.propertiesbottomnav.enable=truebottomnav.vm=bottom.vmleftnav.enable=trueleftnav.vm=left.vmleftnav.width=10%topnav.enable=truetopnav.vm=top.vmtopnav.logo.file=images/jetspeed-logo-1.5.giftopnav.logo.url=topnav.user_login.enable=truetopnav.user_creation.enable=truetopnav.my_pages.enable=true5,portlets源代码分析:portlet主要实现三个方法:,buildMaximizedContext最大化,buildConfigureContext显示信息,buildNormalContext正常情况,也就是所看到的正常显示时所要显示的信息,调用时,在添加模块时添加新参数action=portlets.GraphDailyActionpackage org.apache.jetspeed.modules.actions.portlets;import .............(N个,略)public class GraphDailyActionextends 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)//输出页面要显示的信息,支持输出数组,对像,及容器等形式的数据}}写好源代码,并编译,参考里的:  1,所建的参数action,其值为portlets.GraphDailyAction,则系统会去热行这个类