对于在liferay开发平台中应用struts框架,前段时间简单介绍了一下;这里说一下在liferay中struts框架的response相关问题。
前段时间参考了不少liferay中使用struts的资料,在liferay的论坛中也有人建议使用jsp或者servlet来处理ajax的请求;我也试过在struts的Action中处理后用response写字符串的形式给客户端反馈数据,但是客户端获得的是整个页面的html源代码,开始的时候,如果在Action中设置了页面跳转,再跳回原来页面的话,客户端得到的就是整个页面的代码,当方法中返回一个空页面跳转的话,客户端得到的是你反馈的数据。我认为使用了liferay对struts的桥接处理,进行页面跳转以后liferay还对response进行了处理,把你想反馈回客户端的数据一并返回了。同样的问题也出现在我使用liferay对struts的桥接处理方法中的文件下载的应用中,各种参数都设置的正确,但是客户端获得的不是一个文件,而是liferay在页面中以文本形式给你打开了这个文件;这再次证明页面跳转以后liferay对response的输出方法进行了修改。
原来以为使用liferay对struts桥接处理后,使用struts会更加方便,现在我不这样认为了;有些原本独立使用struts时的应用方式很简单,但是放到liferay的桥接action下时用起来有点绕弯路。今天试了一下,不使用liferay对struts的桥接处理,独立使用struts也是可以的,也就是现在的Action不继承com.liferay.portal.struts.PortletAction类,而是仍旧直接继承org.apache.struts.action.Action。看看PortletAction的源码,它里面也是继承org.apache.struts.action.Action,结合自身的一些需要重写了很多方法,可是这些方法好用么?在框架配置方面,配置文件和以前也是一样的。
个人认为我这是受了liferay培训人员的误导,一直在liferay对struts的桥接处理下摸索,才会收效甚微。当然这也只是我自己的看法,没有贬义。
如有问题,欢迎回复讨论。
分享到:
相关推荐
在Web应用程序开发中,Liferay Portal和Struts 2框架的结合使用可以提供强大的功能和灵活性。Liferay是一款开源的企业级门户平台,它提供了内容管理、社交网络、工作流等功能。而Struts 2则是一个基于MVC(Model-...
将Liferay与Struts整合,可以充分利用Struts的业务逻辑处理能力和Liferay的门户管理特性,打造出高效、灵活的应用系统。 在这个"liferay 整合struts例子"中,我们可以学习到以下几个关键知识点: 1. **Liferay ...
该文档是在Liferay5.1.2中应用struts的示例,使用时只要现创建一个portlet,然后解压缩并利用该文档中相同的部分将其覆盖,然后build,deploy后,即可看到其结果,安装使用都及其方便。
标题中的“Liferay搭建Struts2”意味着我们将讨论如何在Liferay门户平台上集成并使用Struts2框架。Liferay是一款开源的企业级Portal解决方案,而Struts2是一个流行的Java web应用程序开发框架,它基于Model-View-...
在Liferay平台中,利用Struts2框架开发Portlet是一种常见的实现方式。这种方式结合了Liferay的强大功能与Struts2的灵活性,可以快速构建出功能丰富且易于维护的企业级应用。本文将详细介绍如何在Liferay环境下搭建...
【描述】提到的“一个简单的学习liferay例子”,意味着这个demo是为初学者设计的,帮助他们理解如何在Liferay中整合Struts2来构建功能模块。通过这个例子,开发者可以学习到如何创建portlet、配置Action、定义结果...
部署后,你可以在Liferay门户中看到并使用这个集成Struts2的portlet。 总结来说,"struts2+liferay集成"涉及到的主要知识点包括:Liferay IDE和SDK的使用,Portlet的生命周期和开发,Struts2框架的配置和Action机制...
在"Liferay Struts2 Demo"中,Struts2作为portlet的实现框架,负责处理用户请求、调用业务逻辑并返回响应。portlet是Liferay Portal中的基本组件,它可以是一个独立的应用程序,展示在门户页面上,与其他portlet并列...
开发者可以通过这个案例学习如何在Liferay中创建portlet,然后引入Struts2进行前端请求处理,利用Spring进行业务逻辑和服务管理,以及使用iBatis进行数据库操作。此外,案例可能还包括了相应的配置文件,如struts....
为了更好地理解如何在Liferay 6中使用Struts2开发Portlet,我们可以参考Struts2自带的portlet示例`struts2-portlet-2.1.8.1.war`。该示例位于Struts2解压包下的`apps`目录内,它是基于Pluto (Apache的Portal实现) 的...
将Struts2框架集成到Liferay的Portlet插件中可以实现更为灵活的业务逻辑处理,提高开发效率。 #### 二、Portlet插件集成Struts2框架步骤详解 ##### 1. 配置`portlet.xml` - **portlet.xml**是Portlet的核心配置...
一个小例子 挺有用的 关于 liferay产品中配置 struts2
在本文中,我们将深入探讨如何使用Struts2框架在Liferay平台上开发Portlet。首先,我们需要准备相关的开发环境和依赖库。Liferay是一款开源的企业级门户平台,而Struts2是一个流行的MVC(模型-视图-控制器)框架,...
在Liferay门户平台中,开发基于Struts2的portlet是实现动态网页和交互功能的重要方式。以下是一个详细的步骤指南,涵盖了从项目准备到portlet创建的所有关键环节。 ### 一、准备工作 首先,你需要下载以下软件和...
在本项目中,Spring可能被用来管理Bean、处理事务、实现AOP功能以及与其他框架如Struts2和iBatis的集成。 【iBatis】iBatis是一个SQL映射框架,它允许开发者将SQL查询直接写在XML配置文件中,从而分离数据访问层与...
在标题和描述中提到的"struts2_spring_json.rar"是一个关于如何在Liferay中利用Struts2和Spring框架处理JSON数据的示例应用。 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,常用于前后端交互,...
此外,"plugins开发指南11-plugin中开发hibernate应用.pdf"涵盖了在Liferay中使用Hibernate进行数据持久化的实践方法,这对于处理复杂业务逻辑至关重要。 "plugins开发指南13-liferay中使用ldap分析.pdf"讨论了...
在这个特定的场景中,Liferay 采用了经典的 Java Web 开发框架组合:Struts2、Hibernate 和 Spring,这三者共同构建了一个强大且灵活的应用基础。 **Struts2** 是一个用于构建 MVC(Model-View-Controller)架构的...
liferay集成struts2 spring hibernate的完整示例,下载后将项目放入lifeRay的SDK下的portalet 目录,然后在本地数据库中创建BOOK表(bookId、bookName、BookType),修改portal.properties中JDBC连接属性,在Eclipse...