WCF-WebHttp Adapter issue?

Hello guys
I stumble on this problem while I was trying to develop a custom pipeline component that on runtime generates a GUID and affects it to the context and body of the message. That GUID is placed on Http Headers as a boundary (content type)
and on the message body. What it happens is that, on the first message that I send, everything goes well (header GUID matches body GUID, the service response it’s not important here), after the first message all the following messages on the header will have
the GUID from the first message that I send thought the port, although everything goes fine on the body. Like this:
Request #1:
Header: Content-Type: multipart/mixed; boundary=batch_bead1969-540e-4020-8b47-cf0fbcddef1c
Body:
bead1969-540e-4020-8b47-cf0fbcddef1ce
Request #2:
Header: Content-Type: multipart/mixed; boundary=batch_bead1969-540e-4020-8b47-cf0fbcddef1c
Body:
226dd0f5-501f-4da8-a871-b79e6ac512d0
Request #3:
Header: Content-Type: multipart/mixed; boundary=batch_bead1969-540e-4020-8b47-cf0fbcddef1c
Body:
98b7e6f9-c229-4a0b-a8f1-cd0c1f3e27e8
As you can see in red, between multiple requests the GUID is always the same, and it shouldn’t be since on the body is changing correctly. After some analysis we realized that the problem was with the property “HttpHeaders” (WCF property
schema), where we are writing the “content-type” in our custom pipeline component. It seems that for some reason the value of this property ain’t properly read after a first message went thought successfully.
Why do I say successfully? Well…
If there’s an error on send the message and the message gets dehydrated or suspended, the HttpHeaders seems to be “reseted” and read again, and everything goes as it should.
If the message went to successfully regardless of the response, the issue that I describe will happen.
Restarting the host instance seems to have no effect.
Sometime after the first message went thought successfully, HttpHeaders seem to be “reseted” and read again. Although I don’t know how much time, at least something above 15min.
Stop\Start the send seems to force an “reset” on the property.
Just to make clear some eventual questions, HttpHeaders is correctly written into context before entering the adapter, after the message went thought the adapter, we can see on fiddler that the message isn’t as it should.
I did some code to replicate this issue, and my Execute method on pipeline goes like this:
public Microsoft.BizTalk.Message.Interop.IBaseMessage Execute(IPipelineContext pContext, Microsoft.BizTalk.Message.Interop.IBaseMessage pInMsg)
Stream inMsgBodyStream = pInMsg.BodyPart.GetOriginalDataStream();
pInMsg.Context.Write("HttpHeaders", "http://schemas.microsoft.com/BizTalk/2006/01/Adapters/WCF-properties",
"content-type: multipart/mixed; boundary=batch_" + Guid.NewGuid().ToString());
return pInMsg;
I also try this behavior with the classic HTTP adapter, although another issues were raised, the fact is that Http Headers are correctly read between requests, so as far as we can tell this just happens with this adapter.
Does anybody had similar issue? So far I haven’t found a solution.
PS: I’m using Biztalk 2013 RTM
Thanks

Hey, someone else reported a similar issue with the WCF-WebHttp adapter for BizTalk 2013 - see this thread:
http://social.msdn.microsoft.com/Forums/en-US/biztalkgeneral/thread/e477ad7a-505c-4f86-9556-8075d747e447. I will report your finding to Microsoft support.
Thanks,
If this answers your question, please use the "Answer" button to say so | Ben Cline

