【问题标题】:Endpoint with java, where is the session?端点与java,会话在哪里?
【发布时间】:2013-07-30 12:17:47
【问题描述】:

这是我在 main 上的代码:

Endpoint.publish("http://0.0.0.0:8080/ws/WebServices", new WebServicesImpl());

这是我的 WebServicesImpl:

@WebService(endpointInterface = "ws.WebServices")
public class WebServicesImpl implements WebServices {

    @Override
    public void recibirTramaPosicionWS(AnObject anobject) {
        AThread ttp  = AThread(anobject);
            ttp.start();
    }
}

Web 服务正常工作,我可以访问它并且一切正常,但我有一个大问题:我可以获取我的客户的会话、请求或在 WebServicesImpl 中使用的东西吗?我需要在此 Web 服务中实现安全性。

有什么想法吗?

非常感谢!

【问题讨论】:

    标签: java web-services session endpoint


    【解决方案1】:

    在此处查看示例:How to get session object while working on webservices?

    通常这取决于您使用的容器,但@Resource 注解会为您提供一些默认对象,例如WebserviceContext

    【讨论】:

      【解决方案2】:

      首先,在日常生活中,我们不会以这种方式发布 Web 服务。它通常由不同的 api 完成,如 apache-cxf、axis 等。您还可以使用不同的框架来公开 web 服务,如 spring。

      说到你的问题,这只是一个在端口上监听 http 调用的程序。它只能用于测试目的。 “端点”类是 jdk 包附带的类。您无法使用这种方法进行会话管理。如果您想要会话管理,我建议您使用真正的应用程序服务器并在其上部署您的应用程序。

      【讨论】:

      • 谢谢,我知道这不是开发 Web 服务应用程序的最佳方式,但我需要一个界面(不是 Web,桌面界面),这是我知道的快速实现方式。如果你能用另一种方式帮助我......
      猜你喜欢
      • 2011-08-01
      • 1970-01-01
      • 2015-12-28
      • 1970-01-01
      • 2023-04-10
      • 2021-12-30
      • 2017-05-01
      • 2012-10-24
      • 1970-01-01
      相关资源
      最近更新 更多