简单的Web服务示例tomEE无法正常工作

时间:2012-08-07 21:17:55

标签: java android sockets soap proxy

我正在尝试从tomEE部署简单的WS示例: http://openejb.apache.org/examples-trunk/simple-webservice/

由于没有什么特别之处,我会详细说明我的所作所为。也许有人看到我做错了什么:

机器:Win7,Eclipse,服务器:tomEE +

- 创建了具有运行时目标的新动态Web项目= tomcat tomEE服务器

在/ src中创建了新的包,并在那里添加了3个类:CalculatorCalculatorWSCalculatorTest

-rightclick项目>以>运行在服务器上运行>选择tomEE。

服务器启动,启动http://127.0.0.1:8080/testproject

这导致404,因为我没有设置任何jsf页面。 无论如何,如示例所示,转到http://localhost:8080/testproject/Calculator?wsdlhttp://localhost:8080/testproject/webservices/Calculator?wsdl,我也找不到404。显然没有部署Web服务?

这个基本而简单的例子可能有什么问题?

2 个答案:

答案 0 :(得分:4)

我正在使用eclipse indigo和tomee 1.5.2。我有一个类x.y.z.MyWS。它使用@WebService和@Stateless进行注释。

启动期间的apache tomee日志说

INFO: Webservice(wsdl=http://localhost:8080/MyWebApp/webservices/MyWS, qname={http://z.y.x/}MyWSService) --> Ejb(id=MyWS)

所以WSDL是

http://localhost:8080/MyWebApp/webservices/MyWS?wsdl

请检查您的日志。

答案 1 :(得分:0)

前几天我运行了这个例子,遇到了类似的问题。解决方案实际上是查看日志的catalina日志的Apache Logs文件夹,以及今天日期的stderr文件。他们会告诉您部署是否有效。

就我而言,我使用的是JDEV,因此我删除了@Stateless注释,并尝试将.jar放入webapps文件夹中。 没有工作。然而,把它放回去,放下.jar就可以了。

作为Web应用程序(.war),.class文件被移动到.war文件中的WEB-INF \ classes中,然后将其放入webapps中。我查看了Catalina Log,它说端点在哪里(对于wsdl)。我键入: http://localhost:8080/SimpleWebService/Calculator?wsdl,并出现了WSDL文件。

之后,我用肥皂ui运行了一些简单的Soap Requests。它工作正常。这是1.7.1版本。