Skip to main content

BizTalk: Publishing Schema as WCF Endpoint Error


While working with Schema published as WCF service, after publishing schema as WCF endpoint when I tried to consume the service in client application I got the following error
“There was a failure executing the receive pipeline: "Custom.XmlReceive, Custom.BT.Pipelines, Version=1.0.0.0, Culture=neutral, PublicKeyToken=bf32dc0ac0a61497" Source: "ConsumConfig" Receive Port: "" URI: "/Custom/Test.svc" Reason: Could not find default endpoint element that references contract 'TrimProxy.ITriming' in the ServiceModel client configuration section. This might be because no configuration file was found for your application, or because no endpoint element matching this contract could be found in the client element”
My process flow is as follow
WCF service (Schema Endpoint) hosted on IIS server, calling BizTalk application. I was using some custom pipeline component for XMLReceive, This custom pipeline component was consuming few services, endpoint defined in  BTSNTSvc.exe.config file.
Now I got this error as my WCF Service is not able to find service endpoint setting used for Pipeline component, which is defined in BTSNTSvc.exe.config file.
Now question is “Why my WCF service is not able to read my   BTSNTSvc.exe.config file setting required for custom pipeline component?”
Answer:
As BizTalk uses two different Host process
·         BizTalkServerApplication : this host is used by all BizTalk application , This process read all required config setting from BTSNTSvc.exe.config
·         BizTalkServerIsolatedHost: All web/wcf service use this host, Know only web.config file.
As the WCF service which we have published run under BizTalkServerIsolatedHost ,This process read all configuration setting from local web.config file, When I tried to consume the published endpoint at run time it gave me above specified error, as the service is not able to find Endpoint setting required for Custom Pipeline component. And hence throw an error related to endpoint.
Solution for Error:
Just copy your required configuration setting from BTSNTSvc.exe.config and put it in Web.Config file of WCF service (IIS Virtual Directory).This will resolve your issue.

Comments

Popular posts from this blog

WCF MaxReceivedMessageSize max value in .config

MaxReceivedMessageSize parameter in binding config   file:   For max file size in WCF, we need to set following parameter in binding files. <binding name="MyService"        maxReceivedMessageSize="2147483647"        maxBufferSize="2147483647" transferMode="Streamed" >        <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647"      maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647"/> <!-- other binding info here, such as security --> </binding> Max possible size: MaxReceivedMessageSize to 2147483647 (i.e. Int32.MaxValue), which is 2GB For our case, as we are using WsHttpBinding. <wsHttpBinding>         <binding name="wsHttpBindingSettings" maxReceivedMessageSize="2147483647">           <readerQuotas maxDepth="2147483647" maxStringContentLength

biztalk schema remove ns0 prefix

We can remove ns0 prefix simply by set the schema elements property or both elements and attributes properties to be qualified. To do that follow my steps: 1-       Open your schema 2-       Right Click <Schema> and select properties 3-       Use schema property editior and Set [Element FromDefult] to Unqualified , and then set [Attribute FromDefault] to Unqualified if you are using attributes in your schema. After applying the steps above, both XML instances below will be valid: Instance 1 (with ns0) < ns0:Root xmlns:ns0 = " http://RandomBizTalkProject.Schema1 " >   < Field1 > Field1_0 </ Field1 >   < Field2 > Field2_0 </ Field2 > </ ns0:Root > Instance 2 (without ns0) < Root xmlns = " http://RandomBizTalkProject.Schema1 " >   < Field1 > Field1_0 </ Field1 >   < Field2 > Field2_0 </ Field2 > </ Root >

Object Oriented Programming Concepts

OOP Basics Visual Basic was Object-Based, Visual Basic .NET is Object-Oriented , which means that it's a true Object-Oriented Programming Language . Visual Basic .NET supports all the key OOP features like Polymorphism , Inheritance , Abstraction and Encapsulation. It's worth having a brief overview of OOP before starting OOP with VB. Why Object Oriented approach? A major factor in the invention of Object-Oriented approach is to remove some of the flaws encountered with the procedural approach. In OOP, data is treated as a critical element and does not allow it to flow freely. It bounds data closely to the functions that operate on it and protects it from accidental modification from outside functions. OOP allows decomposition of a problem into a number of entities called objects and then builds data and functions around these objects. A major advantage of OOP is code reusability. Some important features of Object Oriented programming are as follows: Emphasis on