1.引入插件过程中,提示miss jar的问题,换中心仓库的地址解决了
settings.xml中将中心仓库的地址改为http://uk.maven.org/maven2
2.基于契约优先的方式,wsdl中的schema如果引用外部的xsd文件,客户端使用wsimport导出会出现问题,提示找不到xsd文件
将xsd中定义的元素拷贝到wsdl中,不要单独定义
schema
<?xml version="1.0" encoding="UTF-8"?> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://ws.student.hqh.com" xmlns:tns="http://ws.student.hqh.com" elementFormDefault="qualified"> <xsd:element name="getStudent" type="tns:getStudent" /> <xsd:element name="getStudentResponse" type="tns:getStudentResponse" /> <xsd:element name="list" type="tns:list" /> <xsd:element name="listResponse" type="tns:listResponse" /> <xsd:element name="listReward" type="tns:listReward" /> <xsd:element name="listRewardResponse" type="tns:listRewardResponse" /> <xsd:complexType name="student"> <xsd:sequence> <xsd:element name="id" type="xsd:int" /> <xsd:element name="name" type="xsd:string" /> <xsd:element name="sex" type="xsd:string" /> <xsd:element name="age" type="xsd:int" /> <xsd:element name="number" type="xsd:string" /> </xsd:sequence> </xsd:complexType> <xsd:complexType name="reward"> <xsd:sequence> <xsd:element name="id" type="xsd:int" /> <xsd:element name="year" type="xsd:string" /> <xsd:element name="rewardInfo" type="xsd:string" /> <xsd:element name="detail" type="xsd:string" /> <xsd:element name="student" type="tns:student" /> </xsd:sequence> </xsd:complexType> <xsd:complexType name="getStudent"> <xsd:sequence> <xsd:element name="number" type="xsd:string" /> </xsd:sequence> </xsd:complexType> <xsd:complexType name="getStudentResponse"> <xsd:sequence> <xsd:element name="stu" type="tns:student" /> </xsd:sequence> </xsd:complexType> <xsd:complexType name="list"> <xsd:sequence /> </xsd:complexType> <xsd:complexType name="listResponse"> <xsd:sequence minOccurs="1" maxOccurs="unbounded"> <xsd:element name="students" type="tns:student" /> </xsd:sequence> </xsd:complexType> <xsd:complexType name="listReward"> <xsd:sequence> <xsd:element name="number" type="xsd:string" /> <xsd:element name="date" type="xsd:date" /> </xsd:sequence> </xsd:complexType> <xsd:complexType name="listRewardResponse"> <xsd:sequence minOccurs="1" maxOccurs="unbounded"> <xsd:element name="rewards" type="tns:reward" /> </xsd:sequence> </xsd:complexType> </xsd:schema>
wsdl
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://ws.student.hqh.com" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="StudentWSService" targetNamespace="http://ws.student.hqh.com"> <!-- 指定schema --> <wsdl:types> <xsd:schema targetNamespace="http://ws.student.hqh.com"> <!-- <xsd:import schemaLocation="student.xsd" namespace="http://ws.student.hqh.com"/> --> <xsd:element name="getStudent" type="tns:getStudent" /> <xsd:element name="getStudentResponse" type="tns:getStudentResponse" /> <xsd:element name="list" type="tns:list" /> <xsd:element name="listResponse" type="tns:listResponse" /> <xsd:element name="listReward" type="tns:listReward" /> <xsd:element name="listRewardResponse" type="tns:listRewardResponse" /> <xsd:complexType name="student"> <xsd:sequence> <xsd:element name="id" type="xsd:int" /> <xsd:element name="name" type="xsd:string" /> <xsd:element name="sex" type="xsd:string" /> <xsd:element name="age" type="xsd:int" /> <xsd:element name="number" type="xsd:string" /> </xsd:sequence> </xsd:complexType> <xsd:complexType name="reward"> <xsd:sequence> <xsd:element name="id" type="xsd:int" /> <xsd:element name="year" type="xsd:string" /> <xsd:element name="rewardInfo" type="xsd:string" /> <xsd:element name="detail" type="xsd:string" /> <xsd:element name="student" type="tns:student" /> </xsd:sequence> </xsd:complexType> <xsd:complexType name="getStudent"> <xsd:sequence> <xsd:element name="number" type="xsd:string" /> </xsd:sequence> </xsd:complexType> <xsd:complexType name="getStudentResponse"> <xsd:sequence> <xsd:element name="stu" type="tns:student" /> </xsd:sequence> </xsd:complexType> <xsd:complexType name="list"> <xsd:sequence /> </xsd:complexType> <xsd:complexType name="listResponse"> <xsd:sequence minOccurs="1" maxOccurs="unbounded"> <xsd:element name="students" type="tns:student" /> </xsd:sequence> </xsd:complexType> <xsd:complexType name="listReward"> <xsd:sequence> <xsd:element name="number" type="xsd:string" /> <xsd:element name="year" type="xsd:string" /> </xsd:sequence> </xsd:complexType> <xsd:complexType name="listRewardResponse"> <xsd:sequence minOccurs="1" maxOccurs="unbounded"> <xsd:element name="rewards" type="tns:reward" /> </xsd:sequence> </xsd:complexType> </xsd:schema> </wsdl:types> <!-- 指定方法 --> <wsdl:message name="getStudent"> <wsdl:part element="tns:getStudent" name="parameters" /> </wsdl:message> <wsdl:message name="getStudentResponse"> <wsdl:part element="tns:getStudentResponse" name="parameters" /> </wsdl:message> <wsdl:message name="list"> <wsdl:part element="tns:list" name="parameters" /> </wsdl:message> <wsdl:message name="listResponse"> <wsdl:part element="tns:listResponse" name="parameters" /> </wsdl:message> <wsdl:message name="listReward"> <wsdl:part element="tns:listReward" name="parameters" /> </wsdl:message> <wsdl:message name="listRewardResponse"> <wsdl:part element="tns:listRewardResponse" name="parameters" /> </wsdl:message> <!-- 指定接口 --> <wsdl:portType name="IStudentWSService"> <wsdl:operation name="getStudent"> <wsdl:input message="tns:getStudent" /> <wsdl:output message="tns:getStudentResponse" /> </wsdl:operation> <wsdl:operation name="list"> <wsdl:input message="tns:list" /> <wsdl:output message="tns:listResponse" /> </wsdl:operation> <wsdl:operation name="listReward"> <wsdl:input message="tns:listReward" /> <wsdl:output message="tns:listRewardResponse" /> </wsdl:operation> </wsdl:portType> <!-- 指定接口中的方法的参数编码格式 --> <wsdl:binding name="studentSOAP" type="tns:IStudentWSService"> <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" /> <wsdl:operation name="getStudent"> <wsdl:input> <soap:body use="literal" /> </wsdl:input> <wsdl:output> <soap:body use="literal" /> </wsdl:output> </wsdl:operation> <wsdl:operation name="list"> <wsdl:input> <soap:body use="literal" /> </wsdl:input> <wsdl:output> <soap:body use="literal" /> </wsdl:output> </wsdl:operation> <wsdl:operation name="listReward"> <wsdl:input> <soap:body use="literal" /> </wsdl:input> <wsdl:output> <soap:body use="literal" /> </wsdl:output> </wsdl:operation> </wsdl:binding> <!-- 指定服务名称、端口、地址 --> <wsdl:service name="StudentWSService"> <wsdl:port binding="tns:studentSOAP" name="studentServicePort"> <soap:address location="http://localhost:8080/stu/ws/" /> </wsdl:port> </wsdl:service> </wsdl:definitions>
安装插件
相关推荐
开发者可以使用诸如Apache CXF、Metro等开源框架来支持JAX-WS的开发,这些框架提供了更多的功能,如WS-Security、WS-Policy等扩展,同时简化了开发过程。 8. **示例** 在提供的链接...
【标题】"metro-jax-ws-jaxws221x.zip" 提供的是一个关于JAX-WS(Java API for XML Web Services)的开发示例,其中包含了JAX-WS 2.2.1版本的相关组件和库文件。这个压缩包是针对Java开发者设计的,用于帮助他们理解...
在本文中,我们将深入探讨如何使用JAX-WS(Java API for XML Web Services)与Spring框架集成来实现一个Web服务示例。这个示例将帮助我们理解如何在Spring环境中创建、配置和部署JAX-WS服务,同时利用Spring的依赖...
【Java WebService Jax-WS 创建】是Java中创建Web服务的一种常见方式,主要用于构建基于SOAP(Simple Object Access Protocol)的Web服务。JAX-WS(Java API for XML Web Services)是Java EE 5及更高版本中提供的...
JAX-WS发布webservice例子,基于http://blog.csdn.net/yy_love_my/article/details/44938329所说的做的一个简单且能运行的列子,基于maven工程,如果使用servlet发布方式,执行命令:mvn tomcat7:run
在提供的文件中,"jax-ws-webService创建soap类型的webservice.docx"应该包含了详细的JAX-WS SOAP Web服务创建过程,而"使用jax-rs创建restful类型的webservice接口.docx"则详细阐述了JAX-RS RESTful Web服务的实现...
总结:本文主要介绍了如何在 MyEclipse 6.5 中使用 JAX-WS 框架创建和部署一个简单的 Web 服务项目,包括创建 Web Service Project、编写服务类、使用 Web Service Explorer 进行测试,以及处理可能出现的问题。...
此项目类型支持 Maven 集成,允许用户构建符合 Java EE 5 规范的项目,这为 JAX-WS 的使用提供了基础。 3. 创建 Web Service: 在 MyEclipse 中,创建 Web Service 需要遵循以下步骤: - 新建 Web Service Project...
这篇博客文章“上传一个基于Jax-ws的WebService”可能详细介绍了如何使用JAX-WS技术构建和发布一个Web服务。虽然具体的描述为空,但我们可以根据标题推测,作者可能涵盖了以下几个关键步骤: 1. **环境准备**:首先...
3. 配置Web服务:然后,使用JAX-WS的注解(如`@WebService`)来标记服务接口和实现类,并在Spring配置文件中声明一个`JaxWsServerFactoryBean`,指定服务接口和端点地址,例如: ```xml <bean id="webService...
1. **确认JAX-WS库的版本**:确保你使用的是与应用服务器兼容的JAX-WS版本。在这个例子中,"JAX-WS 2.2 完整jar包"可能包含了所有必要的组件,包括`...
JAX-WS是Java EE的一部分,但也可以在Java SE环境中使用。 ### 1. JAX-WS概述 JAX-WS取代了早期的JAX-RPC(Java API for XML-based Remote Procedure Calls),它提供了更现代、更面向对象的API,与WSDL(Web ...
maven 下载jaxws-rt 2.1.4 jar 失败了 其中包含包 com.sun.org.apache.xml.internal resolver 20050927 com.sun.xml.bind jaxb-impl 2.1.7 com.sun.xml.messaging.saaj saaj-impl 1.3.1 ...javax.xml.ws jaxws-api 2.1 ...
1. **API文档**:详细解释了JAX-WS 2.1的各种类、接口和方法,是开发者理解和使用JAX-WS的重要参考资料。 2. **示例代码**:提供了一些示例应用或测试用例,帮助开发者了解如何创建、调用和部署Web服务。 3. **库...
4. **Web服务配置**:如果项目包含Web服务,需要在Spring配置中设置WebServiceTemplate或配置JAX-WS相关组件。 5. **Spring MVC配置**:创建DispatcherServlet的配置,定义URL映射、视图解析器和处理器映射。 6. **...
Java JAX-WS 提供了一种高效且灵活的方式来创建和使用Web服务。它包括以下几个核心组件: 1. **Service Endpoint Interface (SEI)**:定义服务的公共接口,这是客户端与服务交互的起点。 2. **WSDL (Web Services ...
在本项目中,可能是通过JAX-WS或者CXF等实现。开发者可以创建SOAP(Simple Object Access Protocol)服务,对外提供API,允许其他系统调用,实现跨平台的数据交换。Spring框架也提供了对WebService的支持,可以方便...
本参考手册主要关注 SOAP 服务的开发,涵盖了使用 JAX-WS 注解从 Java 创建服务、从 WSDL 生成服务,以及 JAX-WS 提供者和服务发布等关键点。 1. **JAX-WS 注解服务从 Java 开发** JAX-WS 提供了一系列注解,允许...
JAX-WS(Java API for XML Web Services)是Java平台中定义WebService的一组标准,它是对早期JAX-RPC的改进和发展。JAX-WS在JDK 1.6中成为标准的一部分,其版本号为2.1。JAX-WS的一个重要特点是支持更为现代的WS-I...
3. **定义Web服务接口**:使用Java编程语言定义Web服务的接口,这些接口通常继承自JAX-WS或JAX-RS的接口,如`javax.jws.WebService`或`javax.ws.rs.GET`。 4. **实现Web服务**:创建接口的实现类,实现服务的具体...