0 0

关于xfire的问题5

在使用 xfire 编写 webservice 服务端代码(java)的时候,有2个问题一直在困扰着,上网找了半天,也没找到答案,可能是查找的描述不正确吧。

在这里问各位大虾。

配置文件配置如下:

applicationContext.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:util="http://www.springframework.org/schema/util"
	xmlns:p="http://www.springframework.org/schema/p"
	xmlns:aop="http://www.springframework.org/schema/aop"
	xmlns:tx="http://www.springframework.org/schema/tx"
	xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-2.0.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.0.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.0.xsd"
	default-autowire="byName">
	<!-- 数据源 -->
	<bean id="jdbcTemplate"
		class="org.springframework.jdbc.core.JdbcTemplate">
		<property name="dataSource">
			<ref bean="dataSource" />
		</property>
	</bean>
	<!-- DAO配置 -->
	<bean id="dao" class="com.techstar.common.BaseDao">
		<property name="jdbcTemplate" ref="jdbcTemplate" />
	</bean>
	<!-- 事务配置 -->
	<bean id="transactionManager"
		class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
		<property name="dataSource">
			<ref bean="dataSource" />
		</property>
	</bean>

	<!-- xfire配置 -->
	<!-- 需要import下面这个xml文件 -->
	<import resource="classpath:org/codehaus/xfire/spring/xfire.xml" />

	<!-- WebService Impl  WebService接口的实现类-->
	<bean id="userServiceImp" class="com.techstar.service.webserviceDemo.impl.UserServiceImp">
		<property name="userdao" ref="userDao"/>
	</bean>
	<!-- end -->
	
	<bean id="userService"
		class="org.codehaus.xfire.spring.remoting.XFireExporter" parent="baseWebService">
		<!-- WebService的名字 -->
		<property name="xfire" ref="xfire" />
		<property name="serviceBean" ref="userServiceImp" />
		<!-- WebService的实现类bean -->
		<property name="serviceClass"
			value="com.techstar.service.webserviceDemo.service.UserService" />
		<property name="inHandlers">
            <list>
             	<ref bean="domInHandler"/> 
            	<ref bean="addressingHandler"/>
     		</list>
     	</property>
     	<property name="outHandlers">
            <list>
             	<ref bean="domOutHandler"/> 
            	<ref bean="addressingOutHandler"/>
     		</list>
     	</property>
		<!--普通的用户名密码的方式进行WebService的验证-->
	</bean>
		
	<!-- 使用XFire导出器 -->
    <bean id="baseWebService"
        class="org.codehaus.xfire.spring.remoting.XFireExporter"
        lazy-init="false" abstract="true">
        <!-- 引用xfire.xml中定义的工厂 -->
        <property name="serviceFactory" ref="xfire.serviceFactory" />
        <!-- 引用xfire.xml中的xfire实例 -->
        <property name="xfire" ref="xfire" />
    </bean>
    
    <bean id="domInHandler" class="org.codehaus.xfire.util.dom.DOMInHandler"/>   
    <bean id="domOutHandler" class="org.codehaus.xfire.util.dom.DOMOutHandler"/>  
	<bean id="addressingHandler" class="com.techstar.common.interceptor.SoapInHandler">
	    <property name="ipFilter" value="0" />   <!-- 是否对IP进行校验 1:校验 0:不校验 -->
		<property name="ip" value="127.0.0.1;localhost" /> <!-- 允许访问的ip地址,以;隔开 -->
	</bean>
	<bean id="addressingOutHandler" class="com.techstar.common.interceptor.SoapOutHandler"/>
	<tx:annotation-driven transaction-manager="transactionManager"
		proxy-target-class="true" />
</beans>

 

现有如下2个问题请教:

 

1. 怎样在<soapenv:Header></soapenv:Header> 中加上自定义的元素?

服务端wsdl地址是 http://localhost:9002/techstar_application/servlet/XFireServlet/UserService?wsdl

