Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/360.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java WebSphere Liberty全局错误页_Java_Websphere Liberty - Fatal编程技术网

Java WebSphere Liberty全局错误页

Java WebSphere Liberty全局错误页,java,websphere-liberty,Java,Websphere Liberty,我正在WebSphere Liberty Profile中运行我的应用程序。我的应用程序的URL如下所示: http://myhostname:1234/Foo 当用户请求任何未知页面时,我可以自定义war的web.xml中的错误页面,例如 http://myhostname:1234/Foo/whatever_page 但是在用户输入我的Foo上下文根之前,我无法自定义404错误,例如 http://myhostname:1234/whatever_here 我已经看到一些教程建议在HT

我正在WebSphere Liberty Profile中运行我的应用程序。我的应用程序的URL如下所示:

http://myhostname:1234/Foo
当用户请求任何未知页面时,我可以自定义war的web.xml中的错误页面,例如

http://myhostname:1234/Foo/whatever_page
但是在用户输入我的Foo上下文根之前,我无法自定义404错误,例如

http://myhostname:1234/whatever_here
我已经看到一些教程建议在HTTPWeb服务器中这样做,但不幸的是,这不是我的选择。此外,由于某些原因,我无法将根上下文myhostname:1234/用于我的应用程序


请告知我如何仅使用应用程序服务器来实现这一点。

鉴于您声明的限制,我不确定您是否希望这样做。上下文根是该特定应用程序的入口点,因此您将无法在web.xml中指定任何内容,因为它封装在应用程序中

我只是在看liberty在对坏的上下文根执行HTTP GET请求时返回的响应负载,我猜它返回的是Java文件中某个地方生成的html,这让我相信这是不可重写的

你最简单的选择可能是你在最初的帖子中提到的两个

编辑:

tomcat似乎具有您想要的功能:

我尝试了一下,如果你把它放在一个坏的根上下文中,它就会工作。Tomcat有一个根文件夹,因为它是以这种方式实现的,所以它能够处理您试图涉及的案例。如果您想在liberty上执行此操作,可以使用/作为上下文根创建另一个.war,并在那里处理404,因为这是apache基本上模仿tomcat根文件夹中的内容所做的。唯一的区别是tomcat似乎为您提供了这个开箱即用的根,而在liberty中,您需要自己生成它