Similar Messages

  • Biztalk 2013 Wcf-webhttp adapter Issue

    Hi
    I am trying to get WCF-WebHttp adapter working but it is ending  error.
    I created a service account with Bing api (can browse this url directly by providing login credentials)
    URL:
    https://api.datamarket.azure.com/Bing/SearchWeb/Web?Query='WA'
    These are my wcf-webhttp adapter settings
    URI
    https://api.datamarket.azure.com/Bing/SearchWeb
    http Method and URL Mapping
    <BtsHttpUrlMapping>
     <Operation Method="GET" Url="/Web?Query='WA'"/>
     </BtsHttpUrlMapping>
    it seems template matching is failing in wcf adapter as a result Outbound URL property is not getting promoted resulting below error.
    Can you please advice what is the missing piece in this configuration?
    Error Message:
    The Messaging engine failed to process a message submitted by adapter:WCF-WebHttp Source
    URL:https://api.datamarket.azure.com/Bing/SearchWeb. Details:The published message could not be routed because no subscribers were found. This error occurs if the subscribing orchestration or send
    port has not been enlisted, or if some of the message properties necessary for subscription evaluation have not been promoted. Please use the Biztalk Administration console to troubleshoot this failure.

    Hi
    Moreover I observed one more thing with another API if URI is brows able directly without Key it works
    Actual URL: https://ServerName/StoreMasterServices/Markets
    URI: https://ServerName/StoreMasterServices/
    Headers Info
    <BtsHttpUrlMapping>
    <Operation Method="GET" Url="/Markets" />
    </BtsHttpUrlMapping>
    This URI: https://ServerName/StoreMasterServices/    
    is brows able even without Key  (/Markets) and it is working fine.
    So Question is, is it mandatory to have URI brows able (with credentials if it needs)?

  • Custom headers are not exported correctly in the bindings for the WCF-WebHttp adapter

    I have an annoying issue with the bindings for the WCF-WebHttp adapter.
    As you know, the "Messages" tab of the WCF-WebHttp transport properties enables a developer to configure a number of static outbound HTTP headers. When I've entered two or more headers in the textbox, the CRLF between individual headers will be
    stripped after a bindings import. This means I cannot call RESTful services that require more than one custom HTTP header in a messaging-only scenario, because BizTalk goofs up the configuration.
    For example, when I enter the following headers in the textbox:
    Then export the bindings, and immediately import the bindings again (untouched), the textbox now shows:
    I did some brief analysis, and within the binding file's XML, the HttpHeaders property (contained in the TransportTypeData element) is not encoded/escaped in any way, so therefore the significant whitespace (in this case CRLF) that needs to be preserved
    is lost in the import process.
    Can anyone reproduce this and can anyone think of a workaround (without resorting to an orchestration)?

    I did some brief analysis, and within the binding file's XML, the HttpHeaders property (contained in the TransportTypeData element) is not encoded/escaped in any way, so therefore the significant whitespace (in this case CRLF) that needs to be preserved
    is lost in the import process.
    +1

  • WCF-WebHttp Adapter Substituting Nonstandard Characters In Address URI With Web Encoded Equivalent

    I’m using the WCF-WebHttp adapter to send an HTTP Get request to a REST API. The request has to be formatted as shown…
    http://xxx.xxx.xxx.xxx/HPRMServiceAPI/Record?q=title:test*&format=json
    Essentially this is searching for any records with “test” in their title and returning a JSON formatted response containing information on any records that match the search criteria. I don’t have any flexibility in how this request is formatted. It has to
    confirm to the syntax above.
    If I hardcode the above uri in the Address URI field in the WCF-WebHttp adapter configuration and put a request through my BizTalk application, BizTalk correctly sends that request and I get my expected response.
    So far so good.
    The problem is the query portion of the request string (“?q=title:test*” in the example above) needs to be created dynamically based on what is specified in an incoming request to my BizTalk application. It may contain many search criteria and is not limited
    to just record titles as in my example.
    This, I thought would be straight forward: I construct the query portion of the request string in a custom send pipeline and insert that value into a promoted property which is then used by the URL mapping mechanic of the WCF-WebHttp adapter.
    So now the uri in the Address URI field in the WCF-WebHttp adapter configuration simply contains…
    http://xxx.xxx.xxx.xxx/HPRMServiceAPI
    And the remaining part of the request is defined using a URL mapping…
    <BtsHttpUrlMapping>
    <Operation Name="DocumentSearchRequest" Method="GET" Url="/Record{searchquery}" />
    </BtsHttpUrlMapping>
    Where the {searchquery} variable is mapped to a promoted property.
    I can see that my custom send pipeline is correctly promoting the property and that it contains the correct value (e.g “?q=title:test*&format=json”). The problem is that the WCF-WebHttp adapter is now substituting the “?” with its web encoded equivalent
    (%3F). When I view the outgoing HTTP request in Fiddler it looks like this…
    http://xxx.xxx.xxx.xxx/HPRMServiceAPI/Record%3Fq=title:test*&format=json
    I have tried numerous ways of constructing the HTTP request, including hardcoding the offending “?q=” section into the URL mapping rather than having it in the promoted property…
    <Operation Name="DocumentSearchRequest" Method="GET" Url="/Record?q={searchquery}" />
    But this results in other characters (“:”, “&”, “=”) being web encoded in the outgoing HTTP request. Fiddler shows this…
    /HPRMServiceAPI/Record/?q=title%3atest*%26format%3djson
    Similarly, hardcoding the “/Record?q=” section in the Address URI field in the WCF-WebHttp adapter configuration like this…
    http://xxx.xxx.xxx.xxx/HPRMServiceAPI/Record?q=
    …and having the URL mapping contain just…
    <Operation Name="DocumentSearchRequest" Method="GET" Url="{searchquery}" />
    …results in the following outgoing HTTP request (Fiddler shows “?q=” portion now being placed at the end of the request string)…
    http://xxx.xxx.xxx.xxx/HPRMServiceAPI/Record/title:test*&format=json?q=
    So in summary it seems the WCF-WebHttp adapter is struggling to correctly assemble the HTTP request string when a portion of it is supplied in a promoted property and used by the URL mapping mechanic. Specifically when that portion contains nonstandard characters
    (“?”, “:”, “&”, “=” etc), the WCF-WebHttp adapter substitutes them for their web encoded equivalent.
    Any suggestions?

    Thanks Ravindar,
    Unfortunately, I don’t have control of the ‘receive side’. I can’t write a custom pipeline component at the receive side as it is not a BizTalk application, it’s a 3rd party web site exposing REST-like behaviour.
    I have however made progress. It occurred to me the WCF-WebHttp adapter isn't the problem. It's doing exactly what it should by URL encoding any potentially 'unsafe' characters that have been 'injected' into the URL via a promoted property. Potentially the
    promoted property could contain malicious content, especially if that content has been sourced directly from text in an incoming message to BizTalk.
    So the WCF-WebHttp adapter is URL encoding ‘?’ to ‘%3F’ which is probably good behaviour from a security point of view.
    http://xxx.xxx.xxx.xxx/HPRMServiceAPI/Record%3Fq=title:test*&format=json is a perfectly valid address.
    So I looked again at the actual error I was receiving from the 3rd party site. It was…
    HTTP/1.1 400 Bad Request
    System.Web.HttpException: A potentially dangerous Request.Path value was detected from the client (?).
    So, after some research, I edited the web.config of the 3rd party site so it no longer excludes any specific characters from the request.
      <system.web>
        <httpRuntime requestPathInvalidCharacters="" requestValidationMode="2.0" />
      </system.web>
    The 400 Bad Request has gone away and the 3rd party site is processing my request now. Unfortunately it still seems to have an issue with ‘%3F’ being used in place of ‘?’, but I think that will have to be resolved in IIS/web config on the receive side (maybe
    by using request filtering
    http://www.iis.net/configreference/system.webserver/security/requestfiltering) or by discussing with the sites developers.
    In summary, I now believe the WCF-WebHttp adapter is behaving correctly by substituting URL encoded values in place of potentially unsafe characters.
    Thanks for your help.

  • Biztalk 2013 WCF-WebHTTP Adapter - Outbound HTTP Headers

    Hi
    I have a requirement to connect to a service using the WCF-WebHTTP adapter that requires authentication to be passed in the Headers.
    A usercode and password is sent in the intial header and a security token is returned in the response header.
    This security token is then used in the header of each subsequent call to the service.
    I could not find anything in the documentation about getting and setting the "HTTP Header" data using maps or variables or using variables in the "Outbound HTTP Headers" on the adapter transport properties.
    Any help on this would be gratefully received.
    Malcolm

    You can set the outbound HTTP header in WCF-WebHTTP adapter by 2 ways
    1) At adapter level Change adapter properties
    2)Changing Message context property at Orchestration or at pipeline
    Its been well documented here
    http://blog.codit.eu/post/2013/04/30/Using-HttpHeaders-with-WCF-WebHttp-Adapter-on-Biztalk-2013.aspx
    Thanks
    Abhishek

  • Error handling HTTP 400 in WCF-WebHttp adapter BizTalk 2013

    Hi!
    Does anyone knows how to catch HTTP errors when using WCF-WebHttp REST adapter in BizTalk 2013? I've looked into the article BizTalk
    Server: REST Services Error Handling, but that is for BizTalk 2010 using the WCF-Custom adapter.
    What I want is to catch the exception in an orchestration, and do some actions dependent on which HTTP error it is, i.e. HTTP 400.
    Idar H.

    Hi Idar,
    Welcome to BizTalk forum.
    From your description above, I don't have exact same scenario like yours, this scenario exposes a BizTalk Orchestration as a RESTful webservice using WCF-WebHttp, perhaps it will be good reference for you. See:
    http://blog.tallan.com/2014/09/29/wcf-webhttp-and-custom-json-error-messages/
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • WCF-SQL adapter issue

    Hi all,
    I have ne issue with adapter when i am polling data from sqldb the dataset is creating in biztalk how can i add the elements in that,i am using this first time.
    Regards,
    Raman

    What do you mean "add the elements"?
    If you add a column to the SQL ResultSet, just add the corresponding Element to the Schema in the Schema Designer.
    If the ResultSet changes significantly, you can just re-run the Wizard.
    There is nothing special or remotely complicated about this.

  • Sending an XML that contains CDATA to a SOAP service using wcf-webhttp adapter

    I've run into a rather unique problem when trying to send an xml that contains the <![cdata[]]> tag to a soap service.  Without the tag the xml sends through without issue.  However, when I add the cdata tag within the xml, BizTalk immediately
    fails without even attempting to send to the service.  I receive the following error:
    "The published message could not be routed because no subscribers were found. This error occurs if the subscribing orchestration or send port has not been enlisted, or if some of the message properties necessary for subscription evaluation have not
    been promoted. Please use the Biztalk Administration console to troubleshoot this failure. "
    I have ensured that the send adapter is enlisted and started. 
    This is on a BizTalk 2013 installation.
    Any and all help is appreciated!
    Thanks

    as per my understanding, if you use the
    <![cdata[]]> tag in sending message, BizTalk is not able to send the message as it is not matching with your send message schema that is why error  'The
    published message could not be routed because no subscribers were found.....' 
    Please compare the message format or configured schema in send shape and message which suspended when
    used <![cdata[]]> tag used.
    Regards
    Suman

  • Can Wcf-Custom Adapter implement Wcf-WebHttp Functionality?

    Can the Wcf-Custom adapter implement the same functionality as the Wcf-WebHttp adapter in BizTalk 2013? In particular, can it provide the same functionality as the operation map and the variable map? If not, is there any other way to provide Wcf-WebHttp
    functionality without hosting an adapter in IIS with an isolated host?
    Thanks!

    Yes, but...
    You can set the mappings on outgoing messages with some new Context Properties.  This describes how to do it on a Dynamic Port, but it should work the same on a static port. 
    http://masteringbiztalkserver.wordpress.com/2013/11/11/calling-restful-service-using-dynamic-send-ports-biztalk-2013/
    The receive side is a bit different since I'm 97% sure all the mapping happens in the BizTalk Adapter (WS-WebHttp) not any of the binding elements.
    However, you can essentially replicate that functionality with a Custom Pipeline Component.  In that case you would use the WCF-Custom Adapter with the webHttpBinding.

  • BizTalk WCF-WebHttp Custom Headers per message

    Hi,
    I have a requirement to connect to a service using the WCF-WebHTTP adapter that requires add custom http Header "X-Auth: <Value varies for messageType>" per message.
    So am using dynamic Request-Response port to set HTTPHeaders dynamically per message. I am using following code to assign HttpHeaders in Message Assignment Shape.
    Msg_CogSrvReq(WCF.HttpHeaders)="X-Auth: "+<value that extracted from a another service>;
    However while testing these, am getting an error "X-Auth header not found in request" from the service.
    Why this HttpHeader not passing to the service while requesting? Is am missing anything?
    Thanks,
    Praveen
    Praveen

    Hi Praveen,
    I have seen this issue where when you try to set the HTTPHeader properties, the WCF-WebHTTP adapter
    ignores it and the outgoing message always goes without the custom HTTPHeader that’s been set in Orchestration.
    We had a similar situation like yours where I had to set a GUID as one of the properties in the HTTPHeader and needed to use WCF-WebHTTP
    adapter. Also if you use a static adapter and configure the properties, different GUIDs would not get generated per message instance, this is due to the way adapter initialize the message instances. So the only solution is to have dynamic GUID per message
    instance is using the dynamic port as you do.
    And for setting the dynamic HTTPHeader properties with WCF-WebHTTP adapter,
    I used a custom pipeline component with a code as below. Though you have the dynamic send port, your dynamic port need to have pipeline configured, in this case you can use a custom pipeline with a component in it will following code:
    public Microsoft.BizTalk.Message.Interop.IBaseMessage Execute(IPipelineContext pContext, Microsoft.BizTalk.Message.Interop.IBaseMessage pInMsg)
    pInMsg.Context.Write("HttpHeaders", "http://schemas.microsoft.com/BizTalk/2006/01/Adapters/WCF-properties", "X-Auth: "+<value that extracted from a another service>);
    return pInMsg;
    Check the following article in this context:
    http://www.codit.eu/blog/2013/04/30/using-httpheaders-with-wcf-webhttp-adapter-on-biztalk-2013/
    If this answers your question please mark it accordingly. If this post is helpful, please vote as helpful by clicking the upward arrow mark next to my reply.

  • WCF-WebHttp dynamic URL and Dynamic Header/Behavior configuration.

    HI,
    I have an requirement to integrate with the REST Services in BizTalk Server 2013 R2, And This REST Service URL and HTTP Headers will differs per message. So I had created an Orchestration with the Dynamic Request-Response port and assign the properties in
    Message Assignment Shape. However while testing HTTP Headers were not added to service request message.
    I had tried with create Custom endpoint behaviour and assigned this behaviour to service request in Orchestration, however this property also not assigned from the Orchestration.
    Is this a bug for WCF-WebHttp Adapter? Is any other options to achieve my requirement?
    Thanks,
    Raj
    Praveen

    Hi Praveen,
    Its a known bug already
    reported to Microsoft. 
    BizTalk 2013 servers that have been upgraded from BizTalk 2010 are missing
    some of the new global properties including HttpHeaders properties because
    of this even in orchestration we cannot change the HttpHeaders on messages.
    As a workaround WCF behavior extension
    can be used to solve this problem.
    Which can be downloaded from here.
    For the detailed explanation, I would adivce you to follow the below link on how to dynamically change
    the WCF-HttpHeaders for WCF-WebHTTP adapter.
    Dynamic
    WCF-HttpHeaders for WCF WebHttp adapter
    There is already a discussion going on around this on another post. Ashwin has also recommend to use custom pipeline component as a work around .
    Refer: BizTalk WCF-WebHttp Custom Headers per message
    Rachit
    Please mark as answer or vote as helpful if my reply does

  • WCF-WebHttp REST configuration

    I'm trying to configure the WCF-WebHttp adapter to retreive data from a REST endpoint, specifically a contact in CRM.  I need to include a filter to return only the contact that I want.  When I include a hardcoded value in the Uri it works fine:
    <BtsHttpUrlMapping>
      <Operation Name="Query" Method="GET" Url="?$filter=bsg_ProLicenseNumber eq '74309'" />
    </BtsHttpUrlMapping>
    However, I need to use a parameter here.  I have configured a parameter in the variable mapping section called PCCNUM.  When I include that in my Uri I get an error:
    <BtsHttpUrlMapping>
      <Operation Name="Query" Method="GET" Url="?$filter=bsg_ProLicenseNumber eq {PCCNUM}" />
    </BtsHttpUrlMapping>
    Error:  The Uri Template '?$filter=bsg_ProLicenseNumber eq {PCCNUM}' is not valid; each portion of the query string must be of the form 'name=value', when value cannot be a compound segment. 
    I have tried several ways of formatting {PCCNUM}, (single quotes, double quotes, parenthesis, encoding, etc.) but no luck.  Any ideas?
    Thanks,
    Frank

    Hi,
    The Variable Mapping options in the Send Port are limited. Another option is to use an Dynamic Send Port. In that case you have full control over the URI in the Orchestration.
    How to Configure a WCF-WebHttp Send Port
    http://msdn.microsoft.com/en-us/library/jj572853(v=bts.80).aspx
    Calling Restful Service using Dynamic Send Ports – BizTalk 2013
    http://masteringbiztalkserver.wordpress.com/2013/11/11/calling-restful-service-using-dynamic-send-ports-biztalk-2013/ 
    Kind regards,
    Tomasso Groenendijk
    Blog 
    |  Twitter
    MCTS BizTalk Server 2006, 2010
    If this answers your question please mark it accordingly

  • Issues with creating and sending BOM XML IDOC to SAP using 2010 WCF-SAP Adapter (without using Biztalk Server)

      I'm trying to replace an existing Biztalk 2006 Send BOM IDOC process, and completely remove Biztalk server from the equation.   The existing Bizatalk 2006 server receives an input BOM (Bill of Materials) flat file, and using a Biztalk Map (BM08),
    and Orchestration, generates an Idoc and sends it to SAP.
      In my replacement C# program, I'm using the 2010 WCF-SAP Adapter, and am trying to generate the BOMMAT03 XML IDOC it to SAP.  
      I generated the BOMMAT03 schema from SAP using the Add Adapter Service in VS 2010.  I was able to generate a BM08 XSLT from the existing BMO8 map in the current Biztalk 2006 process.  I am able to run a XSLT transform on the input BOM flat
    file, and generate an XML file from that.  
      However, I've run into a few issues.   First of which, is that the XML file that is generated from the XSLT transform is NOT the same schema as the BOMMAT03 schema expects.  It's somewhat similar, but different enough that I have to manually
    translate between the two in my code.  I've verified that both the original Bitztalk 2006 process and my replacement program use BOMMAT V3 from SAP.  Question--Is Biztalk 2006 server doing some other magic to turn that transormed XML into the BOMMAT03
    schema?    
     I ended writing code which translates the transformed XML into the BOMMAT03 schema (which is a strong typed XML IDOC at this point).
      However, when I try to send the BOMMAT03 XML IDOC, I get an exception "Object reference not set to an instance of an object."
                   idocClient.Send(idocData, ref sadapterTxGuid);
    idocData is of type BOMMAT03, and I've verified that the various fields are populated.  
      Any help is appreciated. 

    Well, putting in a MSDN subscription support ticket for Biztalk server actually helped with the issue.  They didn't find, or fix the issue directly.  But one of the examples (https://randypaulo.wordpress.com/tag/idoc/) they sent over, jogged my
    memory, and I realized in the code snippet below, I had accidentally deleted the 1st line.  Such a simple mistake, yet was easy to overlook.  The URL example is almost EXACTLY like my code, but without the transform and translation code to convert
    from input XML file to IDOC XML.  If someone is interested in that, let me know.    
    //Forgot the 1st line.  
    idocClient = new IdocBOMMAT03SIEIS_WED_BOMMAT03V3R700Client(binding, endpointAddress);
     idocClient.Send(idocData, ref sadapterTxGuid);
    For anyone else interested in knowing, you CAN send a strongly typed IDOC to SAP using C#.NET and the WCF SAP 2010 Adapter, using the IDOC Binding Client class you generated using the Add Adapter Service Reference in VS2010.  
    The one difference, which no one, not even the tech support from MS could tell me, was why the XSLT which I generated from the original map, did not transform the input BOM XML into the BOMMAT03 XML.  Instead, it transformed it into an intermediate
    XML, which resembled the BOMMAT03 IDOC XML, but still needed to be translated to the BOMMAT03 IDOC format.  
    The tech support person swore up and down that it should.  But I believe that something happens in Biztalk server, after the Mapping occurs, maybe in the Pipeline, which converts that
    intermediate XML into the final BOMMAT03 IDOC XML format.
    I do think that the examples are severely lacking in showing how to send a strong typed IDOC using C# and the WCF-SAP Adapter.  Even worse, the examples are completely lacking in how to actually generate a weakly typed IDOC.  They show how to send
    that weakly typed IDOC, but show me, or give me a class to be able to generate it.
    I realize that this is not quite the "recommended way" to do it, but in reality, not everyone wants or even needs a full Biztalk installation.   For some simple stuff like this, a C#.NET program and WCF-SAP adapter do the trick.  

  • Issue with WCF-Custom adapter polling Oracle db

    Hi,
    I have a scenario where BizTalk connects to Oracle db using WCF-custom adapter with OracleDbBding which has queries at P below properties:
    PolledDataAvailableStatement
    PollingStatement
    PostPollStatement
    The interface was working for more than 2 years, but when oracle server is moved from prod to DR server, it started throwing crazy errors.I have gone thru many blogs there seems to no definitive answer or solution for this.
    I have been getting below errors:
    The adapter "WCF-Custom" raised an error message. Details "The faulted WCF service host at address oracledb:// could not be restarted, and as a result no messages can be
    received on the corresponding receive location. BizTalk Server will continue trying to start the service host until it succeeds or the receive location is disabled.
    The adapter "WCF-Custom" raised an error message. Details "The faulted WCF service host at address oracledb://xxxxx/?PollingId= could not be restarted, and as a result
    no messages can be received on the corresponding receive location. BizTalk Server will continue trying to start the service host until it succeeds or the receive location is
    disabled.
    To fix the problem, you may choose to:
    1. Use the error information given to fix the problem.
    2. Restart the receive location.
    3. Keep waiting for BizTalk to recycle the service host. Another event will notify if the service host is successfully started.
    Detailed error information: Microsoft.ServiceModel.Channels.Common.ConnectionException: Connection request timed out ---> Oracle.DataAccess.Client.OracleException Connection
    request timed out    at Oracle.DataAccess.Client.OracleException.HandleErrorHelper(Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, OpoSqlValCtx* pOpoSqlValCtx, Object
    src, String procedure)
       at Oracle.DataAccess.Client.OracleException.HandleError(Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, Object src)
       at Oracle.DataAccess.Client.OracleConnection.Open()
       at Microsoft.Adapters.OracleCommon.OracleCommonConnectionWrapper..ctor(String connectionString, OracleCommonExecutionHelper executionHelper)
       at Microsoft.Adapters.OracleDB.OracleDBConnection.Microsoft.ServiceModel.Channels.Common.IConnection.Open(TimeSpan timeout)
       --- End of inner exception stack trace ---
       at Microsoft.Adapters.OracleDB.OracleDBConnection.Microsoft.ServiceModel.Channels.Common.IConnection.Open(TimeSpan timeout)
       at Microsoft.ServiceModel.Channels.Common.Design.ConnectionPool.GetConnection(Guid clientId, TimeSpan timeout)
       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 System.ServiceModel.Channels.CommunicationObject.Open()
       at Microsoft.BizTalk.Adapter.Wcf.Runtime.WcfReceiveEndpoint.Enable()
       at Microsoft.BizTalk.Adapter.Wcf.Runtime.WcfReceiveEndpoint.RecycleServiceHost(Object unused)".-------------------------
    The adapter "WCF-Custom" raised an error message. Details "System.ServiceModel.CommunicationObjectFaultedException: The communication object,
    Microsoft.ServiceModel.Channels.Common.Channels.AdapterInputChannel, cannot be used for communication because it is in the Faulted state.
       at System.ServiceModel.Channels.CommunicationObject.Close(TimeSpan timeout)
       at System.ServiceModel.Channels.CommunicationObject.Close()
       at System.ServiceModel.Dispatcher.ErrorHandlingReceiver.Close()".

    "Oracle.DataAccess.Client.OracleException Connection  request timed out    at Oracle.DataAccess.Client.OracleException.HandleErrorHelper(Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, OpoSqlValCtx* pOpoSqlValCtx, Object 
    src, String procedure)"
    Looks like it's the Oracle client that can't connect. Can you run any queries from the Oracle tools?

  • BizTalk 2010 - WCF-Custom Adapter with sqlbinding - rror was encountered while attempting to transmit the message

    BizTalk 2010 RTM version with SQL 2008 R2 .
    An intermittent issue with the WCF-Custom adapter with sqlbinding, calling a SQL stored proc as below
    Message gets suspended in BT Admin console  with "An internal server error was encountered while attempting to transmit the message" .
    Event log shows 
    A message sent to adapter "WCF-Custom" on send port "xxx" with URI "mssql://server/db?" is suspended.  Error details: Unknown Error Description 
    Any advice please. Thanks
    Sullu.
    http://biztalkguide.blogspot.com/ Please mark as answer if this solved the issue.Thanks

    Hi Chen
    Is there any update on this please ?
    I have applied the latest CU and have noticed the following issue.
    BizTalk 2010 Enterprise Edition with BizTalk 2010 CU6 and CU3 for BizTalk Adapter Pack works fine , no issues noticed.
    However ,
    On a DEV VM ,BizTalk 2010 Developer Edition with BizTalk 2010 CU6 and CU3 for BizTalk Adapter Pack still gives the error mentioned in this post.
    In addition Microsoft BizTalk Adapter Pack ,Microsoft BizTalk Adapter Pack(x64) & WCF LOB Adapter SDK are also installed .
    Below is the Error message.
    Message gets suspended in BT Admin console  with "An internal server error was encountered while attempting to transmit
    the message" .
    A message sent to adapter "WCF-Custom" on send port "xxx" with URI "mssql://server/db?" is
    suspended.  Error details:
    Unknown Error Description 
    Could you please check and advice what needs to be done to resolve this ? Thanks .
    Regards,
    Sullu
    http://biztalkguide.blogspot.com/ Please mark as answer if this solved the issue.Thanks

Maybe you are looking for

  • Synchronization between iBook G4 and MacBook

    Hey there! I just got my new MacBook and I love it! Til today I have had the last generation of the iBook G4. I want to synch both. The iBook-data should mirgate to my new MacBook. Earlier that worked a fire wire connection. Now I recognized that the

  • Freight /Packaging farwarding charges in item cost

    Hi All            I have two questions ... 1-  I want to Know how to add freight and other expenses  in item cost ........... 2- there is an BP who is vendor and customer both ..... wht is the procedure to treat this (in payment term) Ex- i purchase

  • Editing table properties

    hello, i have created a table.  it is populated with random numbers that can be of different precision length( changed by a numeric control).  i want the entire table to stay the same size but when i adjust the precision number after the decimal plac

  • FF locks up when I try to perform an edit on a specific site

    When I log on to my account on YMLP and try to change data there, FF goes gray and locks up. Problem started with FF 3.6.3, They say they have no other report of such trouble. When I access the site with MSIE (ugh!) I do not have the problem. No such

  • Field value is getting double while updating the database table

    Hi Experts, A simple doubt : there is a standard program through which a zfunction module is getting triggered, through this zfunction module i am updating the database table. Now what happening is one of the field(KCQTY) value in database is getting