Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/366.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何设计能够提供接口的服务,如JAX-WSWeb服务、JMS或JavaEE框架内的本地方法调用?_Java_Web Services_Jakarta Ee_Jms - Fatal编程技术网

如何设计能够提供接口的服务,如JAX-WSWeb服务、JMS或JavaEE框架内的本地方法调用?

如何设计能够提供接口的服务,如JAX-WSWeb服务、JMS或JavaEE框架内的本地方法调用?,java,web-services,jakarta-ee,jms,Java,Web Services,Jakarta Ee,Jms,使用一个典型的JavaEE框架,我如何开发 部署可以称为web服务的服务 (使用WSDL接口),可以通过JMS消息调用, 或直接从同一网络中的其他服务调用 集装箱 这里有更多的上下文: 目前我负责一项服务 (我们称之为服务X)具有以下特性 特性: 接口定义是人类可读的 手动更新文档 接受对单个URL的HTTP表单编码请求 发送普通的旧XML响应(无架构) 使用Apache接受请求+a 专有应用程序服务器(非servlet) (或基于EJB)包含所有 在一个单独的层中运行 大量使用关系数据库 由

使用一个典型的JavaEE框架,我如何开发 部署可以称为web服务的服务 (使用WSDL接口),可以通过JMS消息调用, 或直接从同一网络中的其他服务调用 集装箱

这里有更多的上下文:

目前我负责一项服务 (我们称之为服务X)具有以下特性 特性:

  • 接口定义是人类可读的 手动更新文档
  • 接受对单个URL的HTTP表单编码请求
  • 发送普通的旧XML响应(无架构)
  • 使用Apache接受请求+a 专有应用程序服务器(非servlet) (或基于EJB)包含所有 在一个单独的层中运行
  • 大量使用关系数据库
  • 由内部应用程序调用 用多种语言和语言书写 也由少数第三方提供
我想(或者至少是别人告诉我的!):

  • 切换到知名(首选开源)JavaEE 堆栈,如JBoss、Glassfish等

  • 将服务X拆分为服务A和服务B 这样我们就可以把服务B拆下来进行维护了 不影响服务A.注意服务 B将取决于(即需要向提出请求) 服务A

  • 使这两项服务更易于第三方使用 通过至少提供WS-I样式与集成 接口(WSDL+SOAP+XML+HTTP)和 还有一个JMS接口。将来我们可以考虑 一个更轻量级的API(REST+JSON?谷歌) 协议缓冲区?)

其他考虑因素包括:

  • 在较小的部署中,服务a和服务B 很可能在同一台机器上运行 对他们来说,使用HTTP或 消息总线通信;如果他们能,那就更好了 在同一容器中运行,并对 彼此

  • 与现有的自组织网络向后兼容 服务X接口不是必需的,我们也不是 计划重复使用太多的现有代码 为新的服务

  • 我对这两个合同都很满意(我想是WSDL) 或(带注释的)代码优先开发

抱歉,如果我的术语有点模糊-我很抱歉 非常熟悉Java和web编程 一般来说,但是我发现很难起床 为了加快所有这些企业/SOA的速度—it 看来我有很多东西要学!我也不太习惯 使用框架而不是简单地编写代码 这需要一些软件包来做一些事情

我已经下载了玻璃鱼,敲门 创建一个简单的WSDL文件并稍微使用wsimport+ 虚拟代码将其转换为WAR文件,我已经 部署