- 浏览: 110529 次
- 性别:
- 来自: 深圳
文章分类
最新评论
-
hufangdong:
真需要 学习了 太感谢分享了
用JXLS操作进行excel操作 -
chaodilei:
请问一下楼主 readExcel(InputStream in ...
用JXLS操作进行excel操作 -
q380100484:
好像都没有jar包的呀
使用displaytag进行分页显示 -
treemanfm:
i<str.trim().length()
循环终止 ...
一道面试题的困惑 -
chubaochang1986:
关于window.open()方法的返回值的问题
把jforum-2.1.8版本的论坛系统整合到自己的项目中。主要的步骤有这么几步
1.去http://jforum.net/releases/jforum-2.1.8-src.zip下载jforum源码。这个下下来后需要把它变成一个WEB项目。其实这个很简单自己建个WEB项目然后参考那个WEB的一些文件信息在把jforum做相应修改就可以成功的把它import进myeclipse里。项目结构如图所示
WebRoot目录下的结构
2.在net.jforum.sso新建一个CookieUserSSO类,这个类作为单点登录的连接类,代码如下,如果是第一次整合完全可以整个COPY去。
import java.io.UnsupportedEncodingException;
import javax.servlet.http.Cookie;
import net.jforum.ControllerUtils;
import net.jforum.context.RequestContext;
import net.jforum.entities.UserSession;
import net.jforum.util.preferences.ConfigKeys;
import net.jforum.util.preferences.SystemGlobals;
import org.apache.log4j.Logger;
public class CookieUserSSO implements SSO{
static final Logger logger = Logger.getLogger(CookieUserSSO.class.getName());
String userName;
String userID;
String email;
public final String COOKIE_NAME = "jforumUserId";
public String authenticateUser(RequestContext request) {
// login cookie set by my web LOGIN application
// Cookie cookieNameUser = ControllerUtils.getCookie(SystemGlobals.getValue(ConfigKeys.COOKIE_NAME_USER));//这种写法会获取null,不解啊
Cookie cookieNameUser = ControllerUtils.getCookie("jforumSSOCookieNameUser");
String username = null;
if (cookieNameUser != null) {
try {
username = java.net.URLDecoder.decode(cookieNameUser.getValue(),"utf-8");
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
System.out.println(cookieNameUser+" ======== "+username+" ==========");
return username; // return username for jforum
// jforum will use this name to regist database or set in HttpSession
}
public boolean isSessionValid(UserSession userSession,
RequestContext request) {
Cookie cookieNameUser = ControllerUtils.getCookie(SystemGlobals
.getValue(ConfigKeys.COOKIE_NAME_USER)); // user cookie
String remoteUser = null;
if (cookieNameUser != null) {
remoteUser = cookieNameUser.getValue(); // jforum username
}
if (remoteUser == null
&& userSession.getUserId() != SystemGlobals
.getIntValue(ConfigKeys.ANONYMOUS_USER_ID)) {
// user has since logged out
return false;
} else if (remoteUser != null
&& userSession.getUserId() == SystemGlobals
.getIntValue(ConfigKeys.ANONYMOUS_USER_ID)) {
// anonymous user has logged in
return false;
} else if (remoteUser != null
&& !remoteUser.equals(userSession.getUsername())) {
// not the same user (cookie and session)
return false;
}
return true; // myapp user and forum user the same. valid user.
}
}
3.修改WEB-INF/config目录下的SystemGlobals.properties文件找到SSO需要修改这几个地方
#authentication.type = default
authentication.type = sso
#sso.implementation = net.jforum.sso.RemoteUserSSO
sso.implementation = net.jforum.sso.CookieUserSSO
sso.redirect = http://domain:port/webappname/url
好了修改好这几个地方jforum这边的工作基本就算可以了。
4.回到自己的项目中。在登录的方法里加上这些代码
Cookie cookie = new Cookie("jforumSSOCookieNameUser", username);
cookie.setMaxAge(-1);
cookie.setPath("/");
response.addCookie(cookie);
5.给个链接 <a href="/JForum">论坛</a> 。
6.部署项目,启动TOMCAT。搞定。
7.可能在中文用户名的情况下会出现乱码可以参考我写的另一篇博客http://bei-jin-520.iteye.com/admin/blogs/642970
评论
<#setting number_format = "#"/> <#setting datetime_format = dateTimeFormat/> <#assign logged = logged?default(false)/> <#assign language = language?default("en_US")/> <#assign hasCodeBlock = hasCodeBlock?default(false)/> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=${encoding}" /> <meta http-equiv="Pragma" content="no-cache" /> <meta http-equiv="Expires" content="-1" /> <style type="text/css">@import url( ${contextPath}/templates/${templateName}/styles/style.css?${startupTime} );</style> <style type="text/css">@import url( ${contextPath}/templates/${templateName}/styles/${language}.css?${startupTime} );</style> <#if hasCodeBlock> <style type="text/css">@import url( ${contextPath}/templates/${templateName}/styles/SyntaxHighlighter.css?${startupTime} );</style> </#if> <title>${pageTitle?default("JForum")?html}</title> </head> <body class="${language}"> <!-- Original theme from phpBB (http://www.phpbb.com) subSilver Created by subBlue design http://www.subBlue.com Modifications by JForum Team --> <table width="100%" border="0"> <tr> <td> <table cellspacing="0" cellpadding="0" width="100%" border="0"> <tr> <td> <a href="${homepageLink}"><img src="${contextPath}/templates/${templateName}/images/logo.jpg" vspace="1" border="0" alt="[Logo]" /></a> </td> <td width="100%" align="center" valign="middle"> <span class="boardtitle">${forumTitle?default("JForum")}</span> <table cellspacing="0" cellpadding="2" border="0"> <tr> <td valign="top" nowrap="nowrap" align="center"> <img src="${contextPath}/templates/${templateName}/images/icon_mini_search.gif" alt="[Search]"/> <span class="mainmenu"><a id="search" class="mainmenu" href="${JForumContext.encodeURL("/search/filters")}"><b>${I18n.getMessage("ForumBase.search")}</b></a> <img src="${contextPath}/templates/${templateName}/images/icon_mini_recentTopics.gif" alt="[Recent Topics]" /> <a id="latest" class="mainmenu" href="${JForumContext.encodeURL("/recentTopics/list")}">${I18n.getMessage("ForumBase.recentTopics")}</a> <img src="${contextPath}/templates/${templateName}/images/icon_mini_recentTopics.gif" alt="[Hottest Topics]" /> <a id="hottest" class="mainmenu" href="${JForumContext.encodeURL("/hottestTopics/list")}">${I18n.getMessage("ForumBase.hottestTopics")}</a> <img src="${contextPath}/templates/${templateName}/images/icon_mini_members.gif" alt="[Members]" /> <a id="latest2" class="mainmenu" href="${JForumContext.encodeURL("/user/list")}">${I18n.getMessage("ForumBase.usersList")}</a> <span class="mainmenu"> <img src="${contextPath}/templates/${templateName}/images/icon_mini_groups.gif" alt="[Groups]" /> <a id="backtosite" class="mainmenu" href="${homepageLink}">${I18n.getMessage("ForumBase.backToSite")}</a> <br> <#if canAccessModerationLog?default(false)> <img src="${contextPath}/templates/${templateName}/images/icon_mini_members.gif" alt="[Moderation Log]" /> <a id="moderationlog" class="mainmenu" href="${JForumContext.encodeURL("/moderation/showActivityLog")}">${I18n.getMessage("ModerationLog.moderationLog")}</a> </#if> <#if logged> <a id="myprofile" class="mainmenu" href="${JForumContext.encodeURL("/user/edit/${session.userId}")}"><img src="${contextPath}/templates/${templateName}/images/icon_mini_profile.gif" border="0" alt="[Profile]" /> ${I18n.getMessage("ForumBase.profile")}</a> <#if bookmarksEnabled> <a class="mainmenu" href="${JForumContext.encodeURL("/bookmarks/list/${session.userId}")}"><img src="${contextPath}/templates/${templateName}/images/icon_minipost.gif" alt="[Post]" />${I18n.getMessage("Bookmarks.myBag")}</a> </#if> <a id="privatemessages" class="mainmenu" href="${JForumContext.encodeURL("/pm/inbox")}"><img src="${contextPath}/templates/${templateName}/images/icon_mini_message.gif" border="0" alt="[Message]" /> <#if (session.privateMessages > 0)> ${I18n.getMessage("ForumBase.newPm")}: (${session.privateMessages}) <#else> ${I18n.getMessage("ForumBase.privateMessages")} </#if> </a> </span> <#if !sso> <a id="logout" class="mainmenu" href="${JForumContext.encodeURL("/user/logout")}"><img src="${contextPath}/templates/${templateName}/images/icon_mini_login.gif" border="0" alt="[Login]" /> ${I18n.getMessage("ForumBase.logout")} [${session.username}] </a></span> </#if> </#if> <#if !logged && !sso> <a id="register" class="mainmenu" href="${JForumContext.encodeURL("/user/insert")}"><img src="${contextPath}/templates/${templateName}/images/icon_mini_register.gif" border="0" alt="[Register]" /> ${I18n.getMessage("ForumBase.register")}</a> / </span> <a id="login" class="mainmenu" href="${JForumContext.encodeURL("/user/login")}"><img src="${contextPath}/templates/${templateName}/images/icon_mini_login.gif" border="0" alt="[Login]" /> ${I18n.getMessage("ForumBase.login")}</a> </span> </#if> </td> </tr> </table> </td> </tr> </table> </td> </tr> <tr> <td>
发表评论
-
5行代码搞定Excel导出
2013-01-18 16:09 13991)需要的JAR包 (Y*_*Y) jxls-core-0. ... -
jxls 操作 Excel 导出大数据
2013-01-07 16:59 0在web开发中经常要用到Excel的导入与导出报表功能,支持这 ... -
FCK--编辑器应用
2010-12-08 10:42 1294说明:以下说到的方法是本人经过实际开发中的一些经验和总结如果有 ... -
XML和HTML常用转义字符
2009-04-03 14:11 1330XML和HTML中都有一些特殊的字符,这些字符在XML和HTM ... -
SSH2整合实例
2009-03-22 18:55 2829SSH2整合实例 需要的JAR可以参照 classpath下的 ... -
JavaWeb中的Session、SessionListener、在线人数统计
2009-02-14 00:42 1912JavaWeb中的Session 在Java ... -
JAVA面试题
2009-02-06 10:34 2970一、Java基础知识1.Java有那些基本数据类型,Stri ... -
使用displaytag进行分页显示
2009-01-07 11:04 6134要格式化显示数据,又写不好自己的分页程序。不如试试displa ... -
相对路径表示方法
2008-11-29 23:55 2565我们使用“../”来表示上一级目录,“../../”表示上上级 ... -
SSH简单整合代码
2008-11-23 17:37 1110[size=large][size=medium][size= ... -
用JXLS操作进行excel操作
2008-11-14 18:05 7217【准备工作】 软件环境:jxls-core-0.9.5.jar ... -
将WEB程序打包WAR
2008-11-14 17:37 3599将workspace目录下的要打包的应用根目录(Web-Roo ...
相关推荐
在JForum中整合CKEditor,可以替换其默认的编辑器,从而提供更强大的文本格式化和媒体插入能力,提升用户在论坛中的互动体验。 整合JForum和CKEditor的过程主要包括以下几个步骤: 1. **下载和准备** - 首先,你...
标题 "jforum与web项目的整合(通过Cookie实现SSO)" 涉及的是将开源的JForum论坛系统与其他Web应用程序进行集成,并利用Cookie技术实现单点登录(Single Sign-On,简称SSO)。SSO允许用户在一个应用系统中登录后,...
《深入解析jforum3.0所需jar包》 在Java Web开发领域,jForum是一款流行的开源论坛系统,它基于Java语言编写,提供了丰富的社区交流功能。jForum3.0是其一个重要的版本,针对该版本的运行,我们需要一系列的jar包来...
**Jforum:一个开源的Java论坛系统** Jforum是一款基于Java技术的开源论坛软件,它提供了丰富的社区功能,包括主题讨论、用户管理、权限控制、单点登录等。这款论坛系统以其稳定性和可扩展性而受到开发者的青睐。在...
《jForum与MS SQLServer整合学习笔记》 jForum是一款基于Java的开源论坛系统,它以其高度可定制性、灵活性和强大的功能深受开发者喜爱。在本文中,我们将深入探讨如何将jForum与Microsoft SQL Server(简称MS SQL...
JForum3是一款基于Java开发的开源论坛系统,其核心设计目标是提供一个高效、稳定且功能丰富的在线讨论平台。这款论坛软件使用了Java语言编写,遵循开放源代码的原则,允许用户自由地使用、修改和分发。JForum3是...
**JForum3源代码详解** JForum是一款广受欢迎的开源论坛软件,以其强大的功能、友好的用户界面和清晰的代码结构赢得了全球开发者的青睐。它支持多种语言,包括简体中文,这使得JForum能够满足不同地区用户的交流...
《JForum漏洞利用源代码解析》 JForum是一款流行的开源Java论坛系统,它以其功能丰富、社区友好而受到许多用户的青睐。然而,如同任何复杂的软件系统一样,JForum也存在安全漏洞,这些漏洞可能被恶意用户利用,对...
Jforum是一款基于Java技术的开源论坛系统,以其高效、安全和可扩展性受到开发者们的青睐。这个压缩包文件包含了关于Jforum的多个重要知识点,包括配置、初始化流程、处理请求的MVC架构、数据库访问实现、文件监控、...
【JForum SSO原理与配置】 JForum是一款开源的论坛软件,具备强大的功能。在与其他Web应用集成时,为了提供无缝的用户体验,通常需要实现单点登录(SSO,Single Sign On)。SSO允许用户在一个系统登录后,无需再次...
为了成功运行JForum 3.0,我们需要了解和掌握以下几个关键知识点: 1. **Java环境**:首先,确保你已经安装了Java Development Kit (JDK)。JForum是用Java编写的,因此运行它需要Java环境支持。至少需要JDK 1.8或更...
《Jforum二次开发详解——构建个性化论坛系统》 Jforum,作为一个开源的Java论坛系统,以其优秀的性能和灵活的可扩展性受到了众多开发者和社区管理员的青睐。在Jforum 2.1.8的基础上进行二次开发,可以进一步满足...
1、附件关系表JFORUM_ATTACH 2 2、附件详细信息表JFORUM_ATTACH_DESC 2 3、附件配置限定关系表JFORUM_ATTACH_QUOTA 2 4、封锁表JFORUM_BANLIST 2 5、标识表JFORUM_BANNER 3 6、书签表JFORUM_BOOKMARKS 3 7、...
**JForum3 完整项目详解** JForum3 是一个基于Java开发的开源论坛系统,提供了丰富的社区交流功能。这个项目包含的是从版本控制系统Subversion(SVN)中导出的完整源代码,未经任何修改,因此用户可以深入研究其...
**Jforum 2.19** 是一个基于Java的开源论坛系统,以其高效、稳定和易用性而受到开发者和社区管理员的欢迎。这个版本的Jforum提供了丰富的功能,包括用户管理、论坛分类、主题发布、回复讨论、搜索功能以及各种自定义...
JForum是一款基于Java开发的开源论坛系统,它以其高效、稳定和易于扩展的特点在开源社区中受到广泛欢迎。对于想要深入了解FreeMarker模板引擎的开发者来说,JForum的源码是一个绝佳的学习资源。本篇文章将深入探讨...
【JForum论坛创建详解】 JForum是一款知名的开源论坛软件,具备多语言支持,包括简体中文,虽然管理界面并未完全汉化。它以其强大的功能、优雅的界面以及清晰的代码结构,成为二次开发的理想选择。JForum基于BSD...
标题"jforum2论坛源码"表明了我们关注的是一个名为jforum2的开源论坛系统的源代码。jforum2是一个基于Java技术的讨论板平台,允许用户进行互动交流,提供社区建设和管理功能。源码通常包含程序的所有原始代码,可供...