在Eclipse中创建一个简单的JAX-WS WebService
我正在尝试在Eclipse中创建一个简单的Web服务。首先,我创建了一个空的Java项目,并将以下三个文件添加到src文件夹中
- Greeting.java
package com.alfaisaliah; import javax.jws.WebService;
import javax.jws.WebMethod;
@WebService
public interface Greeting {
@WebMethod
String sayHello(String name);
}
- GreetingImp.java
package com.alfaisaliah; import javax.jws.WebService;
@WebService(endpointInterface="com.alfaisaliah.Greeting")
public class GreetingImp implements Greeting {
@Override
public String sayHello(String name) {
return "Hello " + name;
}
}
- WSPublisher
package com.alfaisaliah; import javax.xml.ws.Endpoint;
public class WSPublisher {
public static void main(String[] args){
Endpoint.publish("http://localhost:8081/WS/Greeting", new GreetingImp());
}
}
我正在遵循的教程未指定任何服务器来运行Web服务!我想知道是否需要指定任何服务器。我已经有了Tomcat
v5.5,但在此示例中未使用它。每当我将这个项目作为Java项目运行时,都会出现某种错误。任何人都可以帮助我确定我的问题试图在哪里运行Web服务。这是eclipse控制台的输出
Feb 26, 2012 12:01:00 PM com.sun.xml.internal.ws.model.RuntimeModeler getRequestWrapperClassINFO: Dynamically creating request wrapper Class com.alfaisaliah.jaxws.SayHello
Feb 26, 2012 12:01:00 PM com.sun.xml.internal.ws.model.RuntimeModeler getResponseWrapperClass
INFO: Dynamically creating response wrapper bean Class com.alfaisaliah.jaxws.SayHelloResponse
另外,当我再次运行该项目时,它说该地址已被使用
Feb 26, 2012 12:01:00 PM com.sun.xml.internal.ws.model.RuntimeModeler getRequestWrapperClassINFO: Dynamically creating request wrapper Class com.alfaisaliah.jaxws.SayHello
Feb 26, 2012 12:01:00 PM com.sun.xml.internal.ws.model.RuntimeModeler getResponseWrapperClass
INFO: Dynamically creating response wrapper bean Class com.alfaisaliah.jaxws.SayHelloResponse
Exception in thread "main" com.sun.xml.internal.ws.server.ServerRtException: Server Runtime Error: java.net.BindException: Address already in use
谢谢您的帮助:)
回答:
检查此链接,
http://www.myeclipseide.com/documentation/quickstarts/webservices_jaxws/
上面的链接提供了生成Web服务服务器和客户端的分步详细信息。
您从POJO开始,不需要任何注释,在Tomcat服务器上部署后,JAX-WS运行时将负责。
以上是 在Eclipse中创建一个简单的JAX-WS WebService 的全部内容, 来源链接: utcz.com/qa/411756.html