如何在Java中创建Web服务(使用Eclipse)

如何在Java中创建Web服务(使用Eclipse),java,web-services,Java,Web Services,我真的很难用Java创建简单的“HelloWorld”Web服务。若你们不包括我做过的几个移动Android移动应用,我对Java环境相当陌生 首先,我尝试了Axis2,但这根本无法在开箱即用的情况下实现。Eclipse、Tomcat 6.0和Axis2的全新安装。尝试了示例测试应用程序,但失败惨重。你可以读到它。我的结论是Axis2根本不工作(也许它曾经工作过)。我将尝试回去安装旧版本,也许其中一个会神奇地开始工作。我必须修改一些使用Axis2的旧项目,所以我必须坚持使用它。我不想迁移到其他工

我真的很难用Java创建简单的“HelloWorld”Web服务。若你们不包括我做过的几个移动Android移动应用,我对Java环境相当陌生

首先,我尝试了Axis2,但这根本无法在开箱即用的情况下实现。Eclipse、Tomcat 6.0和Axis2的全新安装。尝试了示例测试应用程序,但失败惨重。你可以读到它。我的结论是Axis2根本不工作(也许它曾经工作过)。我将尝试回去安装旧版本,也许其中一个会神奇地开始工作。我必须修改一些使用Axis2的旧项目,所以我必须坚持使用它。我不想迁移到其他工具

然后我读了一篇甲骨文,我想,酷,让我们试试。好吧,我只是想方设法生气了。在文章读了一半并试图编写一些简单的测试web服务之后,我意识到他们的代码示例编写得很糟糕。缺少括号、错误引用、缺少解释等

首先,接口应该扩展而不是实现。我说得对吗

公共接口SunRegPort实现了java.rmi.Remote{

此外,这并不存在:

导入java.xml.rpc.server.ServiceLifecycle

但这确实:

导入javax.xml.rpc.server.ServiceLifecycle

嗯,我觉得自己没有能力批评太多(当然是因为我对这门学科的知识水平),但毕竟我怀疑这篇文章完全是垃圾,因此我无法理解

请有人告诉我,我错了,如果有人有一些建议或链接到一些关于web服务的网页,我将不胜感激


谢谢。

如果你仍然有兴趣尝试一下Tomcat,这里是youtube上的一个教程,介绍如何使用Eclipse制作一个非常基本的“Hello world”示例。它还有很多需要学习的地方;但看起来至少可以让你开始学习

仅供参考,使用的Eclipse版本有点过时。因此某些菜单选项可能不完全相同:


此外,“Web服务”的含义可能是主观的。因此,具体来说,这只是向您展示了如何在本地计算机上启动一个基本的HTTP端点。

我建议您查看apache的CXF项目。它非常易于使用,应该可以帮助您设置Web服务

有一个很好的关于Hello world设置的指南


如果您不喜欢Eclipse,请尝试一下NetBeans。我认为在Java中使用Web服务更好。

Web服务的术语非常模糊。在Java中,现代且相当简单的方法是注释类。 我建议您首先决定是否要实施:

  • SOAPWeb服务->查看
  • RESTWeb服务->查看
选择Web服务的“类型”后,请选择实现该规范的库

Wikipedia条目列出了其中的一些实现。ApacheCXF(完整但非常简单)、Jersey(流行)和Restlet是非常常见的选择。我个人也喜欢JAX-WS的JBoss实现

对于使用ApacheCXF的JAX-WS,下面是一个看起来相当不错的(未经测试)

对于带有Jersey的JAX-RS


除非您有强烈的理由不这样做(例如,您需要调用现有系统),否则请使用更简单、更精简的REST。

Web服务是面向服务的体系结构(SOA)最广泛实现的示例。服务契约是在SOAP和Web服务定义语言(WSDL)的帮助下定义的并发布给其他应用程序使用

在本文中,我们将看到如何用java创建web服务和web服务客户端


接口扩展了其他接口。只有类实现了接口。看看Jax WS。每当你在web上发现一些东西时,你都应该检查它的编写日期。我确实检查了你的示例:它是2002年的!在计算机时代,这是石器时代的事。他们编写的内容可能在当时是有效的。你是not应该再显式地使用RPC/RMI了。这似乎已经被取消了。