BizTalk Oracle WCF适配器错误 [英] BizTalk Oracle WCF adapter error

查看:62
本文介绍了BizTalk Oracle WCF适配器错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述



 

在轮询我的oracle表时,我在开发和测试环境中都遇到了这个错误:

  ; $


消息传递引擎未能添加接收位置"接收位置1"使用URL"oracledb:// test /"到适配器"WCF-OracleDB"。原因:"System.ArgumentException:Column'PROVIDERTYPE'不属于表SchemaTable。

 

at System.Data.DataRow.GetDataColumn(String columnName)<来自System.Data.DataRow.get_Item(String columnName)的
 

来自Microsoft的
 

。 Adapters.OracleDB.OracleCommonMetadataResolverHandler.ResolvePollingStmtRecord(OracleStructuredTypeMetadata& typeMetadata,OracleCommonConnectionWrapper oracleConnection,OracleCommonExecutionHelper executionHelper)

 

at Microsoft.Adapters.OracleDB.OracleCommonMetadataResolverHandler.ResolveTypeMetadata(String nodeId, TimeSpan超时,TypeMetadataCollection& extraTypeMetadataResolved)

 

at Microsoft.ServiceModel.Channels.Common.Design.MetadataCache.GetTypeMetadata(String uniqueId,Guid clientId,TimeSpan timeout)

 

at Microsoft.ServiceModel.Channels.Common.MetadataLookup.GetTypeDefinition(String typeId, TimeSpan超时)

 

at Microsoft.Adapters.OracleCommon.OracleCommonTypeMetadataPreResolver.ResolveAll(MetadataLookup metadataLookup,OracleCommonExecutionHelper oracleCommonExecutionHelper)

 

at Microsoft.Adapters.OracleDB.OracleCommonMetadataResolverHandler.ResolveOperationMetadata(String operationId,TimeSpan timeout,TypeMetadataCollection& extraTypeMetadataResolved)

 

at Microsoft.ServiceModel.Channels.Common.Design.MetadataCache.GetOperationMetadata(String uniqueId,Guid clientId,TimeSpan timeout)
$ b Microsoft.Adapters.OracleDB.OracleDBInboundContract..ctor上的$ b 

(OracleDBConnection连接,IOracleCommonUDTHelper oracleUdtHelper,MetadataLookup metadataLookup)

 

at Microsoft.Adapters.OracleDB.OracleDBConnection.Microsoft.ServiceModel.Channels.Common.IConnection.BuildHandler [TConnectionHandler](MetadataLookup metadataDictionary)

 

at Microsoft.ServiceModel .Channels.Common.Design.ConnectionPool.GetConnectionHandler [TConnectionHandler](Guid clientId,TimeSpan超时,MetadataLookup metadataLookup,String& connectionId)

 

at Microsoft.ServiceModel。 Systems.ServiceModel.Channels.CommunicationObje的Channels.Common.Channels.AdapterChannelListener`1.OnOpen(TimeSpan timeout)

 

ct.Open(TimeSpan超时)

 

在System.ServiceModel.Dispatcher.ChannelDispatcher.OnOpen(TimeSpan超时)

  < System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan超时)的
来自System.ServiceModel.ServiceHostBase.OnOpen的
 

(TimeSpan超时) )$
 

at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)

 

at Microsoft.BizTalk.Adapter.Wcf.Runtime.WcfReceiveEndpoint.Enable()

 

at Microsoft.BizTalk.Adapter.Wcf.Runtime.WcfReceiveEndpoint..ctor (BizTalkEndpointContext endpointContext,IBTTransportProxy transportProxy,ControlledTermination控件)

 

at Microsoft.BizTalk.Adapter.Wcf.Runtime.WcfReceiver`2.AddReceiveEndpoint(String url,IPropertyBag adapterConfig ,IPropertyBag bizTalkConfig)"。$
 



我的开发环境是Windows 7,VS 2010,BizTalk 2010,MSS QL server 2008 SP1,Oracle Client 11g R1

 

测试环境:Windows 2008服务器,BizTalk 2010,MSSQL server 2008 SP1,Oracle Client 11g R1
 



能告诉我这是什么问题以及如何解决?

谢谢。

Hi,
 
While polling my oracle table i'm getting this error on both development and test environments:
 

The Messaging Engine failed to add a receive location "Receive Location1" with URL "oracledb://test/" to the adapter "WCF-OracleDB". Reason: "System.ArgumentException: Column 'PROVIDERTYPE' does not belong to table SchemaTable.
 
