1/*
2 * Copyright (c) 1999, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation.  Oracle designates this
8 * particular file as subject to the "Classpath" exception as provided
9 * by Oracle in the LICENSE file that accompanied this code.
10 *
11 * This code is distributed in the hope that it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
14 * version 2 for more details (a copy is included in the LICENSE file that
15 * accompanied this code).
16 *
17 * You should have received a copy of the GNU General Public License version
18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25
26package javax.naming;
27
28/**
29  * This exception is thrown when an authentication error occurs while
30  * accessing the naming or directory service.
31  * An authentication error can happen, for example, when the credentials
32  * supplied by the user program are invalid or otherwise fail to
33  * authenticate the user to the naming/directory service.
34  *<p>
35  * If the program wants to handle this exception in particular, it
36  * should catch AuthenticationException explicitly before attempting to
37  * catch NamingException. After catching AuthenticationException, the
38  * program could reattempt the authentication by updating
39  * the resolved context's environment properties with the appropriate
40  * credentials.
41  * <p>
42  * Synchronization and serialization issues that apply to NamingException
43  * apply directly here.
44  *
45  * @author Rosanna Lee
46  * @author Scott Seligman
47  * @since 1.3
48  */
49
50public class AuthenticationException extends NamingSecurityException {
51    /**
52     * Constructs a new instance of AuthenticationException using the
53     * explanation supplied. All other fields default to null.
54     *
55     * @param   explanation     A possibly null string containing
56     *                          additional detail about this exception.
57     * @see java.lang.Throwable#getMessage
58     */
59    public AuthenticationException(String explanation) {
60        super(explanation);
61    }
62
63    /**
64      * Constructs a new instance of AuthenticationException.
65      * All fields are set to null.
66      */
67    public AuthenticationException() {
68        super();
69    }
70
71    /**
72     * Use serialVersionUID from JNDI 1.1.1 for interoperability
73     */
74    private static final long serialVersionUID = 3678497619904568096L;
75}
76