0 0

使用CXF生成的WSDL,如何才能带ws-security5

如题。

 

由于项目需求,服务端使用CXF建一个WebService,但客户端是C#与PHP的。

 

由于C#或者PHP都通过WSDL文件,来反射生成调用代码,因此要求在生成的WSDL中带WS-SECURITY的信息。但CXF默认生成的都没带该部分信息。

 

google一天了,都没有看到怎么做的例子。

 

请问这里有人知道吗?

 

我希望生成的WDSL如:http://lists.w3.org/Archives/Public/www-ws-desc/2005Jan/att-0094/soap-header-blocks.html

 

 

<?xml version="1.0"?>
<wsdl:description name="StockQuote" 
  xmlns:wsdl="http://www.w3.org/@@@@/@@/wsdl"
  targetNamespace="http://example.com/stockquote"
  xmlns:tns="http://example.com/stockquote"
  xmlns:wsoap="http://www.w3.org/@@@@/@@/wsdl/soap"
  xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
     
  <wsdl:types>
    <xs:schema targetNamespace="http://example.com/stockquote"
      xmlns:xs="http://www.w3.org/2001/XMLSchema" 
      elementFormDefault="qualified">
      <xs:import
        namespace="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
        schemaLocation="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"/>
      <xs:element name="TradePriceRequest">
        <xs:complexType>
          <xs:all>
            <xs:element name="tickerSymbol" type="xs:string"/>
          </xs:all>
        </xs:complexType>
      </xs:element>
      <xs:element name="TradePrice">
        <xs:complexType>
          <xs:all>
            <xs:element name="price" type="xs:float"/>
          </xs:all>
        </xs:complexType>
      </xs:element>
      <xs:complexType name="myHeaders">
        <xs:sequence>
         <xs:element ref="wsse:Security" 
               wsoap:mustUnderstand="true"/>
         <xs:element name="isGoldClubMember" 
               type="xs:boolean" wsoap:mustUnderstand="true"/>
         <xs:element name="promotionalCode" 
               type="xs:string" minOccurs="0"/>
        </xs:sequence>
      </xs:complexType>
    </xs:schema>
  </wsdl:types>
  
  <wsdl:interface name="StockQuoteInterface">
    <wsdl:operation name="GetLastTradePrice" 
      pattern="http://www.w3.org/@@@@/@@/wsdl/in-out">
      <wsdl:input element="tns:GetLastTradePriceInput"/>
      <wsdl:output element="tns:GetLastTradePriceOutput"/>
    </wsdl:operation>
  </wsdl:interface>
  
  <wsdl:binding name="StockQuoteSoapBinding" interface="tns:StockQuoteInterface"
    type="http://www.w3.org/@@@@/@@/wsdl/soap" 
    wsoap:protocol="http://www.w3.org/2003/05/soap/bindings/HTTP/">
    <wsdl:operation ref="tns:GetLastTradePrice" 
      wsoap:action="http://example.com/GetLastTradePrice">
        <wsdl:input wsoap:headerDescription="tns:myHeaders"/>
        <wsdl:output wsoap:headerDescription="tns:myHeaders"/>
    </wsdl:operation>
  </wsdl:binding>
  
  <wsdl:service name="StockQuoteService" interface="tns:StockQuoteInterface">
    <wsdl:documentation>My first service</wsdl:documentation>
    <wsdl:endpoint name="StockQuoteEndPoint" binding="tns:StockQuoteBinding" 
    address="http://example.com/endpoint/stockquote"/>
  </wsdl:service>
  
</wsdl:description>
2012年10月29日 17:57
目前还没有答案