如,我用soapUI连接我的webservice服务端后生成的xml如下

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
          xmlns:ser="http://service.webserviceDemo.service.techstar.com" 
          xmlns:dom="http://domain.webserviceDemo.service.techstar.com">
   <soapenv:Header/>
   <soapenv:Body>
      <ser:addUser>
         <ser:user>
            <!--Optional:-->
            <dom:userAge>?</dom:userAge>
            <!--Optional:-->
            <dom:userId>?</dom:userId>
            <!--Optional:-->
            <dom:userName>?</dom:userName>
            <!--Optional:-->
            <dom:userPassword>?</dom:userPassword>
            <!--Optional:-->
            <dom:userSex>?</dom:userSex>
         </ser:user>
         <ser:reqSeq>?</ser:reqSeq>
      </ser:addUser>
   </soapenv:Body>
</soapenv:Envelope>

 

比如需要在 <soapenv:Header/> 中加入reqTime和reqSequence:

<soapenv:Header>
  <dom:reqTime></dom:reqTim>
  <dom:reqSequence></dom:reqSequence>
</soapenv:Header>

 

2. 在我的webservice服务端程序中,有2个或多个 service,我想将这多个service整合到一个 wsdl 地址中,是否可行?如果可行,应该怎么做?

即,只通过一个wsdl地址,就可以访问不同的 service 接口。

2013年10月18日 13:52

1个答案 按时间排序 按投票排序

0 0

1.指定可以的,我没用过xfire,应该有Element之类的类可以添加属性

2、应该不可以,只能整合到一个service里

2013年10月18日 15:05

