j_security_check需要用户名来从数据库填充表单

时间:2012-12-14 22:29:48

标签: java j-security-check

我正在做一份即将到期的家庭作业,我已经搜索并搜索并搜索了答案,我不知道在这一点上去哪里。

我正在使用Eclipse Juno,Tomcat 7.0和MySql数据库。我必须为披萨店开发一个Web应用程序。我几乎所有的工作都在工作,因此只有在需要时才会在此处发布代码,因为有一吨。

我的问题是我有一个调用j_security_check的登录表单,它工作得很好。但是,当用户登录时,他们会被带到一个客户表格,该表格应该显示他们的姓名,地址,电话号码,并让他们选择编辑任何一个或只是开始他们的订单。我的问题是我需要获取j_username并从我的数据库中提取客户信息,以便在用户从登录页面重定向到customer.jsp页面时填充表单。我们不应该使用<%-----%>在我们的代码中,如果我们可以帮助它并将其保留在servlet中。我只是迷失了如何获取j_username,然后调用servlet填充表单(如果我可以获取数据,我可以填充)。

请帮助!!!我知道我在这里错过了一些非常简单的东西,它让我疯狂。

好的我已经尝试过您发送的演示,并且实际上找到了另一个带有FORM的演示,就像我的项目一样。我仍然无法让它发挥作用。我有点失落。当我完全按照它进行演示时,servlet会生成文本并输出它。我能够将它更改为requestDispatcher并将其发送到我需要它登录的页面。该演示只是将它转到url主机... / YourProject / test而不是实际的页面。我迷失了如何让它调用servlet所以我可以用我的项目获取头信息。我有servlet LoginUser我希望用户登录login.jsp并且在出现错误时有一个login_error.jsp。当用户成功登录时,他们应该被带到customer.jsp并且页面上的字段填充了他们的数据。我需要改变这个以使用SSL但是还没到那里我还在尝试为客户获取数据。

1 个答案:

答案 0 :(得分:0)

我怀疑你使用的是Tomcat中的基本身份验证。查看this post for instructions.总之,您需要从servlet请求中获取身份验证标头并解析它以获取用户名(首先您可能需要对其进行base64解码)。然后,您可以使用该用户名在数据库中查找必要的信息。