portlet标签

该博客转载网上很多内容,并在此基础上有所修改和补充

a、 defineObjects:

使用该标签后就可以使用以下三个对象

 

    renderResponse

    renderRequest

    portletConfig--------可以用此变量获得portlet.xml文件中的配置信息

但是必须声名:

<portlet:defineObjects/>其中不可以定义任何属性或者包含任何内容

使用方式:

<%@ page session="false" import="java.util.*,javax.portlet.*,com.ibm.spc.*" %>
<%@taglib uri="http://java.sun.com/portlet" prefix="portlet" %>
<portlet:defineObjects/>

 <%
 PortletSession session = renderRequest.getPortletSession();
 HelloWorldPortletBean bean = 
 (HelloWorldPortletBean)session.getAttribute
 (HelloWorldPortlet.VIEW_BEAN);
%>
 if (bean != null) {
  String formText = bean.getFormText();
  if( formText.length()>0 ) {
%>
  Hello <%=formText%>.
 <%
  }
 }
 %>
 
 

b、 actionURL

 

windowState:当前窗口大小,最大,最下,正常

portletMode:当前portlet状态,可以定义当前portlet的标题是否可以编辑

var:自定义namespace输出的名称

secure:其他portlet是否可以连接到该portlet,默认为true,如果设置为false的时候其他portlet访问该portlet得时候会出现JspException

属性值类型对应值
windowStateStringminimized, normal, maximized
portletModeStringview, edit, help
varString任何值
secureStringtrue,false
<portlet:actionURL windowState=”normal” portletMode=”edit”> 
<portlet:param name=”action” value=”login”/> 
</portlet:actionURL>

以上创建一个action URL , 当访问它时将使portlet window变为normal 装态, 模式变为 edit。 
可以通过如下代码在processAction中判断当前操作模式:

public void processAction(ActionRequest request, ActionResponse response) 
    throws PortletException, IOException { 
        if (request.getPortletMode() == PortletMode.VIEW) {   //浏览页 
           ….. 
}else if(request.getPortletMode() == PortletMode.EDIT){ //编辑状态 
    ….. 
}else if(request.getPortletMode() == PortletMode.HELP){ //帮助状态 
    ….. 
}

c、 renderURL :

属性 值类型对应值
windowState String minimized,normal,maximized
portletModeString view, edit, help
var String 任何值
secureString true,false

例子:

<portlet:renderURL portletMode=”view” windowState=”maximized”> 

     <portlet:param name=”number” value=”1”/> 

     <portlet:param name=”page” value=”2”/> 

</portlet:renderURL>

创建一个render URL , 当访问它时将使portlet window变为maximized装态, 模式变为 view.

关于render URL和actionURL的区别看我的另外一个博客

d、 namespace Tag

为目前的Portlet产生一个唯一的Value. 防止和其他的Portlet 或者Portal页面上的value产生冲突.

<A HREF=”javascript: <portlet:namespace/>doFoo()”>Foo</A>

 

e、 param Tag:

這個 tag 是定義一個參數值, 可能是放在 actionURL 或 renderURL 之中. param Tag 不准包含任何 Body Content.

定义的可传参数,格式为<portlet:param name="action" value="hello edward"/> name为要穿过去的字符串名字,value就是要可传送的值,一般结合<portlet:actionURL>与<portlet:renderURL>用,可以使用getParameter方法取得该name的值

属性值类型
nameString

 

<portlet:param name=”myParam” value=”someValue”/>

注: param Tag不可以有body content.

转载于:https://www.cnblogs.com/yaoniebingbing/p/3644846.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值