package com.myweb.demo.velocity;
import java.util.Iterator;
import java.util.Map;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.struts2.ServletActionContext;
import org.apache.struts2.util.VelocityStrutsUtil;
import org.apache.struts2.views.util.ContextUtil;
import org.apache.struts2.views.velocity.StrutsVelocityContext;
import org.apache.struts2.views.velocity.VelocityManager;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.context.Context;
import org.apache.velocity.tools.view.context.ChainedContext;
import com.opensymphony.xwork2.util.ValueStack;
/**
* 兼容性问题
*
* @author liudong
* @url http://www.dlog.cn/javayou
*/
public class VelocityLayoutManager extends VelocityManager {
private static final Log log = LogFactory
.getLog(VelocityLayoutManager.class);
@Override
@SuppressWarnings("unchecked")
public Context createContext(ValueStack stack, HttpServletRequest req,
HttpServletResponse res) {
VelocityContext[] chainedContexts = prepareChainedContexts(req, res,
stack.getContext());
StrutsVelocityContext context = new StrutsVelocityContext(
chainedContexts, stack);
Map standardMap = ContextUtil.getStandardContext(stack, req, res);
for (Iterator iterator = standardMap.entrySet().iterator(); iterator
.hasNext();) {
Map.Entry entry = (Map.Entry) iterator.next();
context.put((String) entry.getKey(), entry.getValue());
}
context.put(STRUTS, new VelocityStrutsUtil(super.getVelocityEngine(),
context, stack, req, res));
ServletContext ctx = null;
try {
ctx = ServletActionContext.getServletContext();
} catch (NullPointerException npe) {
// in case this was used outside the lifecycle of struts servlet
log.debug("internal toolbox context ignored");
}
if (toolboxManager != null && ctx != null) {
ChainedContext chained = new ChainedContext(context, super
.getVelocityEngine(), req, res, ctx);
chained.setToolbox(toolboxManager.getToolbox(chained));
return chained;
} else {
return context;
}
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
struts2+spring2+hibernate3+velocity+sitemesh集成框架代码
共64个文件
java:11个
xml:11个
properties:8个
4星 · 超过85%的资源 需积分: 3 138 下载量 100 浏览量
2009-12-16
14:04:43
上传
评论 1
收藏 44KB RAR 举报
温馨提示
集成了struts2,spring2,hibernate3,以及velocity和sittemesh的项目源代码,有兴趣的可以下载下,关键是集成velocity有点难度,呵呵.
资源推荐
资源详情
资源评论
收起资源包目录
myweb.rar (64个子文件)
myweb
.project 300B
pom.xml 7KB
mavenrepo
deploy.bat 39B
target
.settings
org.eclipse.core.resources.prefs 88B
org.eclipse.jdt.core.prefs 208B
src
main
resources
log4j.properties 1002B
struts.properties 312B
resources.properties 340B
com
myweb
demo
model
User.hbm.xml 1KB
struts2
action
user
uUserAction-validation.xml 2KB
UserAction.properties 247B
db.properties 126B
message.properties 281B
struts.xml 2KB
java
com
myweb
demo
dao
UserDao.java 344B
Impl
UserDaoImpl.java 935B
model
User.java 2KB
struts2
bean
UserBean.java 1KB
action
test
AaaAction.java 178B
BbbAction.java 424B
user
UserAction.java 2KB
login
EnterAction.java 288B
velocity
VelocityLayoutManager.java 2KB
service
UserService.java 396B
Impl
UserServiceImpl.java 747B
webapp
css
fsize_win_other.css 10KB
fsize_win_ie_pop.css 2KB
fsize_mac_ie.css 3KB
fsize_mac_nn.css 3KB
fsize_win_nn.css 3KB
fsize_win_ie.css 12KB
WEB-INF
decorators.xml 243B
web.xml 2KB
sitemesh.xml 2KB
register.jsp 2KB
pages
user
test.html 2KB
register.jsp 3KB
list.jsp 2KB
user.jsp 2KB
login
login2.jsp 615B
VM_global_library.vm 2KB
spring
service-beans.xml 462B
action-beans.xml 1KB
dao-beans.xml 3KB
velocity
velocity-toolbox.xml 2KB
velocity.properties 432B
index.jsp 331B
decorators
footer.html 21B
header.html 41B
default.html 334B
aaa.html 142B
bbb.html 96B
images
bg.gif 55B
openf.gif 890B
markttl.gif 90B
closef.gif 879B
js
css.js 1KB
common.js 4KB
Calendar.js 16KB
gyomu.js 8KB
mysql.sql 231B
filters
td.properties 186B
.classpath 6KB
delall.bat 200B
共 64 条
- 1
yankaga
- 粉丝: 0
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 目标跟踪-基于目标中心点同时进行目标检测+目标跟踪算法实现-项目源码-优质项目实战.zip
- Python《文本特征分析-全唐诗数据挖掘及分析 》+源代码
- Netron-Setup-4.5.0
- 可编辑的地图图形3-世界、各洲、美国地图.xls
- NineAi 新版ChatGPT AI系统网站源码
- Anaconda3-2022.10windows版本
- 基于Servlet的URL访问安全控制.doc
- 可编辑的地图图形-2-中国到省、到市、到县地图.xls
- 快慢指针法判断链表是否有环-go语言实现
- Python《金融新闻数据挖掘分析 (数据抓取、NLP算法分析、量化策略、回测框架等)》+源代码+项目说明
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
前往页