一.服务器的建立
1.创建服务接口
我们常听说的 SEI(server endpoint intelface) 就是这的这个服务的接口
package webservice.wb01;
import javax.jws.WebService;
@WebService
public interface IMyserver {
public int add(int a, int b);
public int minus(int a,int b);
}
2.创建服务的实现类 SIB(server implements bean)
package webservice.wb01;
import javax.jws.WebService;
@WebService(endpointInterface="webservice.wb01.IMyserver" )
public class MyserverImpl implements IMyserver {
public int add(int a, int b) {
System. out.println("add" );
return a+b;
}
public int minus(int a, int b) {
System. out.println("minus" );
return a-b;
};
}
3.发布服务
package webservice.wb01;
import javax.xml.ws.Endpoint;
public class Test {
public static void main(String[] args) {
String address= "http://localhost:9090/ns";
Endpoint. publish(address, new MyserverImpl());
}
}
。
在浏览器中访问http://localhost:9090/ns?wsdl 就可以看的服务运行的情况
<!-- Published by JAX-WS RI at http://jax-ws.dev.java.net. RI's version is JAX-WS RI 2.1.6 in JDK 6. --><!-- Generated by JAX-WS RI at http://jax-ws.dev.java.net. RI's version is JAX-WS RI 2.1.6 in JDK 6. -->
<definitions targetNamespace= "http://wb01.webservice/" name="MyserverImplService" >
<types>
<xsd:schema>
<xsd:import namespace= "http://wb01.webservice/" schemaLocation="http://localhost:9090/ns?xsd=1" />
</xsd:schema>
</types>
<message name= "minus">
<part name= "parameters" element= "tns:minus" />
</message>
<message name= "minusResponse">
<part name= "parameters" element= "tns:minusResponse" />
</message>
<message name= "add">
<part name= "parameters" element= "tns:add" />
</message>
<message name= "addResponse">
<part name= "parameters" element= "tns:addResponse" />
</message>
<portType name= "IMyserver">
<operation name= "minus">
<input message= "tns:minus"/>
<output message= "tns:minusResponse"/>
</operation>
<operation name= "add">
<input message= "tns:add"/>
<output message= "tns:addResponse"/>
</operation>
</portType>
<binding name= "MyserverImplPortBinding" type= "tns:IMyserver" >
<soap:binding transport= "http://schemas.xmlsoap.org/soap/http" style="document" />
<operation name= "minus">
<soap:operation soapAction= ""/>
<input>
<soap:body use= "literal"/>
</input>
<output>
<soap:body use= "literal"/>
</output>
</operation>
<operation name= "add">
<soap:operation soapAction= ""/>
<input>
<soap:body use= "literal"/>
</input>
<output>
<soap:body use= "literal"/>
</output>
</operation>
</binding>
<service name= "MyserverImplService">
<port name= "MyserverImplPort" binding= "tns:MyserverImplPortBinding" >
<soap:address location= "http://localhost:9090/ns"/>
</port>
</service>
</definitions>
二。创建客户端
package webservice.wb01;
import java.net.URL;
import javax.xml.namespace.QName;
import javax.xml.ws.Service;
public class ClientTest {
public static void main(String[] args) {
try {
URL url= new URL("http://localhost:9090/ns" );
/***********************************************************
<definitions targetNamespace="http://wb01.webservice/" name="MyserverImplService">
QName中的第一个参数为wsdl中 targetNamespace的值,第二个参数为:name的值
***** ***********************************************/
QName qname= new QName("http://wb01.webservice/" , "MyserverImplService" );
Service service=Service. create(url, qname);
IMyserver iMyserver= service.getPort(IMyserver. class );
System. out .println("1+2= " + iMyserver.add(1, 2));
System. out .println("5-2= " + iMyserver.minus(5, 2));
} catch (Exception e) {
e.printStackTrace();
}
}
}
分享到:
相关推荐
在本场景中,"开发基于JWS的webservice并通过jun-jaxws发布所需的jar包"指的是利用Java API for XML Web Services (JAX-WS) 的一个实现——Sun JAX-WS(也称为Metro)来创建、部署和运行Web服务。Sun JAX-WS是Oracle...
例如,通过`@WebService`注解一个Java类,就可以将其转换为一个可发布的Web服务。 2. **JAXB**: Java Architecture for XML Binding (JAXB) 提供了将Java对象与XML文档之间进行自动转换的功能。在JWS中,JAXB用于...
在这个场景中,"jws-webservice 的发布"指的是利用JWS技术来发布一个Web服务,使得其他应用程序可以通过网络调用这个服务的功能。我们将深入探讨服务端和客户端的实现过程。 1. **服务端发布** - **JWS服务端的...
2. **实现服务接口**:接着,创建一个实现该接口的类,这个类是服务的实际实现。在Spring中,我们可以使用@Component注解将这个类标记为Spring Bean。 3. **JAX-WS配置**:JWS通常使用Java API for XML Web ...
在同一个包下创建一个实现类,如"WebServiceImpl",并实现接口中的方法: ```java import javax.jws.WebService; @WebService(endpointInterface = "com.IWebService") public class WebServiceImpl implements ...
下面是一个简单的 WebService DEMO,演示如何使用 Java 语言创建一个 WebService,使用 SoapUI 工具测试该 WebService。 首先,创建一个 Java 类 `HelloWorld`,使用 `@WebService` 注解标注该类: ```java import ...
【标题】"my-webservice:my-webservice 是一个基于Java的网络服务项目,它利用了javax.jws包来实现Web服务的功能。这个服务提供了一个URL,使得用户可以通过网络调用其功能。" 【描述】"my-webservice项目是构建在...
使用JAX-WS(JWS)发布WebService 使用myeclipse开发java的webservice的两种方式 方式一: (此方式只能作为调试,有以下bug:jdk1.6u17?以下编译器不支持以Endpoint.publish方式发布document方式的soap,必须在...
SOAP是用于交换结构化信息的协议,而WSDL则是一个XML格式的文档,用于描述Web服务及其接口。 **1. 创建Web服务** 在Java中,我们通常使用Java API for XML Web Services (JAX-WS) 来创建和消费Web服务。以下是一般...
4. UDDI:UDDI(通用描述、发现与集成)是一个基于 XML 的协议,用于发布和查找 WebService。服务提供者可以将他们的 WebService 注册到 UDDI 注册中心,以便其他开发者可以搜索并使用这些服务。 现在,让我们来看...
内容概要:基于jws发布webservice服务,包括服务端、客户端示例代码 适用人群:webservice开发人员 文档说明:https://blog.csdn.net/huryer/article/details/124702107?spm=1001.2014.3001.5501
本篇将深入讲解如何基于JAX-WS开发一个WebService实例。 首先,让我们了解JAX-WS的基本概念。JAX-WS提供了一种简单的方式来创建SOAP(Simple Object Access Protocol)Web服务,它集成了Java SE和Java EE平台,使得...
- **实现服务接口**:创建一个实现了服务接口的类,这个类通常包含实际的服务逻辑。 - **发布服务**:使用`Endpoint`类的`publish`方法发布服务,指定服务的终结点地址。 3. **生成WSDL(Web Service Description...
然后,创建一个实现此接口的类,使用WebServiceTemplate进行实际的Web Service调用。 ```java public interface YourWebService { YourResponseType callYourService(YourRequestType request); } @Service ...
在"基于JWS写的词语相似度比较算法"这部分,我们能理解到这个项目包含了使用JWS技术实现的算法,用于计算两个词语之间的相似度。这通常涉及到NLP中的词汇语义理解,可能使用了WordNet的词汇关系来计算相似度,比如...
本篇将详细介绍如何在Java 6环境中实现一个超级简单的WebService服务器和客户端。 **一、WebService基础知识** WebService是一种基于XML的网络通信协议,它通过SOAP(Simple Object Access Protocol)消息进行数据...
这是基于Java的XML Web Service (JAX-WS)规范,我们可以创建一个Java接口,使用`@WebService`注解标记: ```java import javax.jws.WebService; @WebService public interface HelloWorld { String sayHello...