java - 如何在 Wildfly 上禁用缓存

标签 java caching jboss wildfly

我正在使用 VRaptor 4使用 Wildfly 9,我意识到我在本地主机上的导航、刷新或导航到其他页面时,HTML 内容会正常重新加载。但是在另一台主机(例如:生产)中,我需要清除浏览器缓存来刷新页面。示例:如果我发送一条消息以在 View 中显示警报并在其他页面之间导航,然后转到上一页,警报将保持显示。我需要清除缓存以禁用警报。

我该如何解决?

最佳答案

您可以在 undertow 子系统中设置响应头过滤器。

<subsystem xmlns="urn:jboss:domain:undertow:1.2">
   ...
   <server name="default-server">
      <host name="default-host" alias="localhost">
         ...
         <filter-ref name="cache-control" predicate="path-suffix['.jsp'] or path-suffix['.jsf']"/>
      </host>
   </server>

   <filters>
      <response-header name="cache-control" header-name="Cache-Control" header-value="no-cache"/>
   </filters>
</subsystem>

关于谓词过滤器语法,请参阅 http://undertow.io/undertow-docs/undertow-docs-1.2.0/predicates-attributes-handlers.html .它很强大。我上面的示例将为每个 jsp/jsf 页面发送一个无缓存的 Cache-Control header ,这在用户体验和服务器负载方面可能是非常糟糕的。明智地选择不缓存的内容。

关于java - 如何在 Wildfly 上禁用缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37705378/

相关文章:

Java/Eclipse : returning to List casted Map. 值()

java - 使用 Spring Boot Starter Test 在单元测试中获取异常对象

java - 无法从同一网络java访问webservice

java - Infinispan:如何异步调用EntryProcessor?

java - 将字符串转换为 Sha-256 哈希值

java - 降低函数的圈复杂度

node.js - 在 Node.js api 中提供 JSON 响应时防止缓存

caching - 在 Symfony 中防止 Doctrine 的查询缓存

html - 如果外部包含的文件(例如 JavaScript 或 CSS)在页面上包含两次(或更多次),是否会有两次(或更多次)网络请求?

java - Jboss CLI : Expected [INT] but was STRING