gpt4 book ai didi

java - 如何设计可以提供接口(interface)作为JAX-WS Web服务,通​​过JMS或Java EE框架内的本地方法调用的服务?

转载 作者:太空宇宙 更新时间:2023-11-04 08:53:23 24 4
gpt4 key购买 nike

使用典型的Java EE框架,如何开发和
部署可以称为Web服务的服务
(具有WSDL接口),可通过JMS消息进行调用,
或直接从同一服务中的其他服务调用
容器?

这里是一些更多的上下文:

目前,我负责服务
(以下称为服务X)
特性:


接口定义是人类可读的
手动更新文档。
接受对单个URL的HTTP形式编码的请求。
发送简单的旧XML响应(无模式)。
使用Apache接受请求+
专有应用服务器(不是servlet)
或基于EJB)包含所有逻辑
在单独的层中运行。
大量使用关系数据库。
由内部应用程序调用
用多种语言写成
也由少数第三方提供。


我想要(或至少已经被告知!):


切换到著名的(首选开放源代码)Java EE
堆栈,例如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的工作-它
似乎我有很多东西要学习!我也不是很习惯
使用框架而不是简单地编写代码
调用某些程序包来执行操作。

我已经下载了Glassfish,
一个简单的WSDL文件,然后使用wsimport +一点
伪代码将其转换为我已经拥有的WAR文件
部署。

最佳答案

本文的页面2:Lean service architectures with Java EE 6讨论使用Facade模式向远程和本地用户公开服务。我对使用JMS并不熟悉,所以我不确定它是否适合。

关于java - 如何设计可以提供接口(interface)作为JAX-WS Web服务,通​​过JMS或Java EE框架内的本地方法调用的服务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2871921/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com