WCF-OracleDB adapter常见错误解决方法

Microsoft.ServiceModel.Channels.Common.MetadataException: Invalid argument: <BtsActionMapping xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <Operation Name="Select" Action="http://Microsoft.LobServices.OracleDB/2007/03/IBC_C/Table/PAM_UNIT/Select" />
</BtsActionMapping>

 这类错误一般是没有指定wcf action导致的,指定wcf action的方法可以在Orchestration中的MessageAssignment这里给消息属性进行赋值

Message_2=Message_1;
Message_2(WCF.Action)="http://Microsoft.LobServices.OracleDB/2007/03/IBC_C/Table/PAM_UNIT/Select";

  还可以通过修改端口的Operation Id 一般端口默认的都是Operation_1。你可以直接修改成如Select,这样就可以通过定义的<BtsActionMapping/>自动匹配了。

还有一类错误是

 Send Port. Details:"Microsoft.ServiceModel.Channels.Common.MetadataException: Metadata resolution failed for OperationId: "http://Microsoft.LobServices.OracleDB/2007/03/IBC_C/Table/PAM_UNIT/Select". ---> Oracle.DataAccess.Client.OracleException: Unable to load OraMTS

  这类错误原因是WCF-OracleDb 不支持MSDTC事务 默认情况下安装的Oracle Client都不选,所以要么重新选择安装组件,要么修改OracleDbBinding属性UseAmbientTransactions默认true,修改成false就可以解决。

  希望对大家有所帮助。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Google Dart

Flutter 构建完整应用手册-联网 顶

从大多数应用程序获取互联网上的数据是必要的。 幸运的是,Dart和Flutter为这类工作提供了工具!

1282
来自专栏Java帮帮-微信公众号-技术文章全总结

Web-第二十一天 Web商城实战一【悟空教程】

public class BaseServlet extends HttpServlet {

1954
来自专栏安恒网络空间安全讲武堂

XCTF-赛博地球杯工业互联网安全大赛web部分题解

0x01工控云管理系统项目管理页面解析漏洞 题目首先给出了源码: `http://47.104.156.32:20007/view-source.php` 关键...

6688
来自专栏刘君君

使用Spring Event解耦业务开发

Spring 事件是观察者模式的一种体现,对象间的一对多关系,被观察者发出信号时候会通知监听该事件的观察者;而发布-订阅模型往往需要一个调度中心,如消息队列等

2092
来自专栏24K纯开源

OpenProcess打开进程返回错误的问题

问题描述       项目中需要做一个小功能:能够查看系统中当前正在运行的进程的内存信息,如内存块类型、分配状态、访问权限等。如下图所示: ?       需要...

42710
来自专栏一只程序汪的自我修养

手把手教你用.NET Core写爬虫

自从上一个项目58HouseSearch从.NET迁移到.NET core之后,磕磕碰碰磨蹭了一个月才正式上线到新版本。

34312
来自专栏高性能服务器开发

windows完成端口(六)

系列目录 windows完成端口(一) windows完成端口(二) windows完成端口(三) windows完成端口(四) windows完成端口(五) ...

3474
来自专栏转载gongluck的CSDN博客

VC(win32)通过进程名杀死进程

#include "TlHelp32.h" void CKillProcessDlg::OnBnClickedOk() { // TODO: 在此添加...

3874
来自专栏社区的朋友们

Node 架构从三层到 N 层,实现代码重用和解耦

三层架构通常意义上是将整个业务应用划分为:控制层、业务逻辑层以及数据访问层,三层架构在 Java Web 项目中很常见,那么这种架构能否运用在 Node 项目中...

2.1K2
来自专栏進无尽的文章

实践-小细节Ⅳ

网上有很多方法,尝试起来都很麻烦,我这个方法还是比较简单的。 解决方法: 我们在手机用数据线连接到电脑时,会弹出很多手机里面的图片,你的隐私尽收眼底(好尴尬...

1191

扫码关注云+社区

领取腾讯云代金券