`

liferay portlet上加print按钮

阅读更多

 

在Eclipse生成的代码上改装。

 

============使用MVCPortlet

在portlet.xml中,替换

<portlet-class>com.test.NewPortlet</portlet-class>

<portlet-class>com.liferay.util.bridges.mvc.MVCPortlet</portlet-class>

对初学而言,这样可以避免很多麻烦。使用MVCPortlet后,不需要写java代码,就能实现print页面。

 

============加jstl相关的jar文件

加jstl-1.2.jar和standard.jar到WEB-INF/lib下,便于项目中使用jstl。

 

============修改portlet.xml

把<value>/html/print.jsp</value>

改成<value>/html/view.jsp</value>

让print和view使用同一页面。

 

============加代码到view.jsp

<%@ page contentType="text/html; charset=UTF-8" %>

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

<%@ taglib uri="http://java.sun.com/portlet_2_0" prefix="portlet" %>

<%@ taglib uri="http://liferay.com/tld/aui" prefix="aui" %>

<%@ taglib uri="http://liferay.com/tld/portlet" prefix="liferay-portlet" %>

<%@ taglib uri="http://liferay.com/tld/security" prefix="liferay-security" %>

<%@ taglib uri="http://liferay.com/tld/theme" prefix="liferay-theme" %>

<%@ taglib uri="http://liferay.com/tld/ui" prefix="liferay-ui" %>

<%@ taglib uri="http://liferay.com/tld/util" prefix="liferay-util" %>

 

<%@ page import="com.liferay.portal.kernel.util.HtmlUtil

,com.liferay.portal.kernel.portlet.LiferayPortletMode

,com.liferay.portal.kernel.language.LanguageUtil

" %>

<%---- 下面2个定义很有用,enable renderRequest, portletDisplay ----%>

<portlet:defineObjects />

<liferay-theme:defineObjects />

 

<%---- 初始化print相关参数 ----%>

<% 

String portletTitle = HtmlUtil.unescape(portletDisplay.getTitle());

boolean print = renderRequest.getPortletMode().equals(LiferayPortletMode.PRINT);

%>

 

<%---- 画print按钮,参考/portal-trunk/portal-web/docroot/html/portlet/journal_content/view.jsp ----%>

<c:if test="<%= print %>">

<div class="user-actions">

 <div class="print-action">

  <liferay-ui:icon

   image="print"

   label="<%= true %>"

   message='<%= LanguageUtil.format(pageContext, "print-x-x", 

       new Object[] {"aui-helper-hidden-accessible", portletTitle}) %>'

   url="javascript:print();"

  />

 </div>

</div>

 <aui:script>

  //print();

 </aui:script>

</c:if>

<%----   修改生成的代码为  ----%>

This is the <b>NewPortlet</b> portlet in <%=renderRequest.getPortletMode() %> mode.

============加样式到main.css,使print按钮居右

.user-actions {

  padding-bottom: 2.5em;

 

  .export-actions, .print-action, .locale-actions {

    float: right;

  }

 

  .print-action {

    margin-left: 1em;

  }

 

  .locale-separator {

    border-right: 1px solid #CCC;

    float: right;

    margin-right: 1em;

    padding: 0.8em 0.5em;

  }

}

 

 

 

春风得意

春风得意

 

note: why iteye? sina cannot paste code freely, iteye can.

  • 大小: 23.2 KB
分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    liferay portlet 开发实例

    在IT领域,特别是企业级应用开发中,Liferay作为一个强大的企业门户平台,提供了丰富的功能和服务,其中Liferay Portlet的开发是构建定制化企业应用的关键技术之一。本文将基于提供的文件信息,深入解析Liferay ...

    Liferay portlet 工程示例代码

    Liferay Portlet工程示例代码提供了开发者们一个深入理解并实践Liferay Portal平台上的portlet开发的宝贵资源。Liferay Portal是一款开源的企业级门户系统,它允许用户创建、管理和集成各种Web应用程序,而portlet...

    liferay portlet例子

    liferay portlet例子 liferay portlet例子

    Liferay Portlet 开发文档

    Liferay Portlet开发文档是一份全面介绍Liferay Portlet开发的指南,内容涵盖了Portal的概念、Portlet的定义以及JSR 286(Java Specification Request 286)规范。文档强调了Liferay作为一款开源企业级门户网站解决...

    liferay portlet demo

    开发者可以通过分析和运行这个示例,学习如何在Liferay平台上构建动态、自定义化的应用程序。 【标签】:“liferay portlet demo” “liferay”标签明确了这是关于Liferay Portal的内容,“portlet”表示与Portlet...

    liferay portlet 站内消息组件

    Liferay Portlet是一种符合Java Portlet规范的组件,它可以嵌入到Liferay Portal的页面上,提供各种功能,如新闻展示、论坛讨论、日历管理等。Portlets通过Liferay的portlet容器运行,该容器负责渲染和管理portlet的...

    liferay portlet开发参考手册

    《Liferay Portlet开发参考手册》是温兵先生编著的一本专为开发者设计的指南,旨在帮助读者深入了解和熟练掌握Liferay Portal平台上的Portlet开发技术。Liferay Portal是一款开源的企业级内容管理平台,而Portlet是...

    liferay portlet开发

    4. **部署**:将Portlet打包成WAR文件,并部署到Liferay服务器上。 #### 六、小结 通过插件方式开发Liferay Portlet为开发者提供了高度灵活性和独立部署的能力。尽管这种方式在可用库方面有所限制,但对于大多数...

    Liferay-Portlet-SDK5.2.3.rar_liferay_liferay sdk_portlet

    Liferay Portlet SDK 5.2.3是一个强大的工具集,为开发者提供了构建Liferay Portal平台上的portlet应用所需的一切。通过学习和使用SDK,开发者可以创建出功能丰富、交互性强的portlet,进一步扩展和定制Liferay ...

    liferay portlet

    Liferay在其基础上扩展了Portlet模式,除了标准的edit、view、help模式,还添加了about、config、preview和print等模式。开发Liferay Portlet时,可以选择继承Liferay提供的基类,如...

    用struts1.X实现liferay portlet插件(HelloWorld)

    7. **部署和测试**:完成开发后,portlet需要打包成WAR文件并部署到Liferay服务器上。在Liferay控制台中,你可以添加新的portlet并将其拖放到门户布局上进行测试。 通过上述步骤,我们可以理解如何利用Struts1的MVC...

    liferay_portlet对象详解

    【Liferay Portlet 对象详解】 在 Liferay 平台中,Portlet 是核心组件,它负责呈现内容和提供互动功能。Portlet 技术的理解和应用是开发 Liferay 应用程序的关键。本文将深入解析 Portlet 的关键概念,包括 ...

    liferay-portlet-development

    《Liferay Portlet 开发——全面指南》:深入解析与实战技巧 本书旨在为开发者提供一份详尽的Liferay Portlet开发指南,涵盖从基础知识到实际应用的全面内容。Liferay是一款开源的企业级门户平台,它支持高度定制化...

    Liferay5.2.3 样例Portlet

    Liferay5.2.3的样例,通过war.bat打包后发布到相应的liferay环境即可。 另外,需要配置context,tomcat中的代码如下: &lt;/Context&gt;

    liferay-portlet-development-guide-4.3

    《Liferay Portlet Development Guide 4.3》是针对Liferay Portal平台的一份详细开发指南,旨在帮助开发者理解和创建portlet应用程序。Liferay Portal是一个开源的企业级门户系统,它提供了丰富的功能,如用户管理、...

    liferay portlet struts2例子

    一个小例子 挺有用的 关于 liferay产品中配置 struts2

    liferay一个简单的portlet

    5. **部署与测试**:将构建好的Portlet打包成WAR文件,然后部署到Liferay服务器上。可以通过Liferay控制台查看和管理已部署的Portlets,并进行测试。 在给定的“hello-portlet”示例中,我们可以预期它是一个简单的...

    Liferay Soy Portlet可视化数据

    在Liferay中,Portlet是一种可重用的组件,它可以嵌入到门户页面上,提供各种功能,如显示数据、提供交互等。 在这个实例中,“Liferay Soy Portlet可视化数据”意味着我们将探讨如何利用Soy Portlet从web service...

    Liferay跨页面Portlet之间的调用与数据传递.docx

    在Liferay中,跨页面Portlet之间的调用与数据传递是一项关键任务,因为这涉及到不同Portlet间的协作和信息共享。Liferay提供了多种通信机制,包括PortletSession、Public Render Parameters以及Portlet事件,但这些...

    portal pack 3.0.2 Liferay Portlet 开发工具

    Support For Liferay 5.2.3 & Web space 10.0 U4 Support For both NetBeans 6.5.x & 6.7 Page Navigation Fix For Visual JSF Portlet

Global site tag (gtag.js) - Google Analytics