验证失败后避免显示空白页面

时间:2012-05-18 14:47:41

标签: java-ee glassfish spnego

[CentOS 5.3,glassfish 3.1.1,jdk1.6.30 64bit,spnego R7]

我定义了一个SPNEGO过滤器,使用Kerberos(基本模式)针对AD对用户进行身份验证。如果用户提供适当的证书,则将页面内容发送给用户。但是如果身份验证不成功,则会向客户端返回一个包含401错误的空页面。我在web.xml中定义了401错误页面。

我的问题是:如果SPNEGO身份验证(== SPNEGO过滤器)失败,如何向用户发送任何内容?我是否必须定义一些SPNEGO参数?或者,如果之前的过滤器没有返回任何内容,我应该添加另一个过滤器来添加“登录失败”内容吗?

1 个答案:

答案 0 :(得分:0)

我认为你的web.xml中的错误页面设置应该做你想要的,但SPNEGO应该发送403(登录失败)而不是401(未经授权)。我有一个类似的环境,但SPNEGO返回状态代码403,它在我的web.xml中映射,如下所示:

<error-page>
    <error-code>403</error-code>
    <location>/access-forbidden.xhtml</location>
</error-page>