通过JavaWebApp登录

通过JavaWebApp登录,java,http,web-applications,Java,Http,Web Applications,我已经问过这个问题了,但是因为缺少答案,我会再试一次 我想做什么 编写一个java webapp,在任何webapp中自动记录我的日志。例如,我选择了我的zimbra 邮件帐号 我的Java webapp应该如何工作 应用程序应向特定应用程序发送登录请求,该请求通常与 登录表单中的操作。执行应用程序后,应设置cookies,以便我登录 自动地 我现在正在尝试什么 我正在使用下面的代码,doGet()方法是扩展的HttpServlet的一部分 protected void doGet(HttpSe

我已经问过这个问题了,但是因为缺少答案,我会再试一次

我想做什么 编写一个java webapp,在任何webapp中自动记录我的日志。例如,我选择了我的zimbra 邮件帐号

我的Java webapp应该如何工作 应用程序应向特定应用程序发送登录请求,该请求通常与 登录表单中的操作。执行应用程序后,应设置cookies,以便我登录 自动地

我现在正在尝试什么 我正在使用下面的代码,
doGet()
方法是扩展的
HttpServlet
的一部分

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    response.setContentType("text/html");
    PrintWriter out = response.getWriter();
    HttpClient httpclient = new HttpClient();

    PostMethod postMethod1 = new PostMethod("http://mail.mydomain.at/zimbra/");
    postMethod1.getParams().setCookiePolicy(CookiePolicy.BROWSER_COMPATIBILITY);
    postMethod1.addParameter("username", "myname@mydomain.at");
    postMethod1.addParameter("password", "mypassword");
    postMethod1.addParameter("loginOp", "login");
    httpclient.executeMethod(postMethod1);

    out.println(postMethod1.getResponseBodyAsString());
}
有什么问题吗 执行代码后,我只收到一条消息,说我的浏览器(实际上是我的HttpClient)似乎禁止cookie

因此,我认为,cookies将在我初始化的
HttpClient
中设置。 但我想做的是在我的浏览器中设置cookies。我怎样才能做到这一点

解决方案:
该任务失败,因为通过使用webapplication(通过自实例化的HTTPClient)登录,该客户端接收cookie,但不接收浏览器。未找到解决方法。

如果您的浏览器正在访问www.abc.com,我认为您无法设置www.xyz.com域的cookie。否则,这将是一个严重的安全违规行为。任何人都可以在他们的浏览器中设置假cookie并访问您的数据


在您的情况下,您需要从浏览器免费登录zimbra,以便在客户端上设置cookie。

如果您的浏览器正在访问www.abc.com,我认为您无法设置www.xyz.com域的cookie。否则,这将是一个严重的安全违规行为。任何人都可以在他们的浏览器中设置假cookie并访问您的数据


在您的情况下,您需要从浏览器默认登录到zimbra,以便在客户端上获得cookie集。

因此,在执行此Java代码后,您希望您的浏览器登录吗?对吗?对,对。为了解释这个应用程序的用途:我正在尝试构建一个基本的单点登录应用程序。在这种情况下,您将不得不直接操作浏览器cookies,这可能不像您希望的那么简单。作为浏览器附加组件(或GreaseMonkey/用户脚本)编写可能更容易。如果您想要单点登录,最好自己实现,用户登录到“您的”系统,然后检索用户名和密码、cookie以及任何要传递到他们要连接的系统的内容。无论如何都不是小事。谢谢你的反馈。浏览器插件不是独立于浏览器的,我更喜欢它。如果不是自己处理用户帐户和cookie的实现,还有什么?必须具备实现自动/集中登录的技术可能性!?那么,在执行了这个Java代码之后,您希望您的浏览器登录吗?对吗?对,对。为了解释这个应用程序的用途:我正在尝试构建一个基本的单点登录应用程序。在这种情况下,您将不得不直接操作浏览器cookies,这可能不像您希望的那么简单。作为浏览器附加组件(或GreaseMonkey/用户脚本)编写可能更容易。如果您想要单点登录,最好自己实现,用户登录到“您的”系统,然后检索用户名和密码、cookie以及任何要传递到他们要连接的系统的内容。无论如何都不是小事。谢谢你的反馈。浏览器插件不是独立于浏览器的,我更喜欢它。如果不是自己处理用户帐户和cookie的实现,还有什么?必须具备实现自动/集中登录的技术可能性!?你说得对,为外域设置cookie是不可能的!“显式”是指手动?是的,应该是您从浏览器中登录zimra站点,以便浏览器创建cookie,在您返回站点时自动登录。但是,coockie将不会以任何方式提供给其他域。如果想要集成,应该在后端进行。我想要在前端进行集成的原因是,我想使用目标Web应用程序的GUI…不知道这是否有意义;)你说得对,为外域设置cookie是不可能的!“显式”是指手动?是的,应该是您从浏览器中登录zimra站点,以便浏览器创建cookie,在您返回站点时自动登录。但是,coockie将不会以任何方式提供给其他域。如果想要集成,应该在后端进行。我想要在前端进行集成的原因是,我想使用目标Web应用程序的GUI…不知道这是否有意义;)