如何创建Axis2 Web服务?

时间:2011-08-17 22:32:10

标签: java axis2

我正在尝试学习如何构建Web服务。我正在努力做最简单的直接服务,经过一整天的浪费时间,我几乎不知道该怎么做。

我正确安装了Tomcat 6.0的Eclipse Indigo(32位)。在服务器选项卡中,我可以根据需要运行/停止服务器。我还安装了Axis2 1.6.0引擎。

以下是我的步骤:

1)新的Web动态项目
2)完成后,单击“项目属性”>项目构面并检查Axis2 Web服务
3)Eclipse会将所有文件添加到我的项目中。一切似乎都没问题 4)我将简单的Convert.java文件添加到Java Resources / src(这将是我的Web服务)

package wtp;
public class Convert {
      public float celsiusToFarenheit ( float celsius )
      {
        return (celsius * 9 / 5) + 32;
      }  
      public float farenheitToCelsius ( float farenheit )
      {
        return (farenheit - 32) * 5 / 9;
      }
}

5)右键单击Convert.java文件> Web服务>创建Web服务。 我会在顶部的滑块上选择Start Service,然后单击NEXT
6)Next Window将向我展示我的两个方法celsiusToFarenheit和farenheitToCelsius。他们都被检查。我会点击下一步
7)消息将显示它正在尝试将服务发布到Tomcat,并且会出现错误:
IWAB0489E将Web服务部署到Axis运行时时出错   axis-admin失败并显示{http://schemas.xmlsoap.org/soap/envelope/}Client无法找到端点引用(EPR)http://localhost:8080/MyService/services/AdminService

的服务

我的问题:

1)我该如何解决这个问题?我究竟做错了什么?或者可以在这几个步骤中做错什么?试图在Axis2网站上寻求帮助,但在那里找不到任何有用的东西。

2)点击创建新服务时实际发生了什么?

3)我来自.NET世界,您可以在其中编写方法,将其声明为Web服务,并在服务器上上传文件.....并且您已完成。是否有可能在Java中发布类似的Web服务?我真的很讨厌在Eclipse中使用任何类型的向导,因为大多数时候它们都不起作用。总是缺少一些东西,我最终失去了谷歌搜索....

谢谢,

感谢任何帮助。

3 个答案:

答案 0 :(得分:8)

以下是解决方案。

  

要解决这个问题,我必须将服务器运行时更​​改为Axis2(Eclipse应该在添加Axis2方面时向您发出警告,但事实并非如此)。通过转到窗口菜单,选择首选项> Web服务>服务器和运行时。选择你的服务器(在我的例子中是Tomcat 5.5),然后选择Apache Axis2作为web服务运行时。

您可以在http://www.psuedoguru.com/roller/page/psuedoblog?entry=problems_with_wsdl_first_web

找到解决方案

答案 1 :(得分:2)

这是因为在Web服务运行时的上一页值(默认)“到Apache Axis。

点击“返回”按钮,将选项更改为“ Apache Axis2 ”,您就可以了。

答案 2 :(得分:0)

为了澄清Bhanwra亲王写的更多内容,你必须做的是: - 选择你的java文件 - 右键单击​​并选择“新建/其他/ Web服务”,然后单击“下一步” - 在下一页上,查看配置。确保您使用的是Apache Axis2。在我的情况下,我有相同的错误,它显示Web服务运行时:Apache Axis。您只需单击它以选择Axis2。

在此页面上,您将拥有屏幕以及有关如何创建客户端以进行测试的更多信息。 http://www.eclipse.org/webtools/community/tutorials/BottomUpAxis2WebService/bu_tutorial.html