[Struts]使用tiles管理界面遇到困难

简介: 上个周末都在研究怎么用tiles管理示范中心项目的界面,没想到遇到了不少麻烦,到现在也没解决。首先,示范中心项目有很多个模块,我们是用struts的模块功能分开的。本来想的是在缺省模块里定义几个公用的界面定义(definition),然后再各模块里都继承这个定义,并修改必要的tile就可以了。

上个周末都在研究怎么用tiles管理示范中心项目的界面,没想到遇到了不少麻烦,到现在也没解决。首先,示范中心项目有很多个模块,我们是用struts的模块功能分开的。本来想的是在缺省模块里定义几个公用的界面定义(definition),然后再各模块里都继承这个定义,并修改必要的tile就可以了。没想到不管怎么设置,模块里的定义都继承不到缺省的定义。缺省模块里:

None.gif < plug-in  className ="org.apache.struts.tiles.TilesPlugin"   >
None.gif  
< set-property  property ="definitions-config"  value ="/WEB-INF/tiles-defs.xml"   />
None.gif
</ plug-in >
None.gif

教师模块里:

None.gif < plug-in  className ="org.apache.struts.tiles.TilesPlugin"   >
None.gif  
< set-property  property ="definitions-config"  value ="/WEB-INF/tiles-defs.xml,/WEB-INF/tiles-defs-teacher.xml"   />
None.gif
</ plug-in >
None.gif

tiles-defs.xml里:

None.gif < definition  name ="classicLayout"  path ="/layout/classic.jsp" >
None.gif    
< put  name ="header"  value ="/header.jsp"   />
None.gif    
< put  name ="menu"  value ="/teacher/list.do" />
None.gif    
< put  name ="main"  value ="" />
None.gif    
< put  name ="footer"  value ="/footer.jsp"   />  
None.gif
</ definition >
None.gif

tiles-defs-teacher.xml里:

None.gif < definition  name ="listLayout"  extends ="classicLayout" >
None.gif    
< put  name ="main"  value ="/teacher/list.jsp" />
None.gif
</ definition >
None.gif

然后在教师模块里forward到listLayout,提示path没有以"/"开头,就是没有找到listLayout这个定义了。我试了很多写法,包括设置moduleAware的属性,都没有成功。

后来想就在每个模块里都写classicLayout的定义吧,都指向同一个.jsp定义文件就可以了。又遇到新问题,我想在teacher模块里显示menu模块里的内容,会提示找不到所需资源,因为我是在teacher模块里,menu模块的资源是无法访的,除非在menu模块的配置文件里指定key,再在.jsp文件里强制指定bundle的名称,我觉得这个方法太不雅了,同时要做不少修改。

None.gif < definition  name ="classicLayout"  path ="/layout/classic.jsp" >
None.gif    
< put  name ="header"  value ="/header.jsp"   />
None.gif    
< put  name ="menu"  value ="/menu/list.jsp" />
None.gif    
< put  name ="main"  value ="/teacher/list.jsp" />
None.gif    
< put  name ="footer"  value ="/footer.jsp"   />  
None.gif
</ definition >
None.gif

还有,<put>里的value只能是.jsp吗,用.do行不行,我试的结果是不行,虽然没报任何错误,但页面生成到那之前就截止了。郁闷!

本文转自博客园八进制的博客,原文链接:[Struts]使用tiles管理界面遇到困难,如需转载请自行联系原博主。

相关文章
|
2月前
|
Java 开发者 JavaScript
Struts 2 开发者的秘籍:隐藏的表单标签库功能,能否成为你下个项目的大杀器?
【8月更文挑战第31天】Struts 2表单标签库是提升Web页面交互体验的神器。它提供丰富的标签,如`&lt;s:textfield&gt;`和`&lt;s:select&gt;`,简化表单元素创建与管理,支持数据验证和动态选项展示。结合示例代码,如创建文本输入框并与Action类属性绑定,显著提升开发效率和用户体验。通过自定义按钮样式等功能,Struts 2表单标签库让开发者更专注于业务逻辑实现。
40 0
|
2月前
|
前端开发 安全 开发者
JSF文件上传,让Web应用如虎添翼!一招实现文件上传,让用户爱不释手!
【8月更文挑战第31天】在现代Web应用开发中,文件上传是重要功能之一。JSF(JavaServer Faces)框架提供了强大的文件上传支持,简化了开发流程。本文将介绍JSF文件上传的基本步骤:创建前端表单、处理上传文件的后端Action类、将文件保存到服务器指定目录以及返回结果页面。通过示例代码,我们将展示如何利用JSF实现文件上传功能,包括使用`h:inputFile`控件和`ManagedBean`处理上传逻辑。此外,JSF文件上传还具备类型安全、解耦合和灵活性等优点,有助于提升程序的健壮性和可维护性。
27 0
|
Java Maven
实战:第十四章:Springboot集成jsp页面报404四种解决方案
实战:第十四章:Springboot集成jsp页面报404四种解决方案
427 0
实战:第十四章:Springboot集成jsp页面报404四种解决方案
|
应用服务中间件
EasyUI+JavaWeb奖助学金管理系统[8]-加载角色对应菜单功能实现
本文目录 1. 本章任务 2. 构造测试数据 3. 后端提供查询登录角色对应菜单的接口 4. 后台管理页面加载菜单 5. 测试验证
115 0
EasyUI+JavaWeb奖助学金管理系统[8]-加载角色对应菜单功能实现
|
JavaScript 开发工具 git
走近webpack(0)--正文之前的故事
  在前端工作的过程中,只要你接触过vue,angular,react,gulp就一定知道webpack或者听说过或者使用过webpack,但是或许你对webpack的使用方法并不是十分了解,只是会用写好的构建项目如:vue-cli,angular-cli等,那么这一系列的文章就是带你一点点走近webpack,真正弄懂webpack到底可以做什么,怎么做。
1225 0
|
Java
[Struts]让Dreamweaver显示Struts标签的插件
Dreamweaver(简称DW)的设计视图里不能显示struts标签,只能手动改代码。为此我找了好久,终于还是在DW网站上找到了,只有8K大,虽然没有漂亮的图标,但显示的信息还是很够用的。现在总算可以用DW编辑含有struts标签的jsp文件了! 图1 在DW里显示struts标签 这个文件我已经放在FTP上了,请点这里下载。
1172 0
|
Web App开发 前端开发 索引