浏览 1392 次
该帖已经被评为隐藏帖
|
|
---|---|
作者 | 正文 |
发表时间:2008-11-12
最后修改:2008-11-12
Portlet有两种URL: 1. renderResponse.createRenderURL(); 2. renderResponse.createActionURL(); 这两种URL是Portlet处理的两个阶段: [img]/upload/attachment/49259/1a6ad96a-4225-31c8-80e2-f1e43e80b2a6.jpg [/img] 所以如果想在Portlet的processAction中处理创建Action时的参数,你必须使用Action URL. 测试的code. JSP中创建URL并在Form的Action中使用,如果对标签熟悉可以用标签创建. 1. <% 2. PortletURL updateCompanyName=renderResponse.createActionURL(); 3. updateCompanyName.setParameter(Constant.SERVICE_NAME,CompanyPortlet.SERVICE_UPDATE_COMPANY_NAME); 4. %> 5. <form name="updateCompanyName" action="<%=updateCompanyName%>" method="post"> 6. 在Portlet的processAction获取参数: 1. public void processAction(ActionRequest request, ActionResponse response) throws PortletException, java.io.IOException { 2. String serviceName=request.getParameter(Constant.SERVICE_NAME); 3. System.out.println("serviceName="+serviceName); 4. } 比较奇怪的一点在JBoss中Form中的Action必须明确写成 method=Post Portlet中的processAction才能获得参数。所以,如果要让你创建的URL能够被Portlet的processAction截获; 第一你需要创建的是ActionURL; 第二如果在Form中使用method=post是必须的. 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |