- 浏览: 456076 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (233)
- 技术日志 (87)
- portal (7)
- jBPM/Activiti (34)
- Roller学习 (18)
- Java基础、网站开发 (19)
- 收藏URL (4)
- UML (3)
- linux操作 (7)
- 工作环境准备 (8)
- Mina (15)
- tomcat (8)
- Mylyn (3)
- sina网站 (2)
- 规则引擎 (3)
- 工作记录 (11)
- html(5) (9)
- 手机开发 (3)
- oracle (26)
- 常用的 (2)
- maven (8)
- hadoop (0)
- xml (7)
- 错误解决 (5)
- linux (1)
- c# (2)
- c++ (1)
- node.js (1)
- 银行业务知识 (1)
- Java调试 (0)
最新评论
-
tomcatmeng:
请问候选用户是怎样task自己的任务,看网上说先根据任务id先 ...
jBPM4.4:ForEach的使用--动态设置参与人数 -
maoweiwer:
友情提醒:如果是在MYSQL下创建数据库,则还需要更改\jbp ...
jBPM4.4: 创建数据库表 -
zybing:
ganjiang 写道有点疑惑,请lz指点,1.那个“depl ...
jBPM4.4:如何图示化显示当前的流程执行到了哪一步骤 -
zybing:
ganjiang 写道有点疑惑,请lz指点,1.那个“depl ...
jBPM4.4:如何图示化显示当前的流程执行到了哪一步骤 -
ganjiang:
有点疑惑,请lz指点,1.那个“deployId”不知是那个i ...
jBPM4.4:如何图示化显示当前的流程执行到了哪一步骤
环境: 在tomcat中,
第一次访问Roller,要进行一些配置:
在$CATALINA_HOME中的 common/classes 目录中,新建一下客户环境化的配置文件: roller-custom.properties,
其实只要放在classpath中的任何一个目录中即可。
installation.type=auto database.configurationType=jdbc database.jdbc.driverClass=com.mysql.jdbc.Driver database.jdbc.connectionURL=jdbc:mysql://localhost:3306/rollerdb database.jdbc.username=scott database.jdbc.password=tiger mail.configurationType=properties mail.hostName=smtp-server.example.com mail.username=scott mail.password=tiger
最主要的是 installation.type=auto,表示我们第一次要创建数据库结构
其他的配置:以database开始的是数据库连接的配置
以mail开始的是mail provider的配置
根据实际环境配置好后,可以启动tomcat,访问roller了
由于第一次访问配置的是 installation.type=auto, 在访问的时候被Filter : BootstrapFilter截获,
url被转向到 /roller-ui/install/install.rol
在Roller中,struts的请求后最被修改成 rol 了
这个在 struts.properties 中定义的 (Roller有一个struts.properties, 还有一个 struts.xml, 2个混用,不过一般只和struts相关的配置,都配置在 properties文件中,和应用相关的配置在xml文件中)
struts.action.extension=rol
在struts中的配置为:
<!-- Weblogger install/bootstrap actions --> <package name="weblogger-install" namespace="/roller-ui/install" extends="weblogger"> <action name="install" class="org.apache.roller.weblogger.ui.struts2.core.Install"> <result name="database_error" type="tiles">.DatabaseError</result> <result name="create_database" type="tiles">.CreateDatabase</result> <result name="upgrade_database" type="tiles">.UpgradeDatabase</result> <result name="bootstrap" type="tiles">.Bootstrap</result> <result name="success" type="chain">home</result> </action> </package>
安装是通过 org.apache.roller.weblogger.ui.struts2.core.Install 来完成的。
install类继承 UIAction
UIAction 继承 ActionSupport : 这个就不用解释了,UIAction在ActionSupport基础上增加了对error和状态的控制;
实现 UIActionPreparable
UISecurityEnforced
UIActionPreparable:的解释:
/** * A Roller specific version of the struts2 Preparable interface. * * We only have this because we don't want to use the struts2 Preparable IF due * to the fact that it is meant to be called much earlier in the interceptor * stack, namely before our custom interceptors have been processed. While * that may make sense in some cases, typically we want to prepare things based * on the user or weblog that we are working on, so it's often of more use for * us to prepare *after* our custom interceptors have been processed. * * So, this duplicate of the struts2 Preparable interface is here so that we * can leave the default struts2 prepare() logic in place for any actions we * may define that want to use that, but also provide a prepare option that is * executed at the very end of our interceptor stack, just before the action * method is executed. This way our custom prepare method can make use of * anything our custom interceptors provide. 只是在Action执行之前的最后一步执行的工作 */ public interface UIActionPreparable { public void myPrepare(); }
UISecurityEnforced: 是有关权限的,但是需要Action进行实现
/** * Implemented by struts2 actions which want to enforce some level of security * protection on their action. * * Available enforcements are ... * - require a logged in user * - reguire a valid weblog to work on * - require a specific user role, such as "admin" * - require a specific weblog permission * */
--------------------
install根据在系统初始化的时候的不同状态,返回不同的页面:
都是通过WebloggerStartup来获取状态的;
如果状态是需要创建数据库的,到:
<result name="create_database" type="tiles">.CreateDatabase</result>
---------------------
在Roller,页面采用tiles,看一下安装页面的配置:.CreateDatabase
<definition name=".CreateDatabase" extends=".tiles-installpage" > <put-attribute name="content" value="/WEB-INF/jsps/core/CreateDatabase.jsp" /> <put-attribute name="footer" value="/WEB-INF/jsps/tiles/empty.jsp" /> <put-attribute name="banner" value="/WEB-INF/jsps/tiles/bannerInstallation.jsp" /> </definition>
每个页面,一开始都是加载:<%@ include file="/WEB-INF/jsps/taglibs-struts2.jsp" %>
这个里面包含了Response编码定义、所有的标签引用定义:
<% response.setContentType("text/html; charset=UTF-8"); %> <%@ page language="java" contentType="text/html; charset=UTF-8" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> <%@ taglib uri="http://tiles.apache.org/tags-tiles" prefix="tiles" %> <%@ taglib uri="/struts-tags" prefix="s" %> <%@ taglib uri="http://jakarta.apache.org/taglibs/string-1.0.1" prefix="str" %>
在安装的页面中,主要关心:
/WEB-INF/jsps/core/CreateDatabase.jsp
这个是实际操作的页面。
创建数据库,调用的是
<s:form action="install!create"> <s:submit key="installer.yesCreateTables" /> </s:form>
install的create方法,实际调用WebloggerStartup的createDatabase方法。
调用 DatabaseInstaller的createbase
创建的时候,根据数据库连接获取提供厂商的名字: con.getMetaData().getDatabaseProductName
根据厂商的名字,到各自目录中,获取 createdb.sql 文件--- 具体的在 /dbscripts/厂商/createdb.sql 文件中,创建数据库脚本,
至此,数据库创建完成。
发表评论
-
Roller:访问用户的博客 --RequestMappingFilter 负责转向
2010-01-05 17:55 1523在Roller中,访问博客,通过 http://roller ... -
Roller:roller中的Cache
2010-01-04 17:12 1293Roller中的文章,通过 org.apache.ro ... -
Roller:写日志
2010-01-04 14:00 1211在Roller中,写日志,由/roller-ui/author ... -
Roller:创建网志
2010-01-04 13:50 1161用户可以填写自己的网志,首先要创建一个网志。 通过/r ... -
Roller:EntryAdd
2009-12-18 15:15 1238Roller的EntryAdd Action,继承自 : ... -
Roller:用户登陆成功后的2个转向
2009-12-17 10:12 937用户登陆 : /roller-ui/login-red ... -
Roller中的User对象 --- 以后再写
2009-12-14 14:26 1082这次看Roller,用户管理体系不是重点,用户User对象以后 ... -
Roller 用户登陆 --- acegi验证
2009-12-14 14:25 2741创建好用户,用户就可以登陆了。 在Roller的系统 ... -
学习Roller中需要了解的技术
2009-12-14 13:35 01. SSO:单点登陆 2. 再次熟悉一下Tomca ... -
Roller:创建用户
2009-12-08 14:17 1472创建用户:调用的是:r ... -
第一次进入roller,创建用户、创建blog、创建首页
2009-12-08 13:26 1993Roller安装完毕,数据库也创建好了,进入Roller,访问 ... -
Roller4.0.1用户访问时的系统动作 -- rollerSession Listen
2009-12-04 13:33 1327系统的初始化过程已经完成,下一步用户该访问系统了。 R ... -
Roller4.0.1初始化时候的4大组件
2009-11-30 18:04 1863Roller在初始化时候,主要做: ... -
Roller4.0.1使用的监听器
2009-11-27 11:46 1467Roller4.0.1中,使用了2个监听器: ... -
Roller4.0.1的Filter
2009-11-27 11:13 1453Roller使用了一些自己的Filter ... -
Roller4.0.1源码编译安装
2009-11-27 09:54 1685源码编译Roller4.0.1 所用的eclipse3.4, ... -
编译Roller4.0.1 所需组件
2009-11-27 09:53 1412Roller4.0.1 ,基于Java SE5 <! ... -
安装Roller
2009-11-27 09:51 1564在Roller提供的install-guide ...
相关推荐
- **配置文件**:需要编辑相关的配置文件,例如 `roller-custom.properties` 和 `security.xml`,以适应不同的环境需求。 #### 七、部署 Apache Roller - **配置类路径**:确保将 `roller-custom.properties` 文件...
apache-roller-src apache-roller-src apache-roller-src apache-roller-src apache-roller-src apache-roller-src apache-roller-src apache-roller-src apache-roller-src apache-roller-src
apache-roller-srapaapache-roller-srcche-roller-srccapache-rolaapache-roller-srcpache-roller-srcler-srcapapache-roller-srcache-roller-srcapache-roller-src
apache-rollapachapache-roller-srce-roller-srcer-srcapache-rolleapacapache-roller-srche-roller-srcr-srcapache-roapache-roller-srcller-srcapache-roller-src
离线安装包,亲测可用
这个压缩包"apache-roller-4.0.1"包含了Apache Roller的第4.0.1版本,这是一个基于Java技术构建的Web应用程序。接下来,我们将深入探讨Apache Roller的核心功能、特性以及与Java相关的技术细节。 1. **Apache ...
通过对"roller-weblogger-5.0.0-source.zip"的深入分析,我们可以了解到Roller Weblogger的完整开发流程和设计思想,这对于Java Web开发者来说,不仅是一份学习资料,也是提升技能、实践项目的好机会。通过学习和...
weblogging 设计比较精巧,是很好的学习资料。它支持weblogging应有的特性如:评论功能,所见即所得HTML编辑,TrackBack,提供页面模板,RSS syndication,blogroll管理和提供一个XML-RPC 接口。 最主要是其开源
综上所述,《roller-user-guide.pdf》为用户提供了一套全面的使用指南,覆盖了从安装到日常管理等各个环节,旨在帮助用户充分利用Apache Roller的强大功能。无论是个人博主还是企业用户,都可以从中获得有价值的信息...
源代码包"apache-roller-src-4.0.1"是Roller项目的4.0.1版本的源码,对开发者来说,这是一个深入了解Roller工作原理和学习Java Web开发的宝贵资源。 1. **Java技术栈**: Apache Roller的源代码基于Java语言编写,...
apache-roller-src-4.0.1.part2.rar
开发者可以通过这些模型和对象来访问所需的数据,并在模板中进行展示。 ##### 4.1.1 访问对象属性 每个对象都有一组预定义的属性,可以通过简单的语法来访问这些属性。例如,获取一篇文章的标题,只需要使用相应的...
打开官方发布的可直接发布的部署包apache-roller-4.0\apache-roller-4.0\webapp\roller的目录,将该目录下面除了web-inf目录的其他所有文件复制到自建项目的/WebRoot目录下面 自建项目目录结构: (myeclipse建立的...
标题中的“dice-roller-001:用CodeSandbox创建”表明我们将探讨一个基于Web的骰子投掷模拟器项目,该项目使用CodeSandbox作为开发环境。CodeSandbox是一个在线代码编辑器,专为创建和共享前端项目而设计,支持诸如...