相关推荐

    Xfire调用webservice无法传递参数问题

    在本文中,我们将深入探讨Xfire调用Web服务时遇到的参数传递问题以及解决策略。 首先,让我们了解Web服务的基本概念。Web服务基于SOAP(Simple Object Access Protocol)协议,通过HTTP协议进行通信,使得不同的...

    xfire

    压缩包中的"wsbook"可能是xfire相关文档或教程的集合,可能包含了关于xfire的API文档、开发指南、或者是用户手册等内容。这些文档对于想要基于xfire进行二次开发或者了解xfire工作原理的人来说是非常宝贵的资源。 ...

    xfire依赖jar包

    xfire是一个早期流行的开源Web服务框架,主要用于构建SOAP(简单对象访问协议)和RESTful(Representational State Transfer)服务。这个框架使得Java开发者能够轻松地创建、部署和消费Web服务。xfire依赖于一系列的...

    Xfire调用webservice无法接收到参数问题解决

    标题"Xfire调用webservice无法接收到参数问题解决"指出的核心问题是:当使用Xfire作为客户端调用Web服务时,服务端无法正确接收到传递的参数。这可能是由于多种原因引起的,如: 1. **XML序列化与反序列化问题**:...

    xfire-all-1.2.6 xfire所需的全部包

    《Xfire全方位解析:1.2.6版本的全面探讨》 Xfire,这款曾经在游戏社区中广受欢迎的即时通讯软件,以其独特的游戏整合功能和社交特性,为玩家提供了便捷的游戏内通信和社区交流平台。本文将深入探讨Xfire 1.2.6这一...

    Xfire API,Xfire帮助文档

    为了更好地理解和使用Xfire API,开发者可以参考提供的帮助文档,文档中通常会包含API接口的详细说明、示例代码以及常见问题解答。对于初学者,理解每个API方法的功能和参数、以及如何正确构造HTTP请求是非常重要的...

    cxf和xfire的jar包冲突解决

    这个问题在标题“cxf和xfire的jar包冲突解决”中得到了明确指出。 Apache CXF是一个全面的服务开发框架,它支持SOAP、RESTful Web服务,以及多种协议和绑定。而XFire是CXF的前身,也是一个强大的Web服务框架,但它...

    Xfire-v1.99 XFire最高版本

    **XFire v1.99:WebService开发框架详解** XFire,全称为XFire Integration Library,是一个基于Java的开源框架,专门用于构建和部署Web服务。这个“XFire最高版本”指的是XFire项目的最终或最优化的版本,它提供了...

    xfire相关jar包

    进行WebService开发中所用到的xfire所有相关包如:xfire-jsr181-api-1.0-M1.jar、xfire-jaxws-1.2.6.jar、xfire-java5-1.2.6.jar、xfire-core-1.2.6.jar、xfire-annotations-1.2.6.jar、xfire-aegis-1.2.6.jar、...

    xfire-1.2.6.rar xfire-1.2.6.rar xfire-1.2.6.rar

    通过查看源代码,开发者可以深入理解XFire的工作机制,进行定制化开发,解决特定场景下的问题,或优化性能。源代码的开放性也是开源项目的一大优势,促进了技术的交流与进步。 再者,`xfire-distribution-1.2.6.zip...

    XFire创建的WebService

    【XFire创建的WebService】是基于Java平台的开源框架,用于构建和消费Web服务。它在Web服务领域提供了一个轻量级、高性能的选择,尤其适合快速开发。在本例中,我们将探讨如何使用XFire来创建一个简单的WebService...

    xfire https

    以下是关于使用Xfire实现HTTPS调用WebService接口的一些详细步骤和知识点: 1. **环境准备**:首先,你需要安装Java Development Kit (JDK) 和Eclipse IDE。然后,将提供的jar包导入到Eclipse项目的类路径中,这些...

    Xfire的client.zip_Xfire客户端代码_webservice

    在本案例中,"Xfire的client.zip"是一个包含了Xfire客户端代码的压缩包,主要用于调用Web服务。 Xfire客户端代码是实现与Xfire服务器通信的代码库,它可能包含了多种语言的实现,如Java、C#或Python等。这些代码...

    java使用XFire调用webService接口

    "Java 使用 XFire 调用 webService 接口" 在本文中,我们将学习如何使用 XFire 框架在 Java 中调用 webService 接口。XFIRE 是一个基于 Java 的开源框架,用于简化 Web 服务的开发和集成。下面,我们将通过一个简单...

    xfire与cxf包冲突解决方案

    1、以下四个类调用了XmlSchema-1.1.jar包 因与cxf包xmlschema-core-*.jar... xfire-all-1.2.6-incomplete.jar 替换 xfire-all-1.2.6.jar 3、XmlSchema-1.1.jar 可以与 xmlschema-core-*.jar 共存避开同路径同名类冲突

    Java使用XFire调用WebService接口

    6. **异常处理**:在调用Web服务时,可能会遇到网络问题或服务端错误,XFire会将这些异常封装成特定的Java异常,方便开发者捕获并处理。 7. **日志和调试**:为了调试和优化,XFire支持日志记录,开发者可以通过...

    xfire myeclipse10包

    【xfire myeclipse10包】是一款专为MyEclipse10集成开发环境设计的XFire插件安装包。XFire是一款强大的Java Web服务框架,它提供了对Web服务的全面支持,包括创建、部署和消费Web服务的能力。在MyEclipse这样的集成...

    spring 集成xfire 比较好的一种方式

    - 确保 XFire 版本与 Spring 版本兼容,以避免兼容性问题。 - 测试时,可以使用 SOAP UI 或类似的工具来调用 Web 服务,验证其功能。 - 考虑使用 CXF 或其他现代的 Web 服务框架,因为 XFire 已经不再活跃维护,而 ...

    xfire所需jar包

    XFire,全称为XML Fire,是一款历史悠久的开源Java框架,主要用作服务导向架构(SOA)中的Web服务实现工具。它允许开发者快速构建、部署和管理基于HTTP的服务,支持SOAP和RESTful通信协议。在Java开发中,XFire通过...

Global site tag (gtag.js) - Google Analytics