`
osacar
  • 浏览: 209606 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

JEECMS v3.0.1 beta版源码分析2

阅读更多
JEECMS v3.0.1 beta版发布,采用的是采用hibernate3+spring mvc+spring2+freemarker主流技术架构.


再对前台配置文件进行分析jeecms-servlet-front.xml

加载的资源文件
    <bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource">

       <property name="cacheSeconds" value="0"/>

       <property name="basenames">

           <list>
              <value>/WEB-INF/languages/jeecms_front/messages</value>
              <value>/WEB-INF/languages/fck/messages</value>
           </list>
       </property>
    </bean>




/WEB-INF/languages/jeecms_front/messages

/WEB-INF/languages/fck/messages

因为前台和后台是分离的两个独立的
Springmvc messageSource中只加载front前台的资源文件
messages_cn.properties

#专题模板
tpl.topicIndex=专题导航页
tpl.topicChannel=专题栏目页
tpl.topicDefault=专题默认页


#专用模板
tpl.tagIndex=标签导航页
tpl.tagDetail=标签详情页
tpl.searchInput=搜索输入页
tpl.searchResult=搜索结果页
tpl.commentPage=评论页
tpl.rss=RSS


模板页面都是中文名称,如
/WEB-INF/t/cms/www/red/index/首页.html

#客户端包含模板
tpl.index=首页
在程序中使用tpl.index最后对应模板中的”首页.html”的”首页”

如FrontUtils.getTplPath(request, site.getSolutionPath(),

"index", "tpl.index");

public static String getTplPath(HttpServletRequest request, String solution, String dir, String name)
   {
     return solution + "/" + dir + "/" +
       MessageResolver.getMessage(request, name, new Object[0]) + ".html";
  }

public static String getTplPath(HttpServletRequest request, String solution, String dir, String name)
   {
     return solution + "/" + dir + "/" +
       MessageResolver.getMessage(request, name, new Object[0]) + ".html";
  }




使用multipartResolver视图解析器
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"/>






配置拦截器
<bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping">

       <property name="interceptors">

           <list>
              <ref bean="frontContextInterceptor"/>

              <ref bean="frontLocaleInterceptor"/>

           </list>
       </property>
    </bean>




FrontContextInterceptor.java
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
     throws ServletException
   {
     CmsSite site = null;
     List<CmsSite> list = this.cmsSiteMng.getListFromCache();
     int size = list.size();
     if (size == 0)
       throw new RuntimeException("no site record in database!");
     if (size == 1) {
       site = (CmsSite)list.get(0);
     } else {
       String server = request.getServerName();

       for (CmsSite s : list)
       {
         if (s.getDomain().equals(server)) {
           site = s;
           break;
         }

         String alias = s.getDomainAlias();
         if (!StringUtils.isBlank(alias)) {
           for (String a : StringUtils.split(alias, ',')) {
             if (a.equals(server)) {
               site = s;
               break;
             }
           }
         }

         String redirect = s.getDomainRedirect();
         if (!StringUtils.isBlank(redirect)) {
           for (String r : StringUtils.split(redirect, ',')) {
             if (!r.equals(server)) continue;
             try {
               response.sendRedirect(s.getUrl());
             } catch (IOException e) {
               throw new RuntimeException(e);
             }
             return false;
           }
         }
       }

       if (site == null) {
         throw new SiteNotFoundException(server);
       }
     }

     CmsUtils.setSite(request, site);

     CmsUser user = null;
     Integer userId = this.authMng.retrieveUserIdFromSession(this.session, request);
     if (userId != null) {
       user = this.cmsUserMng.findById(userId);
     }

     if (user != null) {
       CmsUtils.setUser(request, user);
     }
     return true;
   }


分享到:
评论
1 楼 ie0ie0ie 2012-07-02  
有qq么?想请教你个jeecms问题

相关推荐

    JEECMS v3.0.1 beta 源代码(反编译) java spring freemaker springmvc

    JEECMS v3.0.1 beta版 源代码 我将发布版反编译的版本,主要是业务相关部分 core common部分没有反编译,如果第一次运行,需要手动运行install.html,并将web.xml中的替换掉 采用hibernate3+spring mvc+spring2+...

    jeecms v3.0.1 开源jsp网站管理系统.rar

    JEECMS V3.0.1 beta版完整更新列表: 1、新增会员中心模块; 3、页头会员登录改为CSI方式调用,不再受页面静态化影响; 4、修正前台投票报错问题; 5、修正后台投票项无法删除的问题; 6、修正后台栏目“是否允许顶...

    JEECMS v3.0.0 beta 源代码(反编译)_1

    JEECMS v3.0.1 beta 源代码(反编译)

    JEECMS v2.2 beta 贺岁版

    JEECMS v2.2 beta版对以下方面进行了更新: ·降低运行环境要求为jdk1.5、tomcat5.5、mysql5.0 ·增加了会员系统,为会员特设了“会员中心”控制模块 ·增加了文章浏览权限设置功能 ·修正了在linux平台下的系统...

    jeecms v9.3 正式版 源码包.zip

    jeecms v9.3 正式版 源码包 更新日志 1、栏目添加选择模型模板只选择一个报错 2、内容复用待审核查询报错(开源版) 3、根栏目添加内容报错 4、后台页面样式调整 5、后台编辑器分页问题 7、数据统计今日...

    jeecms3.0.1beta 源码(反编译) 带common包

    NULL 博文链接:https://jbutton.iteye.com/blog/841475

    JEECMS v2.4.1 beta 系统程序.rar

    JEECMS v2.4.1 beta版主要修正了JEECMS v2.4.0 beta版中存在的问题,在功能方面应用户的要求加入了专题系统、下载系统、全文检索等。在技术主要对数据库连接池组件进行的更换,采用了c3p0连接池组件,有效解决了由于...

    jeecms X1.0.1 正式版 源码包

    JEECMS是一款可以根据行政级别建立大型门户网站群的CMS,通过对站群权限的控制,可以建立中央部委、省、市、县、街道(镇)或总公司、分公司等... jeecms X1.0.1 更新日志:1、源码包和安装包瘦身2、修复了一些已知BUG

    JEECMS v3.0.0 beta 源代码(反编译)_2

    JEECMS v3.0.0 beta 源代码(反编译)

    JEECMS v2.3.2 Final版是JEECMS面世以来发布的第一个正式版是JEECMS面世以来发布的第一个正式

    五、面向未来的过渡,JEECMS v2.3.2 Final版是JEECMS面世以来发布的第一个正式版本,具有更大的灵活性和稳定性;-一、系统内核完全开源,为用户提供透明的管理平台,为java初学者提供良好的学习平台; 二、核心模板...

    [CMS程序]JEECMS v3.0 beta.zip

    前几年的JavaJsp应用源码Demo,主要面向的是学生毕业设计学习。

    jeecms X1.4.1 正式版 源码包

    详细介绍 – [ jeecms X1.4.1 正式版 源码包 ] jeecms X1.4.1 正式版 源码包 更新日志 1、修复了一些已知问题 JEECMS简介 JEECMS 是JavaEE版网站管理系统(Java Enterprise Edition Content Manage System)的简称。...

    jeecms v9.3 正式版 安装包.zip

    jeecms v9.3 正式版 安装包 更新日志 1、栏目添加选择模型模板只选择一个报错 2、内容复用待审核查询报错(开源版) 3、根栏目添加内容报错 4、后台页面样式调整 5、后台编辑器分页问题 7、数据统计今日...

    jeecms X1.11.0 正式版源码包

    jeecms X1.11.0 正式版源码包

    JEECMS v3.1.0 beta

    JEECMS是JavaEE版网站管理系统(Java Enterprise Edition Content Manage System)的简称。 · 基于java技术开发,继承其强大、稳定、安全、高效、跨平台等多方面的优点 · 采用SpringMVC3+Spring3+Hibernate3+...

    jeecms v8.1 源码

    JEECMSv8.1是一款支持微信小程序、栏目模型、内容模型交叉自定义、以及具备支付和财务结算的内容电商为一体内容管理系统:通过后台的简单设置即可自定义出集新闻管理、图库管理、视频...doc/jeecms模板置标使用手册.doc

    jeecms v2012版

    jeecms v2012版是一款集新闻管理、图库管理、视频管理、下载系统、作品管理、产品发布及留言板于一体的综合性CMS系统。从2012版起,jeecms将更注重用户体验、系统性能和实际应用的研发,让jeecms的适用范围更广、...

    JEECMS v2.3.2 正式版用源码

    JEECMS是JavaEE版网站管理系统(Java Enterprise Edition Content Manage System)的简称。 基于java技术开发,继承其强大、稳定、安全、高效、跨平台等多方面的优点 采用hibernate3+struts2+spring2+freemarker...

    jsp网站管理系统JEECMS v9.3 正式版 源码包 -源码.zip

    源码,压缩包解压密码:www.cqlsoft.com

    JeeCMS 2012 源码包

     jeecms v2012版是一款集新闻管理、图库管理、视频管理、下载系统、作品管理、产品发布及留言板于一体的综合性CMS系统。  jeecms v2012版新增功能如下:  1、新增统计功能  1.1、会员注册统计  1.2、内容...

Global site tag (gtag.js) - Google Analytics