相关推荐

    纯java调用ws-security+CXF实现的webservice安全接口

    本文将深入探讨如何使用CXF框架结合ws-security标准来实现对Java客户端调用Web服务的安全接口。CXF是一个开源的服务框架,它允许开发人员创建和消费各种Web服务,而ws-security(Web Services Security)则是用于...

    ws-security 和wss4j的jar包

    2. **wss4j-ws-security-dom.jar**:DOM(Document Object Model)版本的WS-Security实现,用于处理基于DOM的XML消息。 3. **wss4j-ws-security-stax.jar**:STAX(Streaming API for XML)版本的实现,适用于处理...

    cxf+ws-security-JAR

    2. **创建Web服务**:编写服务接口和服务实现,然后使用CXF的工具生成对应的WSDL和服务端点。 3. **客户端配置**:在客户端,同样需要配置WS-Security,提供用户名和密码,以进行安全调用。 4. **处理安全令牌**:...

    CXF WS-Security WSS4J 例子

    这表明示例包含一个CXF客户端,该客户端会向服务端发送带有WS-Security头信息的请求。在实际操作中,可能需要根据示例代码和配置调整客户端的路径,确保其指向正确的服务地址。 5. **关闭第一个控制台**:运行示例...

    cxfWebservice客户端全部jar包及极简调用方法.rar

    udp-3.0.11.jar,cxf-rt-wsdl-3.0.0.jar,cxf-rt-ws-security-3.0.0.jar,neethi-3.0.3.jar,slf4j-api-1.7.7.jar,stax2-api-3.1.4.jar,woodstox-core-asl-4.4.1.jar,wsdl4j-1.6.3.jar,wss4j-bindings-2.0.9.jar,xml...

    CXF开发所需jar包

    CXF提供了全面的WS-*(Web Services)标准支持,包括SOAP、WSDL、WS-Security等,同时也支持RESTful API的开发。在进行CXF开发时,依赖的一系列jar包是不可或缺的,它们包含了CXF运行所需的类库和组件。 1. **CXF的...

    apache-cxf-3.1.6.zip官网完整包

    4. **互操作性**:由于CXF实现了多种Web服务标准,如WSDL 2.0、WS-I BP 1.1、WS-Security等,它能够很好地与各种其他Web服务实现进行交互。 5. **Spring集成**:在描述中提到,此版本包含Spring包,意味着它能够与...

    apache-cxf-3.1.1跟3.1.6所有jar包

    - **cxf-rt-ws-security.jar**:包含WS-Security相关的类和接口。 此外,还有其他如`cxf-rt-bindings-soap.jar`、`cxf-rt-databinding-jaxb.jar`、`cxf-rt-rs-extension-providers.jar`等,它们分别对应于不同的...

    apache-cxf-3.5.0.zip

    - **JAX-WS**: CXF支持Java API for XML Web Services,允许开发者通过Java注解或XML描述来定义服务接口和服务实现,然后CXF会自动生成相应的WSDL文件。 - **JAX-RS**: 对于RESTful服务,CXF提供了JAX-RS实现,...

    apache-cxf-2.2.4

    6. **安全特性**:CXF集成了多种安全机制,包括基本认证、 Digest 认证、WS-Security(如WS-SecureConversation和WS-Trust),以确保Web服务的安全性。 7. **扩展性**:CXF的模块化设计使其易于扩展,用户可以根据...

    apache-cxf-3.1.8.zip

    开发者可以使用CXF生成WSDL文档,或者从WSDL逆向工程服务端点。 3. **RESTful API开发**:CXF通过JAX-RS支持RESTful API的开发,允许使用注解来定义HTTP操作(如GET、POST等)和资源路径。这使得RESTful服务的开发...

    apache-cxf-3.1.6所有jar包

    2. **协议栈**:CXF提供了对各种Web服务标准的实现,包括SOAP 1.1/1.2、WS-Security、WS-Policy、WS-Addressing等。这些协议使得Web服务能够安全、可靠地进行通信。 3. **数据绑定**:CXF支持XML到Java对象的映射,...

    apache-cxf-2.3.5-src.zip

    3. **互操作性**:由于CXF实现了多种Web服务标准,如WSDL、XSD、WS-I、WS-Security等,它具有良好的与其他Web服务系统交互的能力,有助于实现跨平台、跨语言的互操作性。 4. **模块化设计**:CXF由多个模块组成,...

    apache-cxf-2.7.7.zip

    4. **WS-*规范支持**:CXF实现了诸如WS-Security、WS-Addressing、WS-ReliableMessaging等一系列WS-*规范,增强了Web服务的安全性和可靠性。 5. **插件架构**:CXF的插件架构允许开发者轻松地扩展其功能,比如添加...

    最新版CXF的jar包

    1. **全面的Web服务支持**:CXF支持多种Web服务标准,如SOAP 1.1/1.2、WSDL(Web Services Description Language)、WS-I Basic Profile、WS-Security等,使得开发符合标准的Web服务变得更加便捷。 2. **RESTful...

    cxf 3.1.1 jar包

    8. **cxf-rt-ws-security.jar**: 包含了WS-Security和其他安全相关的实现,用于Web服务的安全认证和加密。 9. **cxf-tools-common.jar** 和 **cxf-tools-wsdlto-core.jar** 等工具类库,用于生成服务端和客户端代码...

    WebService CXF --- 由WSDL文件开发Client端

    - **安全性**:CXF支持各种安全机制,如SSL/TLS加密、WS-Security(WS-SecurityPolicy)等,确保通信的安全性。 - **数据绑定**:CXF支持JAXB(Java Architecture for XML Binding),自动将XML数据转换为Java对象,...

    利用CXF的wsdl2java来建立Web Service.

    本文将深入探讨如何利用CXF的`wsdl2java`工具从WSDL(Web Services Description Language)文件生成Java客户端和服务端代码,从而快速构建Web服务。 首先,我们需要理解WSDL。WSDL是一种XML格式的规范,它定义了Web...

    基于CXF的webService本地数据交互----PC端与Android端(二)

    3. 使用CXF生成服务端点:通过CXF的wsdl2java工具,我们可以从接口生成WSDL(Web Service Definition Language)文件,然后基于此生成服务端点类。 4. 部署服务:将服务部署到应用服务器,例如Tomcat,使它可以通过...

Global site tag (gtag.js) - Google Analytics