at System.Data.DataRow.GetDataColumn(String columnName)
 
at System.Data.DataRow.get_Item(String columnName)
 
at Microsoft.Adapters.OracleDB.OracleCommonMetadataResolverHandler.ResolvePollingStmtRecord(OracleStructuredTypeMetadata& typeMetadata, OracleCommonConnectionWrapper oracleConnection, OracleCommonExecutionHelper executionHelper)
 
at Microsoft.Adapters.OracleDB.OracleCommonMetadataResolverHandler.ResolveTypeMetadata(String nodeId, TimeSpan timeout, TypeMetadataCollection& extraTypeMetadataResolved)
 
at Microsoft.ServiceModel.Channels.Common.Design.MetadataCache.GetTypeMetadata(String uniqueId, Guid clientId, TimeSpan timeout)
 
at Microsoft.ServiceModel.Channels.Common.MetadataLookup.GetTypeDefinition(String typeId, TimeSpan timeout)
 
at Microsoft.Adapters.OracleCommon.OracleCommonTypeMetadataPreResolver.ResolveAll(MetadataLookup metadataLookup, OracleCommonExecutionHelper oracleCommonExecutionHelper)
 
at Microsoft.Adapters.OracleDB.OracleCommonMetadataResolverHandler.ResolveOperationMetadata(String operationId, TimeSpan timeout, TypeMetadataCollection& extraTypeMetadataResolved)
 
at Microsoft.ServiceModel.Channels.Common.Design.MetadataCache.GetOperationMetadata(String uniqueId, Guid clientId, TimeSpan timeout)
 
at Microsoft.Adapters.OracleDB.OracleDBInboundContract..ctor(OracleDBConnection connection, IOracleCommonUDTHelper oracleUdtHelper, MetadataLookup metadataLookup)
 
at Microsoft.Adapters.OracleDB.OracleDBConnection.Microsoft.ServiceModel.Channels.Common.IConnection.BuildHandler[TConnectionHandler](MetadataLookup metadataDictionary)
 
at Microsoft.ServiceModel.Channels.Common.Design.ConnectionPool.GetConnectionHandler[TConnectionHandler](Guid clientId, TimeSpan timeout, MetadataLookup metadataLookup, String& connectionId)
 
at Microsoft.ServiceModel.Channels.Common.Channels.AdapterChannelListener`1.OnOpen(TimeSpan timeout)
 
at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
 
at System.ServiceModel.Dispatcher.ChannelDispatcher.OnOpen(TimeSpan timeout)
 
at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
 
at System.ServiceModel.ServiceHostBase.OnOpen(TimeSpan timeout)
 
at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
 
at Microsoft.BizTalk.Adapter.Wcf.Runtime.WcfReceiveEndpoint.Enable()
 
at Microsoft.BizTalk.Adapter.Wcf.Runtime.WcfReceiveEndpoint..ctor(BizTalkEndpointContext endpointContext, IBTTransportProxy transportProxy, ControlledTermination control)
 
at Microsoft.BizTalk.Adapter.Wcf.Runtime.WcfReceiver`2.AddReceiveEndpoint(String url, IPropertyBag adapterConfig, IPropertyBag bizTalkConfig)".
 

My development environment is Windows 7, VS 2010, BizTalk 2010, MSSQL server 2008 SP1, Oracle Client 11g R1
 
Test environment: Windows 2008 server, BizTalk 2010, MSSQL server 2008 SP1, , Oracle Client 11g R1
 

Can you please let me know what is the problem and how can it be resolved?
Thanks.

推荐答案

您是否正在尝试从中检索数据Oracle源(即表,视图,包)具有列名称不存在或符合来自Oracle的传入消息的架构?您尝试使用
所拥有的架构验证来自oracle的消息。

Are you trying to retrieve data from Oracle source (i.e. table, view, package) that has a column name that is not present or adheres to schema for your incoming message from Oracle? You try validating the message that comes out of oracle with schema(s) you have.

HTH

Steef-Jan Wiggers

Ordina ICT BV | MVP& MCTS BizTalk Server 2010

Ordina ICT B.V. | MVP & MCTS BizTalk Server 2010

http://soa-thoughts.blogspot.com / |
@SteefJan

如果这样回答你的问题,请相应地标记


这篇关于BizTalk Oracle WCF适配器错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