`
network-eagle
  • 浏览: 59768 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

spring 和xfire的问题。路过的看看。

阅读更多


java 代码

  1. 配置文件 相关部分   
  2. <bean id="txProxyTemplate2" lazy-init="true" abstract="true"  
  3.         class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">   
  4.         <property name="transactionManager">   
  5.             <ref bean="transactionManager1" />   
  6.         </property>   
  7.         <property name="transactionAttributes">   
  8.             <props>   
  9.                 <prop key="exe*">   
  10.                     PROPAGATION_REQUIRED,ISOLATION_DEFAULT,-Exception   
  11.                 </prop>   
  12.                 <prop key="insert*">   
  13.                     PROPAGATION_REQUIRED,ISOLATION_DEFAULT,-Exception   
  14.                 </prop>   
  15.                 <prop key="update*">   
  16.                     PROPAGATION_REQUIRED,ISOLATION_DEFAULT,-Exception   
  17.                 </prop>   
  18.                 <prop key="del*">   
  19.                     PROPAGATION_REQUIRED,ISOLATION_DEFAULT,-Exception   
  20.                 </prop>   
  21.                 <prop key="add*">   
  22.                     PROPAGATION_REQUIRED,ISOLATION_DEFAULT,-Exception   
  23.                 </prop>   
  24.                 <prop key="remove*">   
  25.                     PROPAGATION_REQUIRED,ISOLATION_DEFAULT,-Exception   
  26.                 </prop>   
  27.                 <prop key="save*">   
  28.                     PROPAGATION_REQUIRED,ISOLATION_DEFAULT,-FailException   
  29.                 </prop>   
  30.                 <prop key="do*">   
  31.                     PROPAGATION_REQUIRED,-FailException   
  32.                 </prop>   
  33.                 <prop key="*">   
  34.                     PROPAGATION_SUPPORTS,readOnly,ISOLATION_DEFAULT,-Exception   
  35.                 </prop>   
  36.             </props>   
  37.         </property>   
  38.     </bean>    
  39.   
  40. <bean id="ffManager" parent="txProxyTemplate2">   
  41.             <property name="target">   
  42.                 <bean   
  43.                     class="cn.net.withub.xfgl.sdyb.ff.bo.FfManagerImpl">   
  44.                     <property name="ffDao">   
  45.                         <ref bean="ffDao" />   
  46.                     </property>   
  47.                     <property name="sdybClientManager">   
  48.                         <ref bean="sdybClientManager"/>   
  49.                     </property>   
  50.                 </bean>   
  51.             </property>   
  52.     </bean>    
  53.   
  54.     <bean id="sdybClientManager" class="cn.net.withub.xfgl.sdyb.webService.client.bo.Imp.SdybClientManagerImp">   
  55.         <property name="jdbcTool">   
  56.             <ref bean="jdbcTool"/>   
  57.         </property>   
  58.         <property name="daoTool">   
  59.             <ref bean="daoTool"/>   
  60.         </property>   
  61.     </bean>   
  62. // xfire 配置文件   
  63.     <bean   
  64.         class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">   
  65.         <property name="urlMap">   
  66.             <map>   
  67.                 <!-- 配置 service 名称和 Service Bean -->   
  68.                 <entry key="/xfgl">   
  69.                     <ref bean="xfglws" />   
  70.                 </entry>   
  71.             </map>   
  72.         </property>   
  73.     </bean>   
  74.        
  75.     <bean id="xfglws"  
  76.         class="org.codehaus.xfire.spring.remoting.XFireExporter">   
  77.         <property name="serviceFactory">   
  78.             <ref bean="xfire.serviceFactory" />   
  79.         </property>   
  80.         <property name="xfire">   
  81.             <ref bean="xfire" />   
  82.         </property>   
  83.         <property name="serviceBean">   
  84.             <ref bean="xfSdybService" />   
  85.         </property>   
  86.         <property name="serviceClass">   
  87.             <value>cn.net.withub.xfgl.sdyb.webService.service.XfSdybService</value>   
  88.         </property>   
  89.     </bean>     
  90. http://149.0.12.206:8181/xfgl/xfireServices/xfgl?wsdl 运行这个能出来 xml的东西   
  91.   
  92. // 客户端class   
  93. package cn.net.withub.xfgl.sdyb.webService.client;   
  94.   
  95. import java.net.MalformedURLException;   
  96. import java.net.URL;   
  97.   
  98. import org.codehaus.xfire.client.Client;   
  99.   
  100. public class CallXfglWebService {   
  101.     URL ServerUrl = null;   
  102.   
  103.     public String sendESBMessage(String method,String webServiceURL, Object xmlStr[]) {   
  104.         try {   
  105.             ServerUrl = new URL(webServiceURL);   
  106.         } catch (MalformedURLException e1) {   
  107.             e1.printStackTrace();   
  108.         }   
  109.         Client client = null;   
  110.         Object[] returnMessage = null;   
  111.         try {   
  112.             client = new Client(ServerUrl);   
  113.             System.out.println("gyyguhhh======"+ServerUrl);   
  114.                
  115.             returnMessage = client.invoke(method, xmlStr); // 就是这里了,抛异常了 空指针   
  116.         } catch (Exception e) {   
  117.             e.printStackTrace();   
  118.         }   
  119.         String receiveMessage = null;   
  120.         if (returnMessage.length > 0) {   
  121.             receiveMessage = (String) returnMessage[0];   
  122.             System.out.println("back method="+method+"value="+receiveMessage);   
  123.         }   
  124.         return receiveMessage;   
  125.     }   
  126.   
  127. }   

异常情况:

java 代码
  1. org.codehaus.xfire.fault.XFireFault: Fault: java.lang.NullPointerException   
  2.     at org.codehaus.xfire.fault.XFireFault.createFault(XFireFault.java:89)   
  3.     at org.codehaus.xfire.client.Invocation.invoke(Invocation.java:83)   
  4.     at org.codehaus.xfire.client.Invocation.invoke(Invocation.java:114)   
  5.     at org.codehaus.xfire.client.Client.invoke(Client.java:336)   
  6.     at org.codehaus.xfire.client.Client.invoke(Client.java:368)   
  7.     at cn.net.withub.xfgl.sdyb.webService.client.CallXfglWebService.sendESBMessage(CallXfglWebService.java:23)   
  8.     at cn.net.withub.xfgl.sdyb.webService.client.bo.Imp.SdybClientManagerImp.sdybFa(SdybClientManagerImp.java:94)   
  9.     at cn.net.withub.xfgl.sdyb.ff.bo.FfManagerImpl.sendByFsfs(FfManagerImpl.java:44)   
  10.     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)   
  11.     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)   
  12.     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)   
  13.     at java.lang.reflect.Method.invoke(Method.java:585)   
  14.     at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:335)   
  15.     at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:181)   
  16.     at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:148)   
  17.     at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)   
  18.     at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170)   
  19.     at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:176)   
  20.     at $Proxy19.sendByFsfs(Unknown Source)   
  21.     at cn.net.withub.xfgl.sdyb.ff.action.FfAction.sendAction(FfAction.java:36)   
  22.     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)   
  23.     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)   
  24.     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)   
  25.     at java.lang.reflect.Method.invoke(Method.java:585)   
  26.     at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:274)   
  27.     at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:194)   
  28.     at org.springframework.web.struts.DelegatingActionProxy.execute(DelegatingActionProxy.java:106)   
  29.     at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)   
  30.     at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)   
  31.     at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)   
  32.     at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)   
  33.     at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)   
  34.     at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)   
  35.     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)   
  36.     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)   
  37.     at withub.com.filter.SessionInvalidatedFilter.doFilter(SessionInvalidatedFilter.java:41)   
  38.     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)   
  39.     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)   
  40.     at com.bstek.dorado.core.FilterHandle.c(Unknown Source)   
  41.     at com.bstek.dorado.core.FilterHandle.doFilter(Unknown Source)   
  42.     at com.bstek.dorado.core.DoradoFilter.doFilter(Unknown Source)   
  43.     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)   
  44.     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)   
  45.     at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)   
  46.     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)   
  47.     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)   
  48.     at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)   
  49.     at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)   
  50.     at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)   
  51.     at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)   
  52.     at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)   
  53.     at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)   
  54.     at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)   
  55.     at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)   
  56.     at java.lang.Thread.run(Thread.java:595)   
  57. Caused by: java.lang.NullPointerException   
  58.     at org.codehaus.xfire.aegis.type.basic.ObjectType.writeObject(ObjectType.java:192)   
  59.     at org.codehaus.xfire.aegis.AegisBindingProvider.writeParameter(AegisBindingProvider.java:229)   
  60.     at org.codehaus.xfire.service.binding.AbstractBinding.writeParameter(AbstractBinding.java:273)   
  61.     at org.codehaus.xfire.service.binding.WrappedBinding.writeMessage(WrappedBinding.java:90)   
  62.     at org.codehaus.xfire.soap.SoapSerializer.writeMessage(SoapSerializer.java:80)   
  63.     at org.codehaus.xfire.transport.http.HttpChannel.writeWithoutAttachments(HttpChannel.java:56)   
  64.     at org.codehaus.xfire.transport.http.CommonsHttpMessageSender.getByteArrayRequestEntity(CommonsHttpMessageSender.java:422)   
  65.     at org.codehaus.xfire.transport.http.CommonsHttpMessageSender.send(CommonsHttpMessageSender.java:360)   
  66.     at org.codehaus.xfire.transport.http.HttpChannel.sendViaClient(HttpChannel.java:123)   
  67.     at org.codehaus.xfire.transport.http.HttpChannel.send(HttpChannel.java:48)   
  68.     at org.codehaus.xfire.handler.OutMessageSender.invoke(OutMessageSender.java:26)   
  69.     at org.codehaus.xfire.handler.HandlerPipeline.invoke(HandlerPipeline.java:131)   
  70.     at org.codehaus.xfire.client.Invocation.invoke(Invocation.java:79)   
  71.     ... 53 more  


 

分享到:
评论

相关推荐

    spring集成xfire教程

    集成 Spring 和 XFire 的主要目的是利用 Spring 的管理和配置能力来处理 XFire 的 Web 服务生命周期。这可以通过 Spring 的 Bean 定义和自动装配实现,使得 Web 服务的创建、发布和消费变得更加简单。 集成步骤如下...

    Spring和XFIRE结合

    标题 "Spring和XFIRE结合" 暗示了本文将探讨如何在Java应用程序开发中整合Spring框架与XFire服务框架,以实现轻量级、基于XML的Web服务。Spring是Java领域广泛使用的依赖注入(DI)和面向切面编程(AOP)框架,而...

    Spring2.0和XFire1.2.6整合案例

    在IT行业中,集成框架是开发复杂应用程序的关键,Spring和XFire就是两个重要的工具。Spring作为一个强大的Java企业级应用开发框架,提供了丰富的功能,包括依赖注入、面向切面编程(AOP)以及各种服务管理。而XFire...

    spring和xfire配置

    整合Spring和XFire的关键在于,Spring容器能够自动发现并管理XFire中的bean,这样你就可以在Spring的依赖注入机制下编写服务实现,使得代码更加简洁和易于测试。同时,Spring的事务管理、AOP(面向切面编程)等功能...

    spring和xfire 整合webservice

    通过这种方式,Spring和XFire的整合让你能够轻松地利用Spring的灵活性和XFire的高效性,创建出高质量的Web服务。开发者可以专注于业务逻辑,而不必关心底层通信细节。同时,由于Spring的强大支持,你可以方便地进行...

    spring+xfire( 编写webservice完整配置+案例)

    在本教程中,我们将深入探讨如何使用Spring和XFire编写Web服务的完整配置,并通过实际案例来学习这一过程。 首先,我们需要了解Spring和XFire的基础。Spring框架提供了一个名为Spring-WS的模块,专门用于构建Web...

    spring整合xfire例子

    1. **添加依赖**:首先,在你的项目中引入Spring和XFire的相关库,这通常通过Maven或Gradle的依赖管理来完成。 2. **配置Spring**:创建Spring配置文件,定义Web服务的bean,包括服务接口、实现类和服务发布器。使用...

    spring+xfire集成解决方案

    然而,在配置Spring和XFire的过程中,可能会遇到一些问题。比如,在同一个项目中加入不同版本的Spring核心JAR包时,就可能导致Spring无法正常启动。本文将以一个具体的错误为例,深入探讨其原因,并提出有效的解决...

    spring与xfire结合

    压缩包文件"xfire_spring"可能包含了整合Spring和XFire的示例代码或者配置文件。这些文件可能包括Spring的配置XML文件、服务接口和实现类、以及可能的测试类。通过分析和学习这些代码,开发者可以更好地理解如何在...

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

    Spring 和 XFire 的集成是构建基于 SOAP 的 Web 服务的一种高效方法。XFire 是一个 Java 框架,专门用于创建和消费 Web 服务,而 Spring 框架则提供了全面的企业级应用开发支持。将这两者结合可以利用 Spring 的强大...

    xfire+spring+安全认证

    "xfire+spring+安全认证"的主题聚焦于如何利用XFire和Spring框架来实现安全的Web服务。XFire是一个用于创建、消费和部署SOAP Web服务的Java库,而Spring框架则是一个广泛使用的全功能应用开发框架,提供了包括安全性...

    spring +xfire整合

    3. 配置文件:整合Spring和XFire通常涉及三个主要的配置文件。在`web.xml`中,你需要配置XFire的Servlet,使其能够处理HTTP请求。此外,你还需要一个Spring配置文件来定义Bean,指定哪个类是Web服务的实现,并设置...

    Spring + Xfire + 注解方式

    在使用注解的方式时,开发者可以在类或方法上添加特定的注解(如@Service、@Controller、@Repository等Spring注解,以及@WebService、@WebServiceRef等Xfire注解),从而让Spring和Xfire自动识别并处理这些服务。...

    spring与xfire整合正确演示例子

    spring与xfire整合正确演示例子

    spring,xfire开发soap接口

    在使用Spring和XFire开发SOAP接口时,我们首先需要设置项目环境,包括添加相关的依赖库到项目中,如Spring和XFire的JAR文件。然后,我们需要定义服务接口和其实现,这些接口通常会使用Java注解(如`@WebService`)...

    Spring+xfire实现WebService

    本篇文章将深入探讨如何使用Spring和XFire来实现Web服务,以及这两个组件的核心功能和它们之间的协作机制。 首先,让我们了解Spring框架。Spring是一个开源的Java平台,它主要设计用于简化企业级应用程序开发。...

    Spring XFire 实现webService

    **Spring XFire 实现Web服务** 在Java世界中,Spring框架以其灵活性和强大的功能成为企业级应用开发的首选。...在实际开发中,还需要注意版本兼容性,确保所使用的jar包与Spring和XFire的版本匹配,以避免潜在的问题。

    XFire和Spring整合的完整示例

    XFire与Spring的整合主要基于Spring的IoC(Inversion of Control,控制反转)和AOP(Aspect-Oriented Programming,面向切面编程)特性,使得服务的创建和管理更加灵活,降低了代码间的耦合度。下面我们将详细讨论这...

Global site tag (gtag.js) - Google Analytics