(转)openfire插件开发(二) 基于web的插件开发

转:http://blog.csdn.net/lovexieyuan520/article/details/38935137

在前面的博客中,我介绍了openfire插件开发,在那篇博客中我详细的说明怎样开发一个基于控制台的插件,这篇博客中我要介绍基于web的插件程序,同样,这篇博客实在openfire插件开发的基础上开发的,如果有网友不明白的,请移步至前面相关的文章,我写openfire是一系列连续性的文章,建议大家从前面开始看起,以释没头没尾之嫌,好了,进入正题:

1、新建我们需要的jsp文件,在插件src目录下面增加web文件夹,在web文件夹中添加一个welcome.jsp文件,这个文件需要自己编写。 可以参考其他案例插件。截图如下:

       选择新建jsp文件,截图如下:

在welcome.jsp中随便输入写内容,我的如下:

[html] view plain copy

  1. <%@ page language="java" contentType="text/html; charset=UTF-8"
  2. pageEncoding="UTF-8"%>
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  4. <html>
  5. <head>
  6. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  7. <title>helwo world welcome</title>
  8. <meta name="pageID" content="welcome" />
  9. </head>
  10. <body>
  11. <h1>hello world</h1>
  12. <input type="text"/>
  13. <input type="submit" value="提交">
  14. </body>
  15. </html>

修改helloWorld控制台插件的plugin.xml文件,内容如下:

[html] view plain copy

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <plugin>
  3. <class>com.helloworld.HelloWorldPlugin</class>
  4. <name>helloWorld</name>
  5. <description>First Openfire Custom Plugin.</description>
  6. <author>xieyuan</author>
  7. <version>1.0.0</version>
  8. <date>14/07/2014</date>
  9. <minServerVersion>3.9.0</minServerVersion>
  10. <adminconsole>
  11. <tab id="tab-server">
  12. <sidebar id="sidebar-server-settings">
  13. <item id="welcome" name="welcome"
  14. url="welcome.jsp"
  15. description="hello world" />
  16. </sidebar>
  17. </tab>
  18. </adminconsole>
  19. </plugin>

现在,我们来看看效果,刷新页面我们看到:

现在解释一下上面各个选项的含义:

welcome.jsp中<meta name="pageID" content="welcome" />,content对应的是plugin.xml中item中的id。

plugin.xml中tab对应的是页面的顶部tab,比如服务器对应的是id为tab-server,用户/组对应的是tab-users,反正都有一个对应,然后sidebar对应每一个tab下面的子项,比如服务器下面有两个子项分别为服务器管理器,服务器设置,对应id为sidebar-server-manager,sidebar-server-settings,最后的item节点中,id前面说了,name指页面超链接的文本。这样呢就能将插件中的页面放到自己想要的地方去。当然不一定要放到现有的tab下面,也可以新建一个tab,来存放。具体可以参考Fastpath Service这个插件的plugin.xml,照着他的例子写就行了。

最后使用ant build.xml文件,编译出最新的插件文件。ant之后,插件才会生效!

时间: 2024-10-08 13:40:30

(转)openfire插件开发(二) 基于web的插件开发的相关文章

基于Web Service的客户端框架搭建二:数据转换层(FCL)

引言 要使用WebService来分离客户端与服务端,必定要使用约定好两者之间的数据契约.Json数据以其完全独立于语言的优势,成为开发者的首选.C# JavaScriptSerializer为Json与Object对象之间的序列化与反序列化提供了良好的方法. 接口设计 数据转换包含Json反序列化成Object对象和Object序列化成Json数据.在项目中,会有很多实例对象,都需要使用Serialize和Deserialize方法来实现数据转换,我们可以抽象出一个接口IDFC(数据格式转换接

大二女生web开发成长之路——讲述我从软妹子到女汉子的进阶过程

学习和实践前端一年时间,几乎天天在工作室和一群屌丝男程序员一起学习.开发.这种潜移默化的环境下,编码提高了,节操也细碎了. 一年前,娇滴滴的还是工作室里面小师妹一枚,软软的软件工程妹子,做不到人见人爱,但在这个据说男女比例8比1的学校中,仍是比较受欢迎群体——女生中的一员. 然而,    回想过去这一年,跟一帮大老爷们坐在一起讲蛋疼的笑话: 工作室聚餐中满怀“邪”意地企图把师兄们灌醉: 为了赶项目,可以经常和某位苦逼男一起debug到两三点,不亦乐乎: 男生唤我作欣姐,各种玩笑各种开,因为都不拿

