gpt4 book ai didi

web-services - SOAP 和 REST Web 服务在 Java EE 中具有一种实现

转载 作者:行者123 更新时间:2023-12-04 04:13:47 25 4
gpt4 key购买 nike

是否有可能(Java EE、JBoss 6)巧妙地注释 Java 代码以提供 RESTful 和 SOAP Web 服务而不实现两种方法?

我在想:

@Local
@Path("/service")
@WebService
public interface SomeService {
@GET @Path("somemethod")
@WebMethod
public String someMethod (@QueryParam("s") String someParam);
}

请注意 两个 @Path 和 @WebService 注释(不幸的是,上面的例子不起作用)。

最佳答案

虽然 JAX-WS 和 JAX-RS 注释可以非常愉快地共同使用相同的方法,但我发现很难相信任何经过良好调整以与 JAX-RS 一起使用的接口(interface)都可能非常适合 JAX-WS,反之亦然反之亦然。问题不是你做不到,问题是你不应该;他们有不同的世界模型,不同的概念意味着什么是好的界面。

但如果你只是做一些简单的事情,比如简单的查找,它确实可以工作:

@GET
@Path("foo/{id}")
@Produces("application/xml")
@WebMethod(operationName = "DescribeFoo")
@WebResult(name = "Description")
public DescriptionOfFoo getFooDescription(
@PathParam("id")
@WebParam(name = "fooId")
String id) {
return get_the.description_of(id); // Whatever...
}

我喜欢尽可能多地放在接口(interface)上(检查你的框架文档以了解如何使它们工作),因为这将上述部分(!!)可能的注释集降低到更合理的水平。 (作为引用,当事情开始变得复杂并且您在非平凡的模式中应用多个方面时,您可以轻松地获得每个方法的 20 多个注释,其中一些与您的实现有关,其中一些与一个或另一个有关您的界面;分区促进理智。)

关于web-services - SOAP 和 REST Web 服务在 Java EE 中具有一种实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6871815/

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