问题标签 [tiles2]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
spring-mvc - 如何使用 Apache Tiles 和 Spring MVC 自动导入正文
我有以下tile-def.xml:
如您所见,在我的所有页面中,只有正文发生了变化。有没有办法自动化这个?(所以它会自动包含具有请求页面名称的jsp,或者如果它不存在则包含错误页面?)
谢谢!
编辑:我想做的更多细节:
现在情况如何:对于我的 webapp 的每个新页面,我都必须在我的 tiles-def.xml 中添加一个新页面。每次,它唯一做的就是用我的内容页面设置正文。
我想做的事:只有一个自动选择要显示的页面的默认定义,如下所示:
其中 myPageName 是请求页面的名称(如果 URL 是“http://www.mysite.com/contact.html”,那么 myPageName 就是“contact”。如果是“http://www.mysite .com/info.html”,那么 myPageName 将是“info”)。
我怎样才能做到这一点?
spring - 使用瓷砖时在查询字符串中传递数据
我在我的项目中使用了 tiles2 和 spring。当我使用查询字符串从spring控制器重定向到jsp(jsp页面映射在tiles.xml文件中)页面时:
它向我展示了:
我认为这是使用查询字符串传递数据的错误方法。请告诉我我该怎么做。
谢谢沙姆斯
model-view-controller - 使用tiles2和spring mvc动态设置页面标题
我一直在问自己这个问题已经有一段时间了,我还没有在网上找到一个很好的解决方案。
所以我使用 Tiles2 和 Spring MVC,我想在 body tile 中动态设置页面标题。有办法吗?
我目前的解决方案是在控制器中设置标题
以及模板中的 ac:out
java - apache + tiles2 布局问题
我有以下瓷砖配置文件
并显示“view.jsp”页面我有另一个页面名为“home.jsp”,它有以下代码(仅)
//home.jsp
这里的问题是,如果我想加载具有相同布局的“edit.jsp”页面,我需要在tiles.xml中重复这部分
并创建一个名为“editbase.jsp”的文件并调用它。(重复上面的代码)
我只是想知道这是正确的方法还是我可以做类似的事情
并相应地加载页面。我认为我的问题很清楚
我正在使用 apache 瓷砖 2.2.2
提前致谢
干杯
同龄人
spring - Apache Tiles 2 + Spring MVC 3 使用多组视图定义
这是一个复杂的问题,所以请耐心等待我的冗长解释。
当前情景
我们使用 Spring MVC 3.0.5 和 Apache Tiles 2.2。目前我们基于 Spring 的瓦片配置如下所示:
从所有文件中读取(Tiles)视图定义views.xml
,当 Spring 控制器产生,例如,“主页”作为要呈现的逻辑视图名称时,将显示名称为“主页”的相应 Tiles 定义。
目标
我们现在打算在我们的 Web 应用程序中允许来自不同目录的不同视图定义集。原因是,不同的用户组将根据他们的组定制模板。
假设我当前的所有视图定义都位于
我想添加第二个文件夹
第二个文件夹应包含与文件夹中名称相同的视图定义default-views
。但根据 URL 模式,应显示其中一个或另一个。以下是两个示例:
此外,我们希望允许回退机制。当相应的视图文件夹中不存在专用视图名称(上例中的“admin”)时,我们希望显示其他文件夹中的默认版本。
至今
目前我正在考虑几个起点。也许我可以调整TilesConfigurer
. 它将 Tiles 视图定义保留在单个属性中,而不区分视图定义来自的文件夹。
另一种选择是尝试使用链式视图解析器来完成此任务,其中专用的视图解析器位于链的更上方,默认的解析器位于最后。
第三种选择是使用不同的视图名称并拦截来自控制器的视图名称响应,使用 aHandlerInterceptor
将其映射到专用视图(如果它不存在则可能不起作用)。
问题
- 实现这种视图解析机制有哪些好的选择?
- 允许视图定义被其他人/更专业的人覆盖
- 根据请求的 URL 模式进行显示
目前,我的选项#2 听起来最有说服力,因为我想防止在没有必要时玩弄 Springs 类。但是我缺少链式视图解析器和TilesConfigurer
.
感谢您到目前为止的耐心和阅读。
spring-mvc - Spring MVC 和 Tiles 集成
首先我知道 Spring MVC 与 Tiles 有很好的集成。但我的问题如下:
我已将我的 web.xml 配置为
我的 Dispatcher-servlet.xml 配置如下:
请注意,Dispatcher servlet 被映射为处理所有请求。我不想以某种方式对其进行配置,使其只能处理特定请求,例如 *.hmtl 或 *.do 或 *.form 因为我希望我的 URL 整洁,这是一个要求。
我的瓷砖定义如下
现在,当我发出 HTTP 请求以说出 URL“http://localhost:8080/myapp/home”时,使用请求映射“/home”映射的带注释的控制器处理请求并最终返回视图名称为“home”的 ModelAndView ”。
最后,当调度程序 servlet 尝试呈现它说的页面时
未找到带有 URI [/myapp/WEB-INF/tiles-layouts/publicLayout.jsp] 的 HTTP 请求的映射
但是当我更改我的调度程序 servlet 映射这样 *.html 时,它工作正常,我不想这样做。
在这里可以做什么。??我认为这是一个非常普遍的问题。
java - 使用 Apache Tiles 时 Struts2 中的命名空间问题
当我来到 Struts2 时,我遇到了一个简单的问题。我在我的 Struts2 项目中使用了 tile 插件。众所周知,瓷砖用于制作模板。我们可以在配置文件 struts.xml 中为我们的包提供命名空间:
我给我的一个链接提供了命名空间属性
所有这些都运行良好,我仍然可以看到我的页面,但是这一次,当我将上述命名空间添加到包定义中时struts.xml
,s:url
我丢失了我的图块定义。我丢失了我的图块模板、样式(css)和设置。但是如果不使用这个命名空间,我可以使用图块访问我的页面。
请帮助我,我哪里出错了?提前致谢。
attributes - Tiles、Struts 2、链式动作和传递 put-attribute 值
我正在编写一个搜索引擎来探索多种搜索算法。web 部分浮动在 Struts 2.1.6 和 Tiles 2.2.2 上。它目前完全是一团糟,所以下面我已经分解出一个简化版本来专注于我遇到的确切问题。
通过该站点的正常流程是这样的:
- 搜索表单飞溅。选择搜索算法并输入搜索参数。
- 提交表格。算法选择设置表单提交到的操作。
- 结果页面。在顶部包含搜索表单的副本(在启动画面和结果中都使用相同的搜索表单 jsp 代码)。
问题:我想添加一个搜索表单变体。变体 2 将提交与变体 1 相同的一些搜索算法,具有相同的结果页面,但当然我希望变体 2 搜索表单显示在顶部以保持一致性。新流程将是:
- 选择一个搜索表单。对于香草,转到 2。对于疯狂,转到 3。
- 从 {A, B, C} 中选择搜索算法并输入搜索参数。转至 4。
- 从 {B, C, D, E} 中选择搜索算法并输入搜索参数。转至 4。
- 提交。链(使用 Struts“链”结果类型**)到所选算法的适当搜索操作。
- 显示结果。包括一份{Vanilla | 疯狂}搜索表单。
** 切换到“链”是为了允许更自动地传递算法参数。旧方法使用隐藏字段,并且使用重定向来维护非常痛苦,正如您将在下面的 struts.xml 中看到的那样。
所以对于单个变体,我有这样的东西:
所以我打算补充的是:
(可能将两个搜索页面的搜索输入显示切换为图块以保存 copypasta)(并为搜索算法消除所有输入重定向参数废话,因为链接会自动将这些值保留在堆栈中)
...但现在我已经被淹没了,因为 SearchPage 和 CrazySearchPage 共享的链接操作都显示在结果图块中:
结果磁贴包括常规 SearchPage 中使用的常规搜索表单代码:
我想相信通过切换
至
然后我可以(1)为 CrazyResults 制作一个新的磁贴,该磁贴在适当的搜索表单 jsp 中传递,或者(B)找到某种方法来传递基于 *SearchPage 运行的磁贴属性。
(1) 的问题是链式算法操作已经转到常规结果图块,我不想禁止常规 SearchPage 中的这些算法,以便我可以在 CrazySearchPage 上使用它们。我想我可以定义一组重复的算法操作供 CrazySearchPage 使用,它们以不同的名称和不同的结果调用同一个类,但这会使 struts.xml 和我的其他配置文件变得一团糟(我有广泛的显示与每个动作名称关联的设置)。
(B) 的问题是我还没有找到足够的瓷砖文档来告诉我这是否可能以及如何去做。Struts 和 Tiles 似乎并不直接相互交谈,它们只是传递注释。
java - Struts2 中的多种结果类型?
我有一个使用 Tiles 的 Struts2 应用程序。如何在动作映射中获得多种结果类型?因为我需要将 de 输出设置为 JSON 数据,并同时设置 Tiles。我试过了:
但这不起作用