portlet初学习及HelloWorld例子
1. 在myeclipse中新建一个web project,在src中新建如下类:
- package com.yoyo.portlet;
- import java.io.IOException;
- import javax.portlet.GenericPortlet;
- import javax.portlet.PortletException;
- import javax.portlet.PortletRequestDispatcher;
- import javax.portlet.RenderRequest;
- import javax.portlet.RenderResponse;
- public class TestPortlet extends GenericPortlet
- {
- public void doView(RenderRequest request, RenderResponse response) throws PortletException, IOException
- {
- response.setContentType("text/html");
- PortletRequestDispatcher rd = getPortletContext().getRequestDispatcher("/index.jsp");
- rd.include(request, response);
- }
- public void doEdit(RenderRequest request, RenderResponse response) throws PortletException, IOException
- {
- response.setContentType("text/html");
- String jspName = getPortletConfig().getInitParameter("jspEdit");
- PortletRequestDispatcher rd = getPortletContext().getRequestDispatcher(
- jspName);
- rd.include(request, response);
- }
- }
2. 在WebRoot/WEB-INF下面新建一个portlet.xml的文件,里面内容如下:
- <?xml version="1.0" encoding="UTF-8"?>
- <portlet-app xmlns="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"
- version="1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd
- http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd">
- <portlet>
- <description>Test the portlet</description>
- <portlet-name>hello</portlet-name>
- <display-name>test portlet</display-name>
- <portlet-class>com.yoyo.portlet.TestPortlet</portlet-class>
- <expiration-cache>-1</expiration-cache>
- <supports>
- <mime-type>text/html</mime-type>
- <portlet-mode>VIEW</portlet-mode>
- <portlet-mode>EDIT</portlet-mode>
- </supports>
- <supported-locale>en</supported-locale>
- <portlet-info>
- <title>TEst the portlet</title>
- <short-title>test</short-title>
- <keywords>test,portlet</keywords>
- </portlet-info>
- </portlet>
- </portlet-app>
3. 修改WebRoot/WEB-INF下面的web.xml文件,内容如下:
- <?xml version="1.0" encoding="UTF-8"?>
- <web-app version="2.4"
- xmlns="http://java.sun.com/xml/ns/j2ee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
- http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
- <servlet>
- <servlet-name>test</servlet-name>
- <servlet-class>org.apache.pluto.core.PortletServlet</servlet-class>
- <init-param>
- <param-name>portlet-name</param-name>
- <param-value>hello</param-value>
- </init-param>
- <load-on-startup>1</load-on-startup>
- </servlet>
- <!-- 下面的<servlet-name>test</servlet-name>中的test和上面的<servlet></servlet>中<servlet-name></servlet-name>的名字对应 -->
- <!-- 下面的<url-pattern>/PlutoInvoker/hello</url-pattern>中的hello则与portlet.xml中<portlet></portlet>中<portlet-name></portlet-name>的名字对应-->
- <servlet-mapping>
- <servlet-name>test</servlet-name>
- <url-pattern>/PlutoInvoker/hello</url-pattern>
- </servlet-mapping>
- <welcome-file-list>
- <welcome-file>index.jsp</welcome-file>
- </welcome-file-list>
- </web-app>
4. 将tomcat/shared/lib下面的jar包引到项目中来(我的里面已经放好了,是做其他项目用的到的,在这个中可能有些jar包不需要),这些jar包如下:castor-1.1.1.jar,commons-codec-1.3.jar,commons-httpclient-3.0.1.jar,commons-logging.jar,log4j-1.2.11.jar,pluto-container-1.1.6.jar,pluto-descriptor-api-1.1.6.jar,pluto-descriptor-impl-1.1.6.jar,pluto-taglib-1.1.6.jar,portlet-api-1.0.jar,simpleAuthClient.jar,xpp3_min-1.1.4c.jar,xstream-1.3.jar。
经过以上步骤,一个简单的portlet就建好了。下载pluto-current-bundle包,解压后启动bin目录下的startup.bat,打开http://localhost:8080/pluto/portal,登陆进去后,选择上面的Pluto Admin,新建一个页面,并在下面选择自己的portlet项目,这样就可以查看效果了。
portlet初学习及HelloWorld例子的更多相关文章
- Eureca Server的Helloworld例子
[学习笔记] 1.Eureca Server的Helloworld例子: 做个普通的maven project,quickstart archetype.改成jdk.8.下面Camden.SR1是版本 ...
- java当中JDBC当中请给出一个sql server的helloworld例子
[学习笔记] 1.sql server的helloworld例子: import java.sql.*; public class JdbcHelloSqlServer { public stati ...
- java当中请给出一个oracle的helloworld例子
[学习笔记] 2.oracle的helloworld例子: import java.sql.*;public class OracleHello{ public static void main ...
- Win7 Eclipse 搭建spark java1.8(lambda)环境:WordCount helloworld例子
[学习笔记] Win7 Eclipse 搭建spark java1.8(lambda)环境:WordCount helloworld例子 lambda表达式是java8给我们带来的一个重量的新特性,借 ...
- Win7 Eclipse 搭建spark java1.8环境:WordCount helloworld例子
[学习笔记] Win7 Eclipse 搭建spark java1.8环境:WordCount helloworld例子在eclipse oxygen上创建一个普通的java项目,然后把spark-a ...
- Win7 Eclipse 搭建spark java1.8编译环境,JavaRDD的helloworld例子
[学习笔记] Win7 Eclipse 搭建spark java1.8编译环境,JavaRDD的helloworld例子: 在eclipse oxygen上创建一个普通的java项目,然后把spark ...
- windows scala helloworld例子详解
[学习笔记] windows scala helloworld例子详解: 在操作系统中,我们的Test3.scala会生成Test3.class,然后class文件被虚拟机加载并执行, 这一点和jav ...
- AspectJ基础学习之三HelloWorld(转载)
AspectJ基础学习之三HelloWorld(转载) 一.创建项目 我们将project命名为:aspectjDemo.然后我们新建2个package:com.aspectj.demo.aspect ...
- [Cocos2d-x for WP8学习笔记] HelloWorld结构分析
先来看一下目录结构: Assets:游戏资源文件,图片音频等,Resource文件夹也有类似功能 include:用于放置游戏头文件 Shaders:渲染器着色器文件(大雾) cocos2dorig. ...
随机推荐
- 【并查集】PKU-1182 食物链
食物链 Description 动物王国中有三类动物A,B,C,这三类动物的食物链构成了有趣的环形.A吃B, B吃C,C吃A. 现有N个动物,以1-N编号.每个动物都是A,B,C中的一种,但是我们并不 ...
- Quartus II 11.0 开始使用
一.Altera Quartus II 11.0套件介绍 所谓巧妇难为无米之炊,再强的软硬件功底,再多的思维创造力,没有软件的平台,也只是徒劳.因此,一切创造的平台——Quartus II 软件安装, ...
- runloop之于thread
做一个技术方向久了,难免会沉溺其中,对当初开始接触这个方向的许多根本上的疑问渐渐都不了了之,意识上认为然,而不知其所以然. 最近重新梳理iOS的runloop,说说自己的理解,希望能说清楚. 先抛出一 ...
- Python(2.7.6) 函数对象与闭包
在 Python 中,一切皆对象.函数也是对象,它可以赋值给其他变量,也可以当作参数传递. lambda 表达式可以创建函数对象,在 Python 中,lambda 表达式的函数体只能有唯一的一条语句 ...
- asp:弹出警告框,并重定向的自定义过程
因为制作的需要写了这样一个简单的函数,重定向可以是指定的页.也可以是前一页! 有两个参数:messtr,警告框的信息;urlstr:转向的网页,为""时,返回到前一页! 程序代码 ...
- SignalR 跨域设置
参考文章:http://www.cnblogs.com/nywd/p/3691813.html 上一节,已经实现了,当前域内的通信,这一节中,介绍一下跨域的即时通信,既然要做,我们肯定要把这个推送及聊 ...
- 关于TouchEvent中出现异常:MessageQueue-JNI问题
Tag:MessageQueue-JNI Exception dispatching input event. Exception in MessageQueue callback: handleRe ...
- asp.net 配置二级域名的共享session,并实现sso单点登录
公司最近做了一个新网站.原先网站的网址是www.xxxx.com.新做的网站要部署到info.xxxx.com.这两个网站要实现单点登录.而新老网站本身机构的原因,对于登录状态的判断,说白了就是对于s ...
- MyEclipse build path修改问题
- ###《Effective STL》--Chapter7
点击查看Evernote原文. #@author: gr #@date: 2014-08-31 #@email: forgerui@gmail.com Chapter7 在程序中使用STL Topic ...