JSF 前的 Apache

标签 apache jakarta-ee jsf-2 jboss mod-proxy

在 Jboss AS 7 中:

将 Apache 放在 Jboss 前面,这样可以正常工作:

ProxyPass / http://localhost:8080
ProxyPassReverse / http://localhost:8080

所以应用程序是通过 domain.com/app 访问的。

瞄准更清晰的 URL 时出现问题(仅 domain.com):
ProxyPass / http://localhost:8080/app
ProxyPassReverse / http://localhost:8080/app

全部 javax.faces.resource 不会在第二种情况下交付,因为它们不使用 war 上下文 URL。

知道如何在第二种情况下获取人脸资源吗?也许只是转移到 mod_jk?

answer关于ResourceHandler,非常有帮助。

最佳答案

JSF ResourceHandler 发出带有 <contextPath>/javax.faces.resource/ 的 URL路由,尽管是间接通过 ScriptRenderer、StyleSheetRenderer 等。

由于您在 ProxyPass 指令中省略了应用程序名称(上下文路径),因此您需要使用 URL 重写器在 URL 提供给浏览器之前省略它们。引用 the related question 中的答案关于如何实现这一目标。

关于JSF 前的 Apache,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15203177/

相关文章:

node.js - apache 和 nodejs 代理

php - UTF-8 html5网页编码

apache - 重写规则在 .htaccess 中不起作用

java - 将实体传递到 JSP 页面,以及如何从中制作表单?

java - 互连应用程序 - Java EE

java - 处理 AFTER_FILTER_EVENT 类型的事件期间出现异常

php - Laravel public/index.php 显示为纯文本

java - 如何从war文件之外的路径读取Logback配置文件?

jsf - 警告 JSF1090 : Navigation case not resolved for component j_idt51

jsf - 在 Web 应用程序中使用 EJB 有什么好处?