2

我为我拥有的 Liferay 网站创建了一个简单的钩子。它包含一个覆盖默认 Liferay 404 的 404.jsp。如果我键入特定页面,它可以正常工作。例如:

http://localhost:8080/jooky.jsp抛出

严重:PWC6117:找不到文件“C%3A%5Cbundles%5Cliferay-portal-6.1.0-ce-ga1%5Cglassfish-3.1.1%5Cdomains%5Cdomain1%5Capplications%5Cliferay-portal%5Cjooky.jsp”

在我的 Glassfish 服务器日志中并将我重定向到我的自定义 /errors/404.jsp 没有问题。

但是,访问http://localhost:8080/jooky会引发不同的错误

INFO:14:07:41,790 INFO [PortalImpl:4873] 当前 URL /jooky 生成异常:null

并重定向到门户中的页面,如下所示:

Liferay 默认 404

谁能帮我将这些非文件类型的 URL 也重定向到我的 404 页面?

谢谢。

4

1 回答 1

5

在阅读Liferay 开发人员指南中有关“覆盖 JSP ”的部分之前,我仍在努力弄清楚如何做到这一点。那正是我需要知道的。404.jsp 文件应该存储在我的钩子中的位置,为什么在我的 liferay 安装中出现 .portal.jsp 文件等。另一个没有提到的关键事情是添加到 portal-ext.properties 文件中. 我必须添加以下内容:

# 404 page
layout.show.http.status=true
layout.friendly.url.page.not.found=/errors/404.jsp

服务器重新启动后,404 页面开始显示所有不正确的页面。

于 2012-03-30T15:21:00.460 回答