EJB 模块中的 XML-RPC 服务器
我想知道是否可以在 EJB 模块中创建 XML-RPC 服务器组件而无需 servlet。我知道 EJB 通常使用 RMI 作为通信协议,但如果我想省略 RMI 该怎么办?如果我想通过 XML-RPC 等不同方式在 EJB 和 Web 模块 (WAR) 或其他客户端之间交换数据怎么办?
EJB 模块可以作为独立单元工作,将其状态和服务公开为 XML-RPC 服务器吗?
我仍然可以通过 RMI 将 EJB 模块与 WAR 连接,而该 WAR 将通过 servlet 公开这些服务。然后其他 WAR 或无论它们是什么客户端都可以调用这第一个 WAR。这是正确的还是有其他可能性?
I'm wondering if it is possible to create XML-RPC server component within EJB module without servlets. I know EJB typically uses RMI as communication protocol but what if I want to omit RMI. What if i want to exchange data between EJB and web module (WAR) or other clients by different way like XML-RPC.
Can EJB-module work as stand-alone unit which will expose its state and services as XML-RPC server?
I still can do EJB module connected with WAR via RMI while this WAR will expose those services via servlet. Then other WARs or whatever-they-are clients can call this first WAR. Is this right or there is some other possibility?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可能想要的是使用 Spring Remoting 通过 JAX-WS 等方式公开您的 EJB。 Spring 将自动创建 servlet 来为您处理请求。坏消息是您必须从您构建的远程服务中调用 EJB——这意味着一些样板代码。但它应该是非常简单的。
您可能会考虑的另一种可能性是 Restlet,它可用于构建宁静的服务。
What you probably want is to use Spring Remoting to expose your EJBs via for instance JAX-WS. Spring will create automatically servlets for handling the requests for you. The bad news is that you have to call your EJBs from the remoting services you build - meaning some boilerplate code. It should be quite straight forward though.
An other possibility you might take a look at is Restlet which can be used to build restful services.
在 EJB3 中,您的服务 Bean 只是带注释的 POJO。您可以简单地使用 @WebService(以及该系列注释的其余部分)注释相同的 POJO,以将相同的服务公开为 Web 服务。
我意识到这并不是您所要求的,因为以这种方式公开的服务的实现是使用 SOAP 消息的 JAX-WS。但我认为它达到了你的目的。
In EJB3, your service beans are just annotated POJOs. You can simply annotate the same POJOs with @WebService (and the rest of this family of annotations) to expose the same services as web services.
I realize this isn't strictly what you asked for as the implementation for services exposed in this way is JAX-WS which uses SOAP messages. But I think it achieves your intent.