`
rocye
  • 浏览: 119912 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

配置Xfire+Spring+Ibatis心得(续)

阅读更多

因为这篇文章有点长,发现被截掉一部分,在这里进行补全,不知道怎么分页:

 

接下来就需要进行相关配置文件的编写了;

 

<?xml version="1.0" encoding="UTF-8"?>

<beans

       xmlns="http://www.springframework.org/schema/beans"

       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

       <import resource="classpath:org/codehaus/xfire/spring/xfire.xml" />

 

       <bean id="webAnnotations" class="org.codehaus.xfire.annotations.jsr181.Jsr181WebAnnotations" />

Bean获取Spring容器中所有标注@WebServiceBean

       <bean id="jsr181HandlerMapping" class="org.codehaus.xfire.spring.remoting.Jsr181HandlerMapping">

              <property name="xfire" ref="xfire" />

              <property name="webAnnotations" ref="webAnnotations" />

       </bean>

对标注@WebServiceBean进行处理,完成导出工作

</beans>

其实这个配置文件同Spring-config.xml,所以可而知,导入的地方和Spring-config.xml相同即可。

 

5.去掉了ActionServlet肯定要添加XfireServlet到项目中来了:

<!-- XFire Servlet with Spring config -->

  <servlet>

    <servlet-name>xfireServlet</servlet-name>

    <servlet-class>org.codehaus.xfire.spring.XFireSpringServlet</servlet-class>

  </servlet>

  <servlet-mapping>

    <servlet-name>xfireServlet</servlet-name>

    <url-pattern>/services/*</url-pattern>

  </servlet-mapping>

这里的<url-pattern>/services/*</url-pattern> 需要注意,是发布的路路,最好是按这样写,对JSR 181方式更是如此,启动时会在控制台看到Mapping to /services/MsgUnitService 之类的字样,当时我为这个找过好多资料,想知道这个路径详细的配置,但是时间问题还没找到答案。到这里可以启动项目了,但是会有一个错,意思是说,不能将handler MsgUnitService Mapping to /services/MsgUnitService ,是因为已经mapped。因为这个错,找了好长时间的资料,最后发现,原来,JSR 181的这种标注方式,它会再一次解析类文件的业务层配置结构,也就是说,像Spring-config.xml中的这种dao类,dao接口,业务类,业务接口注册的式出现了两次,如果用JSR 181 方式进行配置应该连Spring-config.xml中业务层的配置部分也可以删除,但是其中的TransactionProxyFactoryBean怎么办呢,肯定不能删除的,才发现也有标注式的事务配置@Transaction 。因为这里没有采用这种业配置方式,所以JSR 181 式就先放下,最后用导出器的方式进行测试。

 

对就在的Xfire的配置文件写法改成

<?xml version="1.0" encoding="UTF-8"?>

      

       <import resource="classpath:org/codehaus/xfire/spring/xfire.xml" />

       <bean id="MsgunitService" class="org.codehaus.xfire.spring.remoting.XFireExporter">

              <property name="serviceFactory" ref="xfire.serviceFactory" />

              <property name="xfire" ref="xfire" />

              <property name="serviceBean" ref="msgunitServiceProxy" />

              <property name="serviceClass" value="org.sh.spiss.eme.msgunit.MsgunitService" />

              <property name="name" value="MsgunitServiceUT"/>

       </bean>

这样一来,本项目之前的Spring-config.xml的配置均可保留重用了。

 

6.重启服务器,访问http://localhost/services/MsgunitServiceUT?wsdl 这个地址就能得到相应的wsdl描述了。服务器端已通,不过今后会将事务改成标注方式后仍采用JSR 181的方式进行测试,毕竟那种方式更为简单方便。

 

7.客户端采用Flex完成测试,主要组件代码为:

<mx:WebService id="webService" wsdl="http://localhost/services/MsgunitServiceUT?wsdl" showBusyCursor="true" useProxy="false">

    <mx:operation name="getMsgunitXml" result="getMsgunitXml_result(event);" fault="getMsgunitXml_fault(event);" >

    </mx:operation>

    <mx:operation name="getMsgunitXmlByPara" result="getMsgunitXml_result(event);" fault="getMsgunitXml_fault(event);" >

    <mx:request xmlns="">

            <xmlstr>

                   1234

            </xmlstr>

    </mx:request>

    </mx:operation>

</mx:WebService>

第一个操作方法,测试通过,正常请求,也能返回对应的字串,但是到这里就碰到问题,不知道为什么,请求带参数的webservice导出的方法时就好像根本找不到对应的方法一样,没有任何反应,参数传递方式找过很多资料,都是说采用上述写法,其中<xmlstr>这个名字要和服务器端所调用的方法参数名一致。但是还是不行,正在研究中,正在寻找原因中….

待续

本文单纯属配置笔记,有很多地方说的很模糊。

分享到:
评论
1 楼 rocye 2009-02-17  
开心中 今天终于在JAVAEYE上找到了传参问题的解决办法,原来这里可以直接进行调用API传参:
webService.getMsgunitXmlByPara.send(对应的参数);
测试已通过
<mx:request xmlns="">

            <xmlstr>

                   1234

            </xmlstr>

    </mx:request>

这一部分可以去掉了!

相关推荐

    xfire+spring+安全认证

    在提供的压缩包文件"xfire+spring"中,可能包含了相关的示例代码、配置文件或者教程文档,帮助开发者理解并实践这一整合过程。通过学习这些资源,你可以深入理解如何将这两个强大的工具结合起来,构建出既高效又安全...

    xfire+spring开发webservice

    在提供的文档《xfire+spring2_5开发webservice接口的两种方式.mht》中,详细讲解了这两种方法的实现步骤、示例代码和注意事项。读者可以通过阅读该文档,了解如何在Spring 2.5版本下结合XFire创建Web服务。 另一份...

    xfire+spring+webservice+client

    标题中的“xfire+spring+webservice+client”是一个关于集成XFire、Spring框架和Web服务客户端的专题,这涉及到Java开发中的一项重要技术——Web服务的消费与提供。在这个主题下,我们将深入探讨以下几个核心知识点...

    xfire +spring jar

    描述中提到的“本来想把xfire+spring例子也一起传上来,太大不让传”,意味着这个压缩包可能包含了示例代码或者项目实例,用于展示如何在实际应用中整合XFire和Spring。由于文件大小限制未能一同上传,我们只能从...

    XFire+Spring webwervice

    【XFire+Spring Web Service】是一个结合了XFire和Spring框架的解决方案,用于构建高效、易用的Web服务。XFire作为一个现代化的Web服务框架,它与Axis2齐名,但因其简洁的API和对Web服务标准的支持,如JSR181、WSDL...

    xfire+spring+hibernate的一种整合方式

    本案例中的"xfire+spring+hibernate"是一种早期的整合方式,它将Web服务(通过XFire实现)、Spring框架的依赖注入与管理以及Hibernate的持久层处理结合在一起。以下是对这种整合方式的详细解释。 1. **XFire**:...

    使用XFire+Spring构建Web Service

    总的来说,XFire+Spring的组合为Java开发者提供了一个强大且灵活的Web服务解决方案,结合MooTools等前端技术,可以构建出高性能、易维护的分布式系统。在实际开发中,理解并熟练掌握这些工具的使用,将有助于提升...

    Xfire+spring+hiebrnate webService

    【标题】:“Xfire+Spring+Hibernate WebService” 在IT领域,Web服务是一种软件系统,设计用于通过网络(主要是互联网)进行通信。本项目“Xfire+Spring+Hibernate WebService”是一个采用特定技术栈构建的Web服务...

    xfire+spring webservice

    标题 "xfire+spring webservice" 指的是在Java开发环境中,利用XFire和Spring框架来构建Web服务。这是一个常见的技术组合,用于快速、高效地创建和消费Web服务。让我们深入了解一下这两个组件以及它们如何协同工作。...

    xfire+spring+webservice

    2. 配置Spring:定义Spring配置文件,声明XFire的ServiceBean和EndpointBean,以及相关的依赖注入。 3. 创建Web服务:使用XFire提供的API或Spring-WS的注解来定义Web服务接口和实现。 4. 暴露服务:通过Spring的...

    xfire+Spring整合

    在Spring配置文件中,我们可以定义一个`&lt;bean&gt;`,指定其类型为`org.codehaus.xfire.spring.XFireServiceFactoryBean`,并设置相应的属性,如服务接口、实现类等。 4. **Web服务发布**:整合后,Web服务可以通过...

    xfire+spring+maven构建webservice服务器和客户端

    标题中的“xfire+spring+maven构建webservice服务器和客户端”揭示了本教程将围绕三个主要技术进行讨论:XFire、Spring和Maven。这三者都是Java开发中不可或缺的工具,尤其在构建Web服务方面。 XFire是早期的一个...

    xfire+spring+webservice例子

    【标题】"xfire+spring+webservice例子"是一个典型的示例项目,它演示了如何在Java环境中结合XFire和Spring框架来创建和消费Web服务。这个项目旨在帮助开发者理解和实践基于Spring的Web服务实现,同时也展示了XFire...

    使用XFire+Spring构建Web Service步骤以及源代码.rar

    XFire是一个高性能、易于使用的Java Web服务框架,而Spring则是广泛采用的轻量级应用框架,它提供了丰富的功能来支持各种应用程序的开发,包括Web服务。本教程将详细介绍如何结合XFire和Spring来构建Web服务,并提供...

    xFire+spring webService 示例

    在"xFire+Spring WebService"的集成中,你可以使用Spring来配置和管理xFire,这样就可以利用Spring的强大功能,如自动装配、事务管理和安全性,同时利用xFire的Web服务处理能力。下面是一些关键步骤: 1. **配置...

    使用xfire+spring构建webservice

    标题“使用xfire+spring构建webservice”指出的是一个关于如何利用XFire和Spring框架创建Web服务的教程。XFire是早先的一个用于构建Web服务的开源Java库,它简化了SOAP(简单对象访问协议)服务的开发。而Spring框架...

    使用XFire+Spring构建Web Service步骤

    至此,一个简单的XFire+Spring Web Service就已经构建完成。客户端可以通过调用WSDL中定义的端点地址来访问这个服务,进行“Hello, World!”的交互。 总结,使用XFire和Spring构建Web Service,可以利用Spring的IoC...

Global site tag (gtag.js) - Google Analytics