使用axis2axis2 wsdl生成客户端代理调WCF报请求实体过大

WCF(4) - 异常处理(Exception、FaultException、FaultException、IErrorHandler)-真格学网-提供健康,养生,留学,移民,创业,汽车等信息
WCF(4) - 异常处理(Exception、FaultException、FaultException、IErrorHandler)
来源:IT168 &责任编辑:李志 &时间: 7:07:25
建筑电工安装图纸中的符号VV-4*35+1*16SC70WCFC什...答:交联聚乙烯绝缘、交联聚乙烯护套铜芯电力电缆,铜芯截面是:4根35平方和一根16平方的。SC70WCFC:穿钢管直径70mm沿墙沿地暗敷设mvc4引用了wcf服务怎么发布后servicereferences文...答:Silverlight项目中添加服务引用后会在Silverlight项目中生成一个ServiceReferences.ClientConfig文件,这个文件中包含了引用服务的绑定(bindings)和终结点(Endpoint)的配置信息。下面是引用一个WCF服务后自动生成的配置信息:在程序开发阶...Silverlight4+WCF+NET.TCP总是出现这个错误问:未能连接到net.tcp://127.0.0.1:4505/CalculatorSerivce。连接尝试的持...答:ilverlight应用的解决方案,应该有两个项目:一个是silverlight项目,一个是silverlight的宿主项目,即网站项目,WCF中如何使用Log4net,客户端日志可以保存到服务器...答:另外,团IDC网上有许多产品团购,便宜有口碑海贼王wcf手办一个的大致价格是多少?答:1&关于海贼王WCF系列已发售的(46套+5个):TV*31套(0~30)MV强者世界*6套MVfilmz*4套万圣1*1套票选*1套路飞艾斯文字马甲*1套zoo系列*2套披风路飞罗杰*2个万博路飞艾斯*2个megafranky将军*1个未发售但已有情报的(9套+5个):TV*...WCF(4)-异常处理(Exception、FaultException、FaultException、IErrorHandler)(图2)WCF(4)-异常处理(Exception、FaultException、FaultException、IErrorHandler)(图4)WCF(4)-异常处理(Exception、FaultException、FaultException、IErrorHandler)(图6)WCF(4)-异常处理(Exception、FaultException、FaultException、IErrorHandler)(图8)WCF(4)-异常处理(Exception、FaultException、FaultException、IErrorHandler)(图10)WCF(4)-异常处理(Exception、FaultException、FaultException、IErrorHandler)(图12)海贼王wcf手办一个的大致价格是多少?答:1&关于海贼王WCF系列已发售的(46套+5个):TV*31套(0~30)MV强者世界*6套MVfilmz*4套万圣1*1套票选*1套路飞艾斯文字马甲*。防恶意抓取,请查看原文,,真格学网提供内容。==========以下对应文字版==========服务端使用WCF客户端是ExtJS4,通过Ext.data.Jsonp...问:服务端使用WCF,客户端是ExtJS4,通过Ext.data.Jsonp.request跨域请求的...答:客户端接收不。防恶意抓取,请查看原文,,真格学网提供内容。
  示例  1、服务通过jsp导入导出数据到Excel文档?该怎么做?答:label=newjxl.write.Label(3,0,&银行&,wcfFC8);sheet.addCell(label);。防恶意抓取,请查看原文,,真格学网提供内容。  IHello.cs如何使用axis2生成wcf客户端代码答:下载axis2-1.5.4-bin.zip文件并解压。设置axis2的环境变量,如下图所示:利用axis2中的wsdl2java.bat生成客户端程序。先启动。防恶意抓取,请查看原文,,真格学网提供内容。using S using System.Collections.G using System.L using System.T    using System.ServiceM    namespace WCF.ServiceLib.Exception {   /**//// &summary&   /// IHello接口   /// &/summary&   [ServiceContract]   public interface IHello   {     /**//// &summary&     /// 抛出Exception异常     /// &/summary&     [OperationContract]     void HelloException();        /**//// &summary&     /// 抛出FaultException异常     /// &/summary&     [OperationContract]     void HelloFaultException();        /**//// &summary&     /// 抛出FaultException&T&异常     /// &/summary&     [OperationContract]     [FaultContract(typeof(FaultMessage))]     void HelloFaultExceptionGeneric();        /**//// &summary&     /// IErrorHandler处理异常     /// &/summary&     [OperationContract]     void HelloIErrorHandler();   } }3Dmax注册机老出现REQUESTCODEERROR!有高人帮忙...问:感谢前辈我的邮箱答:什么版本?要本地注册。防恶意抓取,请查看原文,,真格学网提供内容。  FaultMessage.cs如何封装外部的webservice或wcf,并以wcf形式对外...答:可以实现的方法很多,比如使用静态代理模式,使用桥接模式,适配器模式都可以。最佳的做法是桥接模式,简单一点的就是静态代理模式。首先。防恶意抓取,请查看原文,,真格学网提供内容。using S using System.Collections.G using System.L using System.T    using System.ServiceM using System.Runtime.S    namespace WCF.ServiceLib.Exception {   /**//// &summary&   /// 错误信息实体类(用于错误契约FaultContract)   /// &/summary&   [DataContract]   public class FaultMessage   {     /**//// &summary&     /// 错误信息     /// &/summary&     [DataMember]     public string Message { }        /**//// &summary&     /// 错误代码     /// &/summary&     [DataMember]     public int ErrorCode { }   } }怎么判断wcf服务是否存在你的逗使用地可吞异常。3个选项:唐的逗使用地子类的代理和重写的Dispose()把它包,按照该博客4.通常情况下,WCF服务承载在ServiceHost中,如果WCF的服务失败,那么唯...。防恶意抓取,请查看原文,,真格学网提供内容。FaultErrorHandler.cssilverlight+Wcf报CommunicationException异常应该是你的数据量太大了。。你采用小一点的或者直接空参数试试。。防恶意抓取,请查看原文,,真格学网提供内容。using S using System.Collections.G using System.L using System.T    using System.ServiceModel.D using System.C using System.ServiceM using System.ServiceModel.C    namespace WCF.ServiceLib.Exception {   /**//// &summary&   /// 自定义错误处理器(继承自System.ServiceModel.Dispatcher.IErrorHandler)   /// &/summary&   public class FaultErrorHandler : IErrorHandler   {     /**//// &summary&     /// 在异常返回给客户端之后被调用     /// &/summary&     /// &param name=&error&&异常&/param&     /// &returns&&/returns&     public bool HandleError(System.Exception error)     {       System.IO.StreamWriter sw = new System.IO.StreamWriter(@&C:WCF_Log.txt&, true);       sw.Write(&IErrorHandler - HandleError测试。吐血求教客户端引用WCF服务,ActionNotSupportedException异常第二种错误类型与代理和通道的状态有关。这种类型存在很多可能的异常。如,试图访问已经关闭的代理,就会导致ObjectDisposedException异常;契约和绑定的安全级别不想匹...。防恶意抓取,请查看原文,,真格学网提供内容。错误类型:{0};错误信息:{1}&, error.GetType().ToString(), error.Message);       sw.WriteLine();       sw.Flush();       sw.Close();          // true - 已处理            }        /**//// &summary&     /// 在异常发生后,异常信息返回前被调用     /// &/summary&     /// &param name=&error&&异常&/param&     /// &param name=&version&&SOAP版本&/param&     /// &param name=&fault&&返回给客户端的错误信息&/param&     public void ProvideFault(System.Exception error, System.ServiceModel.Channels.MessageVersion version, ref System.ServiceModel.Channels.Message fault)     {       if (error is System.IO.IOException)       {         FaultException ex = new FaultException(&IErrorHandler - ProvideFault测试&);            MessageFault mf = ex.CreateMessageFault();            fault = Message.CreateMessage(version, mf, ex.Action);            // InvalidOperationException error = new InvalidOperationException(&An invalid operation has occurred.&);         // MessageFault mfault = MessageFault.CreateFault(new FaultCode(&Server&, new FaultCode(String.Format(&Server.{0}&, error.GetType().Name))), new FaultReason(error.Message), error);         // FaultException fe = FaultException.CreateFault(mfault, typeof(InvalidOperationException));       }     }   } }Silverlight调用WCF如何处理错误false则去调用另一个Service:GetLastError()从Session中取出刚才保存的异常信息。...只要设计出自己的序列化/反序列化机制就行了。因为更新WCF引用实在是很麻烦,并...。防恶意抓取,请查看原文,,真格学网提供内容。Hello.csjQuery实现ajax调用WCF服务的方法(附带demo下载)本文实例讲述了jQuery实现ajax调用WCF服务的方法。分享给大家供大家参考,具体如下...City();cc1.CityID=&q。防恶意抓取,请查看原文,,真格学网提供内容。using S using System.Collections.G using System.L using System.T    using System.ServiceM using System.ServiceModel.D using System.ServiceModel.D    namespace WCF.ServiceLi[求助]LINQ+WCF+SiverlightSILVERLIGHT在异步调用的时候总...关联创建,你又更新wcf的代理类什么的嘛.最简单的,如果你的代理类是通过向导直接从数据库生成的,可以删除现在的再来一次.或者手动更新你的数据库模型。防恶意抓取,请查看原文,,真格学网提供内容。
服务端使用WCF客户端是ExtJS4,通过Ext.data.Jsonp...问:服务端使用WCF,客户端是ExtJS4,通过Ext.data.Jsonp.request跨域请求的...答:客户端接收不了,是浏览器报的错,还是extjs解析报的错,这个问题慢慢调,先把返回的Json串写的简单点,一点点拼成你想要的格式,一定可以解决。祝你好运通过jsp导入导出数据到Excel文档?该怎么做?答:label=newjxl.write.Label(3,0,&银行&,wcfFC8);sheet.addCell(label);label=newjxl.write.Label(4,0,&金额&,wcfFC8);sheet....如何使用axis2生成wcf客户端代码答:下载axis2-1.5.4-bin.zip文件并解压。设置axis2的环境变量,如下图所示:利用axis2中的wsdl2java.bat生成客户端程序。先启动Tomcat7并在IE里运行http://localhost:8081/TestAxis2Ws/services/HelloService?wsdl看看服务端是否正常解析。%AX...3Dmax注册机老出现REQUESTCODEERROR!有高人帮忙...问:感谢前辈我的邮箱答:什么版本?要本地注册
猜你还喜欢在一文中,我描述了用axis2的一个Eclipse控件生成WCF的Java客户端代理类,后来有朋友建议用Xfire、CXF,一直没有尝试,今天有朋友指出JDK6可以用java自带的一个WSImport工具,试了下,果然很爽,这是一个exe文件,位于%JAVA_HOME%\bin下,它的官方使用说明,见:,主要参数:
Description
-d &directory&
Specify where to place generated output files
Specify external JAX-WS or JAXB binding files (Each&&file&&must have its own&-b)
-B &jaxbOption&
Pass this option to JAXB schema compiler
Specify catalog file to resolve external entity references, it supports TR9401, XCatalog, and OASIS XML Catalog format. Please read the documentation of&&and see&catalog&sample.
-extension
Allow vendor extensions (functionality not specified by the specification). Use of extensions may result in applications that are not portable or may not interoperate with other implementations
Display help
-httpproxy:&host&:&port&
Specify an HTTP proxy server (port defaults to 8080)
Keep generated files
Specifying a target package via this command-line option, overrides any wsdl and schema binding customization for package name and the default package name algorithm defined in the specification
-s &directory&
Specify where to place generated source files
Output messages about what the compiler is doing
Print version information
-wsdllocation &location&
@WebServiceClient.wsdlLocation&value
Generate code as per the given JAX-WS specification version. version 2.0 will generate compliant code for JAX-WS 2.0 spec.
Suppress wsimport output
示例:wsimport -s JavaSrc http://stockquote.xyz/quote?wsdl
将在当前路径的JavaSrc下生成相关的Java类,直接复制到项目的Src目录下即可使用。下面还是以上次创建的http://localhost:8000/HelloTimeService?wsdl为类,测试过程如下:
新建一java Project,如图:
将上面生成的java文件复制到Src目录下,项目结构如图:
测试代码也很简洁:
小结:这种方式与Axis2生成的Stub方式其实非常类似,只不过没有生成测试代码。结构还算清晰。
邀月注:本文版权由邀月和博客园共同所有,转载请注明出处。助人等于自助!&&
转载自:/downmoon/archive//1811689.html
阅读(...) 评论()java client使用axis2调用net下的wcf问题
20分,无满意结帖,结帖人yorke1314]
编辑:www.fx114.net
本篇文章主要介绍了"java client使用axis2调用net下的wcf问题
20分,无满意结帖,结帖人yorke1314]",主要涉及到java client使用axis2调用net下的wcf问题
20分,无满意结帖,结帖人yorke1314]方面的内容,对于java client使用axis2调用net下的wcf问题
20分,无满意结帖,结帖人yorke1314]感兴趣的同学可以参考一下。
问题描述如下:
org.apache.axis2.AxisFault:&由于&&ContractFilter&在&EndpointDispatcher&不匹配,因此&Action&为“”的消息无法在接收方处理。这可能是由于协定不匹配(发送方和接收方&Action&不匹配)或发送方和接收方绑定/安全不匹配。请检查发送方和接收方是否具有相同的协定和绑定(包括安全要求,如&Message、Transport、None)。
兄弟们。这个问题怎么解决啊,有人遇到过吗????
一、不得利用本站危害国家安全、泄露国家秘密,不得侵犯国家社会集体的和公民的合法权益,不得利用本站制作、复制和传播不法有害信息!
二、互相尊重,对自己的言论和行为负责。
本文标题:
本页链接:WCF中客户端生成代理的两种方式
- CSDN博客
WCF中客户端生成代理的两种方式
WCF程序中客户端要生成代理才能调用服务,在客户端生成代理有多种方式,如用ChannelFactory和添加服务引用等。下面就分别来介绍下这两种生成代理的方式。
使用ChannelFactory
使用ChannelFactory创建代理需要的条件
1 服务端点的地址,即在宿主中用程序设置的或是配置文件中设置的。
2 服务端点的绑定协议。
3 服务契约的元数据,可以将服务契约复制一份到客户端或是在客户端添加对服务的引用。
下面的代码示例为通过ChannelFactory手动创建代理
EndpointAddress ea =
new EndpointAddress("http://localhost:10000/Service/HelloWorldService");
IHelloWorldService proxy =
ChannelFactory&IHelloWorldService&.CreateChannel(new BasicHttpBinding(),ea);
EndpointAddress:端点地址,该类的实例作为CreateChannel方法的一个参数,实例化EndpointAddress时给的地址要和宿主中设置的地址一致。
IHelloWorldService:这个是服务契约在客户端的一个副本,不包含具体的实现。
ChannelFactory&T&:一个服务模型类型,可以产生客户代理和基础信道栈,使用该类的CreateChannel可以生成代理,有两个参数,绑定类型和端点地址,绑定类型和端点地址要和宿主中设置的一致。
添加服务引用的方式
1 在宿主的配置文件中配置元数据呢交换节点,并在行为中设置serviceMetadata,如下图:
2 在客户端添加服务引用时必须启动宿主。
3 配置文件设置好后,启动宿主,然后再客户项目上右击选择&Add Service Reference& &,在地址框中输入正确地址,如下图:
Http://localhost:10000/mex:是配置文件中的基地址http://localhost:10000加上端点地址mex组合而成。
oec2003:为服务契约中设置的属性Name的值,如下图:
HelloWorld:为自己定义的引用到客户端的名称。
4 添加服务引用后客户端的项目列表显示如下:
5 在客户端添加如下代码:
class Program
static void Main(string[] args)
HelloWorld.oec2003Client proxy = new Client.HelloWorld.oec2003Client();
Console.WriteLine(proxy.SayHello());
Console.ReadLine();
6 先运行宿主,然后运行客户程序就可以看到调用服务返回的结果。
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则 保留追究法律责任的权利。
本文已收录于以下专栏:
相关文章推荐
在使用Socket/TCP来传输文件,弄起来不仅会有些复杂,而且较经典的“粘包”问题有时候会让人火冒七丈。如果你不喜欢用Socket来传文件,不妨试试WCF,WCF的流模式传输还是相当强大和相当实用的...
通常在客户端访问WCF服务时,都需要添加服务引用,然后在客户端app.config或web.config文件中产生WCF服务的客户端配置信息。若是每添加一个服务都是这样做,这样势必会将比较麻烦,能否简...
1.找到如下地址“C:\Windows\System32\cmd.exe”
命令行工具,右键以管理员身份运行(视系统是否为win7 而定)
2.输入如下命令:
在WCF中有两种不同的方法可以用于创建客户端服务对象,他们分别为:1. 代理构造法2. 通道工厂法本文会从实际应用的角度上,阐述两种方法的一些细节和优劣对比,希望通过学习本文,能掌握什么情况下使用什么...
本文将演示如何通过自己手动编写代码来调用WCF服务。首先使用了ChannelFactory来创建通道,并调用与通道关联的服务协定。随后对代码进一步封装,选用从ClientBase类派生,可以更有效地简...
我们首先先新建一个WCF服务项目(代码没有改变,都是默认生成),然后把它部署到IIS上面,为我们下面客户端调用做准备(当然IIS宿主只是其中一种,还有Windows服务、Winform程序、控制台程序...
winForm客户端:
using System.Collections.G
using S...
他的最新文章
讲师:钟钦成
讲师:宋宝华
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)Axis2 调用微软WCF架构下发布的webservice经历
编辑:www.fx114.net
本篇文章主要介绍了"Axis2 调用微软WCF架构下发布的webservice经历 ",主要涉及到Axis2 调用微软WCF架构下发布的webservice经历 方面的内容,对于Axis2 调用微软WCF架构下发布的webservice经历 感兴趣的同学可以参考一下。
&关键字: AXIS2,WS
我算是个AXIS2的初学者,以前用它来调用.net环境下的ws,几乎每遇到困难。用工具一路生成(XMLBeans绑定),然后就在程序中直接调用,因此也没有对其作深入的了解。
最近项目需要调用WCF架构下发布的ws,很不顺利,走了很多弯路,现在稍微有了点头绪......
使用最新版本的axis2携带的工具根据wsdl生成java代码,生成步骤网上有很多介绍,很简单的,我用的是Intellij IDEA的插件,稍微配置下搞定了。
注意:axis2版本一定要1.2以上的,否则会出错,之前版本并不能很好的兼容soap1.2规范。尝试过XFire最新版本1.2.6,不过很可惜,生成不了代码,而其动态调用的方式对含有复杂数据类型的ws来说太繁琐了。
比较而言,AXIS2对ms产品的支持力度还是值得肯定的。
然后在测试程序中加入客户端代码调用。调用的代码就不写了,和原先的调用方法没什么两样。
运行时出现如下异常:
java 代码
org.apache.axis2.AxisFault:&Transport&out&has&not&been&set &&
&at&org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:440) &&
&at&org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:329) &&
&at&org.apache.axis2.description.OutInAxisOperationClient.execute(OutInAxisOperation.java:294) &&
&at&movie.MovieManagerStub.GetMovieByID(MovieManagerStub.java:7294) &&
&at&movie.TestMovieClient.main(TestMovieClient.java:22) &&
&at&sun.reflect.NativeMethodAccessorImpl.invoke0(Native&Method) &&
&at&sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) &&
&at&sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) &&
&at&java.lang.reflect.Method.invoke(Method.java:585) &&
&at&com.intellij.rt.execution.application.AppMain.main(AppMain.java:90) &&
&
网上对这个异常描述很少,无奈之下,下载了axis2源代码手动跟踪......
终于发现问题:
&在wsdl描述文件中有如下的xml语句
&name="MovieManager"&&
&&name="MetadataExchangeTcpBinding_MovieManager"&binding="i0:MetadataExchangeTcpBinding_MovieManager"&&
&&&location="net.tcp://10.0.0.249:8002/BusinessPlatform/MovieManager"&& &&
&&net.tcp://10.0.0.249:8000/BusinessPlatform/MovieManager& &&
&就是"net.tcp://"这段,axis2对net.tcp这个传输方式不能辨识。
axis2的kernal包中的org\apache\axis2\deployment\axis2_default.xml文件对支持的传输方式作了配置:
&
xml 代码
&name="http"&&
&&&&&&&&&&&&&&&&&&&&&&class="org.apache.axis2.transport.http.SimpleHTTPServer"&&
&&&&&&&&name="port"&locked="false"6060&&
&&&&name="tcp"&&
&&&&&&&&&&&&&&&&&&&&&&class="org.apache.axis2.transport.tcp.TCPServer"&&
&&&&&&&&name="port"&locked="false"6061&&
&&&&name="jms"&&
&&&&&&&&&&&&&&&&&&&&class="org.apache.axis2.transport.jms.JMSSender"&&
&&&&name="tcp"&&
&&&&&&&&&&&&&&&&&&&&class="org.apache.axis2.transport.tcp.TCPTransportSender"&&
&&&&name="local"&&
&&&&&&&&&&&&&&&&&&&&class="org.apache.axis2.transport.local.LocalTransportSender"&&
&&&&name="http"&&
&&&&&&&&&&&&&&&&&&&&class="org.apache.axis2.monsHTTPTransportSender"&&
&&&&&&&&name="PROTOCOL"&locked="false"HTTP/1.1&&
&&&&&&&&name="Transfer-Encoding"&locked="false"chunked&&
&&&&name="https"&&
&&&&&&&&&&&&&&&&&&&&class="org.apache.axis2.monsHTTPTransportSender"&&
&&&&&&&&name="PROTOCOL"&locked="false"HTTP/1.1&&
&&&&&&&&name="Transfer-Encoding"&locked="false"chunked&&
核心&程序会根据这个配置来获得TransportSender这样的一个实例用于数据传输。
如果想要支持"net.tcp",可能需要扩展这个配置文件,甚至于需要自己去编写sender类。
对于wcf不是很了解,不知道"net.tcp"是否很换成其他协议,我需要和对方技术人员沟通下,看有无其他的解决方法。
在对方调整后,wsdl描述中不再出现"net.tcp"之类ms特有的通讯协议,生成和调用顺利通过。
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& ---by waterdh
浏览 (712)
一、不得利用本站危害国家安全、泄露国家秘密,不得侵犯国家社会集体的和公民的合法权益,不得利用本站制作、复制和传播不法有害信息!
二、互相尊重,对自己的言论和行为负责。
本文标题:
本页链接:

我要回帖

更多关于 axis2 生成wsdl 的文章

 

随机推荐