Apache Tiles是一个允许作者定义HTML页面片段的框架,可以在运行时将其组合成一个完整的页面。
JspTaglib [“http://tiles.apache.org/tags-tiles”]未定义:它无法分配给tiles
我正在对一个非常旧的Java项目进行更新转换,并在Spring Boot下进行转换。但是,我很难渲染首页,因为它们是用 Struts 2 构建的......
apachetiles的tiles定义我们是否可以使用https?
下面是我的tiles.xml 文件之一的示例代码 下面是我的一个tiles.xml 文件中的示例代码 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE tiles-definitions PUBLIC "-//Apache Software Foundation//DTD Tiles Configuration 2.1//EN" "http://tiles.apache.org/dtds/tiles-config_2_1.dtd"> <tiles-definitions> 这里如果你注意到了,url 以 http:// 开头,即使在官方文档中,示例也是这样写的。 https://tiles.apache.org/framework/tutorial/basic/pages.html 现在的问题是我正在使用 Tomcat9 和 Liferay 7.4 版本。在生产中的 tomcat 服务器中,我需要禁用来自端口 80 的所有流量(入站 + 出站)。一旦我这样做,在运行时在我的应用程序中,我会收到以下错误 ERROR com.liferay.portletmvc4spring.DispatcherPortlet - Could not complete request org.apache.tiles.definition.DefinitionsFactoryException: I/O Error reading definitions. at org.apache.tiles.definition.digester.DigesterDefinitionsReader.read(DigesterDefinitionsReader.java:331) ~[tiles-core-3.0.8.jar:3.0.8] at org.apache.tiles.definition.dao.BaseLocaleUrlDefinitionDAO.loadDefinitionsFromResource(BaseLocaleUrlDefinitionDAO.java:150) ~[tiles-core-3.0.8.jar:3.0.8] at org.apache.tiles.definition.dao.CachingLocaleUrlDefinitionDAO.loadRawDefinitionsFromResources(CachingLocaleUrlDefinitionDAO.java:239) ~[tiles-core-3.0.8.jar:3.0.8] at org.apache.tiles.definition.dao.CachingLocaleUrlDefinitionDAO.loadRawDefinitionsFromResources(CachingLocaleUrlDefinitionDAO.java:230) ~[tiles-core-3.0.8.jar:3.0.8] at org.apache.tiles.definition.dao.CachingLocaleUrlDefinitionDAO.loadRawDefinitionsFromResources(CachingLocaleUrlDefinitionDAO.java:230) ~[tiles-core-3.0.8.jar:3.0.8] at org.apache.tiles.definition.dao.CachingLocaleUrlDefinitionDAO.loadDefinitionsFromResources(CachingLocaleUrlDefinitionDAO.java:208) ~[tiles-core-3.0.8.jar:3.0.8] at org.apache.tiles.definition.dao.CachingLocaleUrlDefinitionDAO.loadDefinitions(CachingLocaleUrlDefinitionDAO.java:197) ~[tiles-core-3.0.8.jar:3.0.8] at org.apache.tiles.definition.dao.ResolvingLocaleUrlDefinitionDAO.loadDefinitions(ResolvingLocaleUrlDefinitionDAO.java:68) ~[tiles-core-3.0.8.jar:3.0.8] 我在想,当应用程序加载JSP时,tomcat试图从这个url动态下载定义文件,当时,由于端口80被阻止,它给出了这个异常。 所以,我的问题是 如果在文档本身中,处理此问题的优雅方法是什么 提到了http://? 如果是这种情况,为什么不是所有人都面临类似的问题? Apache Tiles 2.1 是一个古老的版本,整个 Tiles 项目自 2018 年起就已退役。也许他们从未实现过 XML 外部实体 漏洞预防。我建议迁移到一些较新的框架和支持的框架。 同时,您可以将 DTD 文件下载到您的项目中,并使用本地 URL(而不是远程 URL)引用它。 另一个选项是将 URL 更改为 HTTPS:https://tiles.apache.org/dtds/tiles-config_2_1.dtd,目前正在运行。至少在 Apache 基金会没有关闭该网站的情况下是这样。您不能依赖永远在线的外部资源,特别是对于已退役的项目。
Apache Tiles 3.x 不再在 Spring 6.x 中编译,因为 javax.* 重命名为 jakarta。*
我的应用程序使用Spring 5.x,Apache Tiles 3.0.x。现在我想迁移到 Spring 6.x,但问题出在 Apache Tiles 3.0.x 上,因为它有 javax.servlet.* 而不是 jakarta.* 。所有春天...
从 Struts 2.3.37 迁移到 Struts 2.5.33。 我已经参考了下面给出的页面 https://cwiki.apache.org/confluence/display/WW/Struts+2.3+to+2.5+migration 我在运行时遇到错误...
我们有一个项目,我们正在使用tilesConfigurer来创建页面。 servlet.xml 我们有一个项目,我们正在使用 tilesConfigurer 创建页面。 servlet.xml <bean id="tilesViewResolver" class="org.springframework.web.servlet.view.UrlBasedViewResolver"> <property name="viewClass" value="org.springframework.web.servlet.view.tiles2.TilesView"/> </bean> <bean id="tilesConfigurer" class="org.springframework.web.servlet.view.tiles2.TilesConfigurer" > <property name="definitions"> <list> <value>/WEB-INF/tiles-defs.xml</value> </list> </property> </bean> 我们正在使用 spring-webmvc-3.2.18.Release 和 org.springframework.web.struts-3.1.0.Release jars 将 Struts 更新到 6.3.0.2 时,我们收到此错误 org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'tilesConfigurer' defined in ServletContext resource [/WEB-INF/esextn-dispatcherservlet.xml]: Invocation of init method failed; nested exception is java.lang.NoSuchMethodError: 'void org.apache.tiles.evaluator.el.ELAttributeEvaluator.setApplicationContext(org.apache.tiles.TilesApplicationContext)' 请帮助了解此处使用哪些库 自 Struts 6.3.0 起,Tiles 项目已集成到 Struts 2tiles 插件中。如果您有旧的tiles jar 依赖项,那么应该将其从类路径中删除。因为您正在使用 Tiles 2.2已弃用的 API。 Tiles 重新引入 Struts 历史又回到了原点,Struts 团队决定将 Tiles 源代码重新集成到 Struts Tiles 插件中。这项工作发生在 Struts 版本6.3.0中,现在您可以充分享受 Tiles 的最新版本和支持。
Struts2tiles插件和子文件夹中的tiles配置文件问题
正如发行说明所述: 该版本通过直接复制库的源代码来嵌入 Apache Tiles。 Apache Tiles 项目已经退休,现在它在阁楼上 - 没有开发...
为什么 Struts-2 的 tiles 模板被称为“插件”而不是库?
插件为现有程序添加功能,库用于软件开发。 我们使用struts-2中的tiles-framework来开发像jdbc-api这样的应用程序,那它们为什么调用...
ServletException in:/layouts/menu.jsp null'在存在重定向链接的jsp页面的一部分中
[有一个使用Java 4开发的Java Struts 1.1 Web应用程序,现在正在升级到openjdk8。在运行该应用程序时,我在...]中的UI屏幕上收到此servlet异常,]
我在展开战争时得到以下堆栈跟踪信息。但是,当我手动爆炸并部署它时,一切正常。异常stacktrace示例:AuthorisationInterceptor.doAuthorisation:...
原因:org.xml.sax.SAXParseException:必须为元素类型“ definition”声明属性“ path”
我正在尝试将Struts Tiles 1.2迁移到Apache Tiles 2.2。我正在使用Struts MVC 1.2应用程序,并且在某些地方看到Struts 1.2与Apache Tiles 2没有直接兼容性。...
在我的spring应用程序中使用Apache tiles之前,我想确认apache tiles是否重新加载了正在加载新页面的所有布局属性(例如Header,Menu,Body,footer)。你能 ...
我有apache Tiles布局页面有标题,菜单,正文。在此布局重新加载整个布局是令人耳目一新的。我想要标题,菜单是静态的,只有身体部分应该刷新。 (1)写这个......
Spring MVC 3返回内容类型:text / plain
我想在页面上显示简单的文本,因此我想将Content-Type作为text / plain返回。使用下面的代码,我在页 面上看到纯文本,但返回的Content-Type仍然是text / ...
Spring Application静态文件在heroku上无法正常运行。但他们在当地运行良好。为什么这样?
我有一堆带有模板的js,css和插件。他们都在当地公平地工作。但是,当我在服务器上传项目时,静态文件不会运行该功能。我是 ...
我正在将我的Java项目从Struts 2.3.15升级到2.3.34。我应该做些什么改变?
我正在将我的项目从Struts 2.3.15升级到2.3.34。我应该做些什么改变?
Spring MVC 4 + Apache Tiles 2 + Thymeleaf 3的集成错误
我的团队已经使用JSP工作了几个月的项目。最近,我们意识到Thymeleaf的实施可以方便我们的网页设计师,所以我们已经开始集成...
Spring Mvc Java无法解析名为'dispatcher'的servlet中名为'home'的视图
我的第一个应用程序有问题。我试着解决这个问题好几个小时。任何的想法?? HTTP状态500 - 内部服务器错误类型异常报告消息无法解析名称为“home”的视图...
如何在Apache切片定义文件中创建元标记?对于每个页面,我可以创建一个唯一的标题标签但是如何创建元标记?我的标题定义创建如下。