liferay spring mvc的实现
1 首先推荐一本liferay的书
Portlet In Action,
本例是按照这本书进行配置的,原文在 Getting started with Spring Portlet MVC中进行了介绍,原理里面讲解的很清楚
2 首先需要导入的包
3 我项目存在一个插件类型为 Protlet的名称为MyFirstPortlet的portlet 工程,在着项目中新建一个名为myliferayspringmvc的Protlet,用eclipse ide自动生成代码
4 在docroot/WEB-INF/src单机右键新建一个Package并命名为com.springMVC
5在com.springMVC右键单击,新建一个class,命名为SpringPortlet.java,代码如下
package com.springMVC;
import java.util.HashMap;
import java.util.Map;
import javax.portlet.ActionRequest;
import javax.portlet.ActionResponse;
import javax.portlet.RenderRequest;
import javax.portlet.RenderResponse;
import org.springframework.web.portlet.ModelAndView;
import org.springframework.web.portlet.mvc.Controller;
public class SpringPortlet implements Controller{
@Override
public void handleActionRequest(ActionRequest actionRequest, ActionResponse actionResponse)
throws Exception {
}
@Override
public ModelAndView handleRenderRequest(RenderRequest renderRequest,
RenderResponse renderResponse) throws Exception {
Map<String,Object> model = new HashMap<String,Object>();
System.out.println("运行到了这里哦");
model.put("helloWorldMessage", "Hello World");
return new ModelAndView("view",model); //ModelAndView("view",model) //这里面的view 对应了 /html/myliferayspringmvc/view.jsp
}
}
6 在html/myliferayspringmvc/view.jsp代码如下
<%@page import="com.liferay.portal.util.PortalUtil"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ page language="java" contentType="text/html; charset=UTF-8"%>
<%@ taglib uri="http://java.sun.com/portlet_2_0" prefix="portlet" %>
<portlet:defineObjects />
<c:out value="${helloWorldMessage}"></c:out>
7 配置好Portlet.xml
8 配置好myliferayspringmvc.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.2.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd">
<beans>
<bean id="springPortlet" class="com.springMVC.SpringPortlet">
</bean>
<bean id="portletModeHandlerMapping" class="org.springframework.web.portlet.handler.PortletModeHandlerMapping">
<property name="portletModeMap">
<map>
<entry key="view">
<ref bean="springPortlet"/>
</entry>
</map>
</property>
</bean>
<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass"
value="org.springframework.web.servlet.view.JstlView" />
<property name="prefix" value="/html/myliferayspringmvc/" />
<property name="suffix" value=".jsp" />
</bean>
</beans>
</beans>
9 配置好 web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<servlet>
<servlet-name>ViewRendererServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.ViewRendererServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ViewRendererServlet</servlet-name>
<url-pattern>/WEB-INF/servlet/view</url-pattern>
</servlet-mapping>
</web-app>
10 到这一步就就算搭建好了一个简单的liferay spring mvc架子了,至于原理请参考 第1步 推荐的书籍 Portlet In Action,中去查看
liferay spring mvc的实现相关推荐
- liferay spring mvc 案例地址
http://books.dzone.com/articles/hello-world-portlet-using-Spring-3-portlet-MVC
- Java之Spring mvc详解(非原创)
文章大纲 一.Spring mvc介绍 二.Spring mvc代码实战 三.项目源码下载 四.参考文章 一.Spring mvc介绍 1. 什么是springmvc springmvc是spri ...
- spring mvc 关键接口 HandlerMapping HandlerAdapter
HandlerMapping Spring mvc 使用HandlerMapping来找到并保存url请求和处理函数间的mapping关系. 以DefaultAnnotationHandle ...
- spring mvc 控制器方法传递一些经验对象的数组
由于该项目必须提交一个表单,其中多个对象,更好的方法是直接通过在控制器方法参数的数组. 因为Spring mvc框架在反射生成控制方法的參数对象的时候会调用这个类的getDeclaredConstru ...
- Spring MVC 4
Spring MVC 4 项目文件结构 pom.xml依赖 <properties><endorsed.dir>${project.build.directory}/endor ...
- java注解返回不同消息,Spring MVC Controller中的一个读入和返回都是JSON的方法如何获取javax.validation注解的异常信息...
Spring MVC Controller中的一个读入和返回都是JSON的方法怎么获取javax.validation注解的错误信息? 本帖最后由 LonelyCoder2012 于 2014-03- ...
- Spring MVC前后端的数据传输
本篇文章主要介绍了Spring MVC中如何在前后端传输数据. 后端 ➡ 前端 在Spring MVC中这主要通过Model将数据从后端传送到前端,一般的写法为: @RequestMapping(va ...
- 番外:Spring MVC环境搭建和Mybatis配置避坑篇
2019独角兽企业重金招聘Python工程师标准>>> web.xml引入对spring mvc的支持: spring-mvc配置spring-mvc: spring-mybatis ...
- spring mvc velocity 配置备忘
2019独角兽企业重金招聘Python工程师标准>>> Spring里面最重要的概念是IOC和AOP,还有两项很重要的模块是事务和MVC,对于IOC和AOP,我们要深究其源码实现,对 ...
最新文章
- 【数组方法大合集】原生js数组array常用工具方法大合集
- 计算机三级考试在线免费题库,国家三级计算机考试题库.docx
- 空腹吃香蕉对身体好吗?哪些水果不宜空腹吃
- 《时间简史》(评论一)(转载)
- C++shell sort希尔排序的实现算法之一(附完整源码)
- 1048:有一门课不及格的学生
- 经典C/C++面试题
- oracle 表关联索引优化,Oracle执行计划调优-超级大表关联超级小表的性能调优
- 事件内核对象 CreateEvent
- centos 修改root密码_Vultr 修改 Root 密码的方法
- 第五版fmea表格_FMEA第五版: 新版 DFMEA六步法解析
- visio连接线和框图不好控制总跑跳问题
- 【python实战】制作微信动态名片
- java ant和maven_JAVA构建工具:Maven与Ant的区别
- MIMO天线市场深度研究分析报告
- 【转】为什么linux系统变慢了
- Fragment already added解决
- threejs使用tweenjs实现点击标签过渡到相应视角
- 前端传输JSON格式数据 居然尾随了一个等于号...
- 灵魂歌手 演唱:梁博
热门文章
- leetcode 58. 最后一个单词的长度(C语言)
- 蒲公英怎么加入别人的网络_挖蒲公英吃的,抓紧看看吧!
- 7行代码AC——1010 一元多项式求导 (25分)
- 【解题报告+通法】_九宫幻方 蓝桥杯 2017年C组第八题(dfs解法)
- 数据库原理与应用(SQL Server)笔记 第五章 索引和视图
- java上传文件至nas_使用JCIFS上传文件至NAS设备(Logon failure: unknown user name or bad password)解决...
- vs code 开发企业级python_基于VS Code配置Python开发环境
- layui js添加html,layui.js如何声明全局变量?
- html语言 怎么清除用户名 name= password=,在html页面中填写注册表单后,它会给出这个错误,并使用用户名和密码并将值存储在登录表单中...
- java占用提示_Java显示使用或已经覆盖了api为啥?