我在哪里可以找到"j_security_check"?

Dee*_*end 18 java jsp tomcat servlets

是否有"j_security_check"的标准位置,以便我可以查看它?

搜索我的计算机找不到该文件,只是对它的引用.因此,出于安全原因隐藏它还是不是文件?

我已被锁定在应用程序之外,这是我第一个看到解决方案的地方.

Bal*_*usC 24

它是Servlet API的一部分,内置于servletcontainer中.在您的情况下,它内置于Tomcat中.更具体地说,这个org.apache.catalina.authenticator.FormAuthenticator班级.

227        // Is this the action request from the login page?
228        boolean loginAction =
229            requestURI.startsWith(contextPath) &&
230            requestURI.endsWith(Constants.FORM_ACTION);
231
232        // No -- Save this request and redirect to the form login page
233        if (!loginAction) {
234            session = request.getSessionInternal(true);
235            if (log.isDebugEnabled())
236                log.debug("Save request in session '" + session.getIdInternal() + "'");
237            try {
238                saveRequest(request, session);
239            } catch (IOException ioe) {
240                log.debug("Request body too big to save during authentication");
241                response.sendError(HttpServletResponse.SC_FORBIDDEN,
242                        sm.getString("authenticator.requestBodyTooBig"));
243                return (false);
244            }
245            forwardToLoginPage(request, response, config);
246            return (false);
247        }
248
249        // Yes -- Validate the specified credentials and redirect
250        // to the error page if they are not correct
251        Realm realm = context.getRealm();
252        if (characterEncoding != null) {
253            request.setCharacterEncoding(characterEncoding);
254        }
255        String username = request.getParameter(Constants.FORM_USERNAME);
256        String password = request.getParameter(Constants.FORM_PASSWORD);
257        if (log.isDebugEnabled())
258            log.debug("Authenticating username '" + username + "'");
259        principal = realm.authenticate(username, password);
260        if (principal == null) {
261            forwardToErrorPage(request, response, config);
262            return (false);
263        }
Run Code Online (Sandbox Code Playgroud)

Constants.FORM_ACTION/j_security_check.

至于您被锁定的具体问题,请确保您提供正确的用户名和密码.用户数据库通常由领域配置.


Emm*_*urg 6

这不是文件,这是基于容器的身份验证的别名:

http://docs.oracle.com/javaee/1.4/tutorial/doc/Security5.html