Tag: wcf

开发人员无能为力破坏了Web服务的互操作性?

您如何开发Web服务以及如何创建WSDL? 你在WSDL中包含了什么? 这个问题是基于开发人员没有正确使用WSDL的观察。 WSDL描述了该服务。 我认为服务描述应该包括使用该服务所需的一切。 因此,如果我使用任何WS- *协议,我必须包含描述该用法的WS-Policy。 我经常访问与WCF相关的MSDN论坛 – 用于创建Web服务的.NET API。 几乎每天都会出现类似的问题:“我有Java安全的Web服务,我需要在.net客户端中使用该服务”。 第一个答案通常要求该Java Web服务的WSDL。 不幸的是,WSDL几乎每次只描述方法和消息。 安全信息完全缺失=> WSDL没有描述该服务,因为基于WSDL中的信息,您无法使用该服务! Java世界的情况如何? 你使用WS政策吗? 如果您没有足够的技巧来编写WSDL,您是否有支持工具来为您创建WSDL? 当一个团队必须使用其他团队提供的服务时,您如何分享有关服务的信息? 我还从其他角度提出了一些问题:Java开发人员在使用.NET创建的Web服务时遇到了哪些问题? 在许多不同平台必须通过Web服务进行通信的项目中,我觉得这很痛苦。 开发人员不共享单一语言(应该是带有策略的WSDL),并且大多数时候他们无法解释他们使用的WS- *function,因为它被某些API覆盖。 如果我们包含这样一个事实,即API中通常只支持有限的一组WS- *特性,那么我们就完全搞乱了。 SOAP消息的逆向工程非常耗时。

WCF FaultException 是否支持与Java Web服务错误的互操作

我编写了一个java axis2 1.4.1 Web服务和.net 3.5 WCF客户端,我试图捕获抛出的wsdl错误。 与.net 2.0不同,.net 3.5声称支持wsdl:fault ,服务引用向导确实在客户端代理中生成所有正确的错误类。 但是当我试图捕获一个错误时,它似乎没有正确序列化,所以我只能catch (FaultException ex)而不是我实际使用FaultException抛出的类型FaultException 我查看了我的reference.cs我可以看到向导已经为我的操作添加了正确的FaultContract 。 [System.CodeDom.Compiler.GeneratedCodeAttribute(“System.ServiceModel”, “3.0.0.0”)] [System.ServiceModel.ServiceContractAttribute(Namespace=”http://www.mycomp.com/wsdl/Foo”, ConfigurationName=”FooServiceProxy.Foo”)] public interface Foo { [System.ServiceModel.OperationContractAttribute(Action=”http://www.mycomp.com/Foo/list”, ReplyAction=”*”)] [System.ServiceModel.FaultContractAttribute(typeof(TestWsdlFaultsApp.FooServiceProxy.SimpleFault), Action=”http://www.mycomp.com/Foo/list”, Name=”simpleFault”)] [System.ServiceModel.XmlSerializerFormatAttribute()] TestWsdlFaultsApp.FooServiceProxy.listResponse list(TestWsdlFaultsApp.FooServiceProxy.listRequest request); } 我还需要在.net中做些什么才能让它发挥作用吗? 或者WCF仅支持来自.net Web服务的自定义wsdl错误? inheritance人我的wsdl

忽略Axis客户端上的WCF服务的认证身份validation

我为WCF服务创建了一个轴客户端(客户端由Eclipse生成,使用WSDL作为输入)。 使用HTTP时客户端工作正常。 使用HTTPS时,我收到以下exception: javax.net.ssl.SSLHandshakeException:sun.security.validator.ValidatorException:PKIX路径构建失败:sun.security.provider.certpath.SunCertPathBuilderException:无法找到所请求目标的有效证书路径 我理解错误,但我不想给它一个证书所在的位置。 我想告诉Axis避免这一步(接受任何证书而不检查它)。 我知道怎么用HttpsURLConnection(创建一个什么都不做的自定义validation器),但我不知道怎么用轴…(我怎么能告诉轴使用我的自定义validation器,或者更好,怎么能我告诉它完全忽略这一步骤。 有人能帮我吗? 谢谢, 玛坦

不同的WCF绑定,它们的差异以及与其他平台的兼容性

我正在寻找关于WCF绑定主题的一些很好的技术细节,我有兴趣知道以下事情。 不同WCF绑定列表及其特殊用途和限制。 兼容性/与其他平台的互操作性,如在Java,PHP客户端中使用WCF服务。 支持哪种绑定,哪种绑定不支持。 如果我想通过服务API获取/发布安全数据,如果客户端应用程序是Java或Php,我应该使用哪种绑定? 我通过互联网浏览了不同的材料,但它没有详细而且有些分散。 等待一些好的回应。

如何将私钥文件从Java转换为.net x509Certificate2

我正在编写一个.NET客户端应用程序,它使用Java Web服务并需要签署已发送的请求(与此其他问题相关 )。 我已经提供了private.key文件(和.X509证书)和Java源代码示例。 证书看起来像服务的公钥,private.key是我用来签署请求的。 在Java源代码中,我可以看到它们将文件转换为字节数组并将其传递给PKCS8EncodedKeySpec类的构造函数。 一些谷歌搜索表明这个文件是私钥哈希(虽然我可能是错的)。 有没有办法在.Net中使用它或将其转换为.Net可以使用的东西? 此链接提到转换公钥/私钥,但我没有,或者它是否有效。 有没有人有更多的信息可供使用? 比如这个文件究竟是什么? 如果我将其作为字节数组读入并将其转换为字符串,我会加载HEX(例如AA-BB-06等),但无论我使用何种编码,我都无法将其转换为任何有用的内容。 该文档表明它符合PKCS#8标准。 我试过(由@gtrig建议)命令: openssl rsa -in pkcs8privatekey.der -inform der -out privatekey.pem 但这给了我以下内容: unable to load Private Key 32096:error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag:tasn_dec.c:1306: 32096:error:0D06C03A:asn1 encoding routines:ASN1_D2I_EX_PRIMITIVE:nested asn1 error:tasn_dec.c:830: 32096:error:0D08303A:asn1 encoding routines:ASN1_TEMPLATE_NOEXP_D2I:nested asn1 error:tasn_dec.c:749:Field=n, Type=RSA 32096:error:0D09A00D:asn1 encoding routines:d2i_PrivateKey:ASN1 lib:d2i_pr.c:99: 我也遇到类似NET和PEM -inform args的错误。 和: openssl asn1parse -in private.key […]