Quartz应用实践入门案例二(基于java工程)

在web应用程序中添加定时任务,Quartz的简单介绍可以参看博文<Quartz应用实践入门案例一(基于Web应用)> .其实一旦学会了如何应用开源框架就应该很容易将这中框架应用与自己的任何程序中.只要你的程序中需要这项功能!但是对于一些刚开始学习某种框架的菜鸟而言,这似乎就不是那么简单了.如果在学习开源框架API的同时,能有一两个案例小程序配着其API去看,那应该就是事半功倍了. 本文是在自己学习源码和网上查找资料的基础上完成的,将详细叙述在java工程中如何巧妙的融入Quartz框架,小案

基于web的java Mail的邮件发送系统的详解

本系统是基于web的,引用了第三方的API:mail.jar开发包. 一.目录结构的介绍 我们可以到Oracle官网下载mail.jar开发包,我下载的版本是1.4.5.下载成功后,会得到一个javamail1_4_5.zip的文件,然后解压. 首先是根目录下的mail.jar是它的核心包 在lib子目录下有对应如下的jar包,其中mailapi.jar封装了创建邮件内容和面向普通开发人员调用邮件发送和接收的API类,其它三个jar文件(imap.jar.pop3.jar.smtp.jar)则是

Linux+postfix+extmail+dovecot打造基于web页面的邮件系统

Linux+postfix+extmail+dovecot打造基于web页面的邮件系统 linuxwebmysqlapacheredhat数据库服务器 Linux+postfix+extmail+dovecot打造基于web页面的邮件系统 最终效果图: 准备阶段:需要手动下载的软件包: postfix-2.6.5.tar.gz courier-authlib-0.62.4.tar.bz2 eextmail-1.2.tar.gz xtman-1.1.tar.gz Time-HiRes-1.9707

基于Web开发模式的信息抽取

基于Web 开发模式的信息抽取 信息抽取是一个互联网自然语言处理的一个首要环节,信息抽取的准确度会直接影响到后续的处理.信息抽取的目标是去除噪音,获取网页有价值的信息如网页的标题.时间.正文.链接等信息.   主流算法介绍 网页信息抽取的方法有很多,比如从算法上分:基于模板的,基于信息量.基于视觉的.基于语义挖掘的.基于统计的.从HTML 处理上分为:基于行块.基于DOM 树.下面我逐一介绍. 1.     基于模板,一般由人工维护一个URL 和HTML 的模板.当URL 匹配到某个URL 模板

如何基于web技术开发国产化网管软件

随着Java和web技术的成熟及其在Internet上的广泛应用,网络管理技术和模式迎来了又一次革命.在网络管理领域,通过Web技术(如Web服务器,HTTP协议.HTML和Java语言等)来集成网络管理系统,就能够获得可运行于各种平台的简单有效的管理工具.特别是目前人们对计算机网络管理工具的要求已不仅仅局限于集中式管理模式,而要求网络管理工具具有分布计算能力.近几年来随着Java.EJB.XML等技术的发展与成熟使人们对网络管理的分布式要求已成为现实. 1. 基于Web的网络管理模式的特点 分

基于web的数字化校园管理集成方案

软件系列 :基于web的数字化校园管理集成方案 开发公司: 慈溪市顺通网络技术有限公司 开发时间:2013/5/21 1. 引言 1.1编写目的 1.2项目背景 2.总体设计说明: 3. 系统概述 3.1系统建设目标 3.2系统功能 4.系统使用说明 4.1登录界面 4.1登录界面 4.2权限设置-个人权限 4.3学年管理 4.4学期管理 4.5年级管理 4.6班级管理及维护 4.61添加班级 4.62批量添加班级 4.63班级维护 4.64班级升迁设置 4.65班级升迁 4.66升迁管理 4.

基于 Web 的远程 Terminal 模拟器安装使用详解

http://lzw.me/a/shellinabox.html 一.Shellinabox 简介 Shellinabox 是一个基于 web 的终端模拟器,采用 C 语言编写,使用 Ajax 与后端服务通信.它实现了一个 Webserver,默认监听 4200 端口,在支持 Javascript 和 CSS 的浏览器上访问 http://host:4200 即可.并且可以配置 SSL/TLS 证书,使用 https 方式加密通信. 二.Shellinabox 安装 2.1 编译安装 wget