Biztalk: Publish as WCF Service

Hello Experts,
In Biztalk, i want to publish a WCF Service
As i understand it can be done in two way
1. Schemas as a Webservice
2. Orchestration as a webservice
i want a string as input for that webservice, it is just a string
can you please advise how we can publish a webservice which will take string as input.
Thanks for help

A quick way I can think of is,
create an Orchestration, create a message of type "System.String" from .NET classes.
Create a receive port and in Select a Port Type, change
Access Restrictions from Internal (default) to
Public-no limits. This will enable you to expose the Orchestration as WCF service
Create the rest of the orchestration with your business process that you want to do with the received message.
Now publish the Orchestration as WCF service, now this will access only string as the input.
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.

Similar Messages

  • Biztalk send to WCF-service that is behind a NLB

    A while ago a WCF-service that biztalk 2006 r2 sends to was put behind a NLB.
    I find that since than I sometimes get timeouts although biztalk was able to reach the service.
    Also in my new test-environment using Bts2013 r2 I find that I sometimes get following response back (although the request was handled ok by the service)
    I've been told that this is caused by the load-balancer...any ideas on how to solve this/what could be causing this
    A message sent to adapter "WCF-Custom" on send port "aa" with URI "https://test.svc" is suspended.
    Error details: System.ServiceModel.CommunicationException: An error occurred while receiving the HTTP response to
    https://test.svc. This could be due to the service endpoint binding not using the HTTP protocol. This could also be due to an HTTP request context being aborted by the server (possibly due to the service shutting down). See server
    logs for more details. ---> System.Net.WebException: The underlying connection was closed: An unexpected error occurred on a receive. ---> System.IO.IOException: Unable to read data from the transport connection: An existing connection was forcibly closed
    by the remote host. ---> System.Net.Sockets.SocketException: An existing connection was forcibly closed by the remote host
       at System.Net.Sockets.Socket.BeginReceive(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags, AsyncCallback callback, Object state)
       at System.Net.Sockets.NetworkStream.BeginRead(Byte[] buffer, Int32 offset, Int32 size, AsyncCallback callback, Object state)
       --- End of inner exception stack trace ---
       at System.Net.Security._SslStream.EndRead(IAsyncResult asyncResult)
       at System.Net.TlsStream.EndRead(IAsyncResult asyncResult)
       at System.Net.PooledStream.EndRead(IAsyncResult asyncResult)
       at System.Net.Connection.ReadCallback(IAsyncResult asyncResult)
       --- End of inner exception stack trace ---
       at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
       at System.ServiceModel.Channels.HttpChannelFactory`1.HttpRequestChannel.HttpChannelAsyncRequest.CompleteGetResponse(IAsyncResult result)
       --- End of inner exception stack trace ---
    Server stack trace:
       at System.Runtime.AsyncResult.End[TAsyncResult](IAsyncResult result)
       at System.ServiceModel.Channels.ServiceChannel.SendAsyncResult.End(SendAsyncResult result)
       at System.ServiceModel.Channels.ServiceChannel.EndCall(String action, Object[] outs, IAsyncResult result)
       at System.ServiceModel.Channels.ServiceChannel.EndRequest(IAsyncResult result)
    Exception rethrown at [0]:
       at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
       at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
       at System.ServiceModel.Channels.IRequestChannel.EndRequest(IAsyncResult result)
       at Microsoft.BizTalk.Adapter.Wcf.Runtime.WcfClient`2.RequestCallback(IAsyncResult result)
    Kind regards Isabelledc

    actually this is the exception I catch in my console-app (soap-fault)
    <SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:encodingStyle="<SOAP:Body><SOAP:Fault><faultcode>Microsoft">http://schemas.xmlsoap.org/soap/encoding/"><SOAP:Body><SOAP:Fault><faultcode>Microsoft
    BizTalk Server Negative Acknowledgment </faultcode><faultstring>An error occurred while processing the message, refer to the details section for more information </faultstring><faultactor>https://IntegrationServices.svc</faultactor><detail><ns0:NACK
    Type="NACK" xmlns:ns0="<NAckID>{899D3BE7-A92A-49D2-8785-4394B35E5D19}</NAckID><ErrorCode>0xc0c0167a</ErrorCode><ErrorCategory>0</ErrorCategory><ErrorDescription>System.ServiceModel.CommunicationException">http://schema.microsoft.com/BizTalk/2003/NACKMessage.xsd"><NAckID>{899D3BE7-A92A-49D2-8785-4394B35E5D19}</NAckID><ErrorCode>0xc0c0167a</ErrorCode><ErrorCategory>0</ErrorCategory><ErrorDescription>System.ServiceModel.CommunicationException:
    The underlying connection was closed: A connection that was expected to be kept alive was closed by the server. ---&gt; System.Net.WebException: The underlying connection was closed: A connection that was expected to be kept alive was closed by the server.
    ---&gt; System.IO.IOException: Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host. ---&gt; System.Net.Sockets.SocketException: An existing connection was forcibly closed by the remote host
       at System.Net.Sockets.Socket.BeginReceive(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags, AsyncCallback callback, Object state)
       at System.Net.Sockets.NetworkStream.BeginRead(Byte[] buffer, Int32 offset, Int32 size, AsyncCallback callback, Object state)
       --- End of inner exception stack trace ---
       at System.Net.Security._SslStream.EndRead(IAsyncResult asyncResult)
       at System.Net.TlsStream.EndRead(IAsyncResult asyncResult)
       at System.Net.PooledStream.EndRead(IAsyncResult asyncResult)
       at System.Net.Connection.ReadCallback(IAsyncResult asyncResult)
       --- End of inner exception stack trace ---
       at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
       at System.ServiceModel.Channels.HttpChannelFactory`1.HttpRequestChannel.HttpChannelAsyncRequest.CompleteGetResponse(IAsyncResult result)
       --- End of inner exception stack trace ---
    Server stack trace:
       at System.Runtime.AsyncResult.End[TAsyncResult](IAsyncResult result)
       at System.ServiceModel.Channels.ServiceChannel.SendAsyncResult.End(SendAsyncResult result)
       at System.ServiceModel.Channels.ServiceChannel.EndCall(String action, Object[] outs, IAsyncResult result)
       at System.ServiceModel.Channels.ServiceChannel.EndRequest(IAsyncResult result)
    Exception rethrown at [0]:
       at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
       at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData&amp; msgData, Int32 type)
       at System.ServiceModel.Channels.IRequestChannel.EndRequest(IAsyncResult result)
       at Microsoft.BizTalk.Adapter.Wcf.Runtime.WcfClient`2.RequestCallback(IAsyncResult result)</ErrorDescription></ns0:NACK></detail></SOAP:Fault></SOAP:Body></SOAP:Envelope>
    Kind regards Isabelledc

  • BTDF - Web services deployment (Orch publishing as WCF service)

    I wanted to include my WCF published Orch deployed  in btdf.proj way. (BTDF 6.0)
    I followed the instructions by adding :  and set Virtual Directory to True
    When I deploy it, receiving error as :
    error : The VDirList ItemGroup is no longer supported.  Please convert to IISAppPool and IISApp. [C:\Work\Global TFS\Biztalk\Source\Development\Brightstar.Integration.WCFSQLTest\Deployment\Deployment.btdfproj].
    My Advance settings in IIS are :
    MBH

    Hi
    jaguarjags,
    I had exact same problem with BTDF 6.0 and Biztalk 2013 R2  but I spent some time in research and modified the btdf settings as below which worked fine for me.
    My Observations:
    BTDF does not deploy the web sites to C:\inetpub as mentioned in the Physical path.
    <PhysicalPath> is the location from which it copies the website files for folders and it is a folder that you check in the solution
    When you deploy using BTDF  the web sites are created referring to C:\Program Files (x86)\{BTS Product Name}\{Version Name}\{Website Name}.
    So don’t confuse with <PhysicalPath> and it is a source location not the destination location of web site on the deployment server.\
    Below is settings from my working file. After the deployment your websites in IIS refer C:\Program Files (x86)\{BTS Product Name}\{Version Name}\{Website Name} not the C:\Inetpub
      <ItemGroup>
        <IISApp
    Include="websitename">
          <AppPoolName>apppoolname</AppPoolName>
          <PhysicalPath>..\
    websitename </PhysicalPath>    *********this path is from project folder in source control.
    You have to create folder in solution file and add the website files to it
          <VirtualPath>/websitename</VirtualPath>
           <DeployAction>Create</DeployAction>
          <UndeployAction>Delete</UndeployAction>
        </IISApp>
         <IISApp
    Include="
    websitename1">
          <AppPoolName>
    apppoolname1</AppPoolName>
          <PhysicalPath>..\
    websitename1</PhysicalPath>
          <VirtualPath>/websitename1</VirtualPath>
           <DeployAction>Create</DeployAction>
          <UndeployAction>Delete</UndeployAction>
        </IISApp>
      </ItemGroup>
    Thanks
    JB

  • BizTalk Tracking Profile Editor not tracking the data and how to implement the Orchestration as wcf service over SSL

    Hi Ashwinprabhu,
    thank you very much for your answer.
    i have one more query, I have orchestration published as wcf service in IIS and internally orchestration calling one more service , it means orchestration sending a request and getting response back from the service.
    actually we are implementing the copy of that called service through biztalk orchestration for system automatic and tracking failed messages and n/w failures.
    But tracking profiler not tracking the Data.
    And we need to develop the http service as https(Over SSL), we implemented in iis using self 
    signed certificate, it is working just browser for wsdl(in browser), we are not able to test the service in wcf test client, it is giving wsdl error, in wsdl schema reference showing with HTTP only,
    please help me how to resolve the issue.
    Teegala

    First things first, I think it's best to publish only schemas as WCF service for dependency management reasons. That said - WSDL availability is covered in the WCF adapter under the behaviors. If you're using HTTPBasic this may be hard to modify, but using
    WCFCustom allows you to add the WSDL behavior and specify that it should be available via HTTPS.
    As to the BAM, are you using TPE within the orchestration or at the port level?  I'd imagine your TPE tracks the start and end events of your orchestration using the Orchestration Schedule.  If you're fairly confident that the TPE is correct and
    yet don't see BAM data 1) make sure your SQL Agent is running healthy and all jobs look OK and 2) check the TDDS tables in both the message box and the BAMPrimaryImport databases.  These will show you if there has been some sort of sync issue. There's
    even a TDDS errors tables - so check that out.
    Kind Regards,
    -Dan
    If this answers your question, please Mark as Answer

  • Problem in run Wcf service that published with Wizard

    hi
    i published my orchestration as wcf service with biztalk wcf service publishing wizard .it located in my IIS . but  any time  i try to access to tis wcfservice with my browser i just recive this error .
    where is the problem?
    Error:
    Server Error in '/BizTalk_Server_Project5' Application.
    Login failed for user 'IIS APPPOOL\DefaultAppPool'.
    Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 
    Exception Details: System.Data.SqlClient.SqlException: Login failed for user 'IIS APPPOOL\DefaultAppPool'.
    Source Error: 
    An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.
    Stack Trace: 
    [SqlException (0x80131904): Login failed for user 'IIS APPPOOL\DefaultAppPool'.]
    [TargetInvocationException: Exception has been thrown by the target of an invocation.]
    Microsoft.BizTalk.TransportProxy.Interop.IBTTransportProxy.RegisterIsolatedReceiver(String url, IBTTransportConfig callback) +0
    Microsoft.BizTalk.Adapter.Wcf.Runtime.WcfIsolatedReceiver`2.RegisterIsolatedReceiver(Uri uri) +675
    Microsoft.BizTalk.Adapter.Wcf.Runtime.WebServiceHostFactory`3.CreateServiceHost(String constructorString, Uri[] baseAddresses) +231
    System.ServiceModel.HostingManager.CreateService(String normalizedVirtualPath) +1440
    System.ServiceModel.HostingManager.ActivateService(String normalizedVirtualPath) +44
    System.ServiceModel.HostingManager.EnsureServiceAvailable(String normalizedVirtualPath) +615
    [ServiceActivationException: The service '/BizTalk_Server_Project5/WcfService_BizTalk_x0020_Server_x0020_Project5.svc' cannot be activated due to an exception during compilation. The exception message is: Exception has been thrown by the target of an invocation..]
    System.Runtime.AsyncResult.End(IAsyncResult result) +679246
    System.ServiceModel.Activation.HostedHttpRequestAsyncResult.End(IAsyncResult result) +190
    System.ServiceModel.Activation.ServiceHttpModule.EndProcessRequest(IAsyncResult ar) +300622
    System.Web.AsyncEventExecutionStep.OnAsyncEventCompletion(IAsyncResult ar) +8837348
    Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.1

    You get this error because your published orchestration (WCF service) is running in an application pool (IIS) which security user is not a member of the BizTalk Isolated Host Users group.
    To solve this issue create an application pool with a security user that is part of the BizTalk Isolated Host Users Group or check the current application pool and add the user to the BizTalk Isolated Host Users.
    Glenn Colpaert - MCTS BizTalk Server - Blog : http://blog.codit.eu

  • Questions regarding deploying Biztalk WCF service to higher environments.

    Here is my situation:
    I have published BizTalk schema as WCF service in my local.
    I need to move this to higher environments, is there any way I can move this to upper environments without again using WCF service publishing wizard in respective environments.

    Hi,
    These are the more common options that I have used for this task:
    Use the IIS Web Deploy: with this tool, you can export the WCF Service as a ZIP package that can be imported in the target environment manually or using the command line.
    http://www.iis.net/downloads/microsoft/web-deploy
    http://jpsmit.bloggingabout.net/2012/06/04/deploying-wcf-services-using-web-deploy/
    Include the WCF service inside the BizTalk deployment package: I don't recommend this approach because it doesn't allow almost any customization when deployed in the target environment.
    Generate a Web Setup Project: other option can be creating a web setup Project in visual studio that will deploy the WCF service.It allows some customization when deploying in the target enviorment.
    http://jpsmit.bloggingabout.net/2010/03/29/deploying-a-wcf-service-using-a-web-setup-project/
    Using a custom tool: as Rachid Sikrosia said in the previous post, you can use BizTalk Deployment Framework o BizTalk powershell addin to do this task.
    https://psbiztalk.codeplex.com/
    In my last Project, I have used a combination of both Web Setup Project and some powershell scripts to configure correctly the web site, application pool, enabled bindings, etc...
    Best regards.

  • How to send EDI from WCF adapter to WCF service

    Hi,
    1. I have created an orchestration which is published as WCF service.
    2. I have created an orchestration which receives an XML from WCF client and process it.
    3. I have created a WCF dynamic send port.
    Problem: From this dynamic send port, I want to send EDI file to a WCF service that will receive this EDI file. How can I achieve this. Below are my concerns:
    -> For creating this WCF service, I need to know the contract of Biztalk WCF adapter which sends EDI file.
    Thanks ...

    Hi,
    How can we create WCF service to receive the EDI sent by the BTS. What contract should be used for receiving this EDI file in WCF service.
    What changes have to be made in the orchestrations to send the EDI file to the WCF send Dynamic port. Below is the code i am using.
    EDIOutboundPort(Microsoft.XLANGs.BaseTypes.Address)="URL Address";
    EDIOutboundPort(Microsoft.XLANGs.BaseTypes.TransportType)="WCF-basicHttp";
    Please correct me if i am wrong
    Thanks 
    "How can we create WCF service to receive the EDI sent by the BTS. What contract should be used for receiving this EDI file in WCF service" - This is two different questions.
    "How can we create WCF service to receive the EDI sent by the BTS"  - Using BizTalk WCF Services Publishing Wizard, the wizard would ask for the "Create BizTalk receive locations in the following application " for creating
    the receive location for the message published to the exposed WCF service. Through this receive port/location, the service would receive the message.
    In this case, I am not sure why do you want to expose the Orchestration as WCF Service when you want to send message to this Orchestration/WCF service (which after converting from Orch) through another orchestration. You could either use call/start orchestration
    to send message from one to another.
    "What contract should be used for receiving this EDI file in WCF service" - may be this question is not correct. You have created a Orchestration which you exposed as WCF service. So while creating the Orch you know the type of message this Orchestration
    is bound to, so use the same contract. Or as mentioned in my earlier reply, use "Consume WCF wizard" to consume the WCF service which would create the web message for you.
    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.

  • BizTalk published WCF service throwing HTTP 404 error using ISA reverse proxy settings

    I have published my schemas as a WCF service from BizTalk 2010 "Publish WCF Service" wizard. I used Wcf-basicHTTP adapter in receive port. I am able to run the service successfully on localhost IIS and I tested my biztalk solution by sending request using SOAP UI and got response successfully.... Now: Actually, I need to give this service endpoint to my vendor who will send request from outside my company's network i.e. internet. In my infrastrucrue BizTalk is behind the firewall so, we setup a REVERSE proxy server at DMZ layer and it is configured properly. I have tested a simple WCF service by replacing the localhost with Proxy server configured address <DNSName> and it worked absolutely fine. But when I change localhost in my BizTalk schema based published WCF service it is not working and I am getting following error. Really strugling to get it resolved. I wasted a whole 3 days....very upset. Please help me out by giving the detailed step solution. Description: HTTP 404. The resource you are looking for (or one of its dependencies) could have been removed, had its name changed, or is temporarily unavailable. Please review the following URL and make sure that it is spelled correctly. Requested URL: /BizTalkServiceInstance/MyService.svc I am surprized why other c# code based WCF services are working fine with reverse proxy settings. Server Error in '/' Application. The resource cannot be found.Is there any special things to consider Biztalk exposed wcf servcie over ssl in IIS cluster with ISA

    Hi Singam :)
    First I would start by browsing any other files (files other than the one from WCF) just to ensure that the reverse-proxy’s redirection rules are set correctly. If you get the same 404 error when you try to access other service/files “through reverse-proxy”,
    then it’s an issue in the redirection rule(s) in reverse-proxy.
    If others are fine i.e. no issue in reverse-proxy setup as such, then try the following for WCF service's web.config file. I have seen this issue in WCF service (not just BizTalk’s artifacts exposed as service in reverse-proxy). Add serviceHostingEnvironment
    config as show with in serviceModel section.
    <system.serviceModel>
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
    </system.serviceModel>
    Regards,
    M.R.Ashwin Prabhu
    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.

  • Error calling a BizTalk WCF Service with WCFTestClient

    I have published schema as a wcf service (WCF-CustomIsolated). I can browse to the wsdl from the local server and from my PC. I can call the service from a console application running on my pc, but when I attempt to add the service from the wcf test client,
    I get the message:
    Warning: No code was generated.If you were trying to generate a client, this could be because the metadata documents did not contain any valid contracts or servicesor because all contracts/services were discovered to exist in /reference assemblies. Verify
    that you passed all the metadata documents to the tool.Warning: If you would like to generate data contracts from schemas make sure to use the /dataContractOnly option.
    Was there a configuration step I missed?

    Hi Jeremy, probably not a configuration issue. I remember reading somewhere the inability of the client to consume the service in such scenarios. I am assuming metadata publishing is enabled. Will try and search the article I read.q
    Praveen Behara
    MCST : BizTalk Server 2006 R2, 2010
    Yup, metadata publishing is enabled. I can browse to the wsdl.   This is a pure message solution, so I'm using a custom disassembler pipeline component to receive the request and generate a response.  When the wcf test client tries to add
    the service, the execute method of my pipeline fires, which seems odd to me, because we're not actually making a request at this point,  only trying to get the meta data I would think.
    When adding the service, wcf test client's request has an action of
    http://schemas.xmlsoap.org/ws/2004/09/transfer/Get with an empty body like this:
    POST http://myserver/MyService/test.svc HTTP/1.1
    Content-Type: application/soap+xml; charset=utf-8
    Host: myserver
    Content-Length: 512
    Expect: 100-continue
    Accept-Encoding: gzip, deflate
    Connection: Keep-Alive
    <s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope" xmlns:a="http://www.w3.org/2005/08/addressing">
    <s:Header>
    <a:Action s:mustUnderstand="1">http://schemas.xmlsoap.org/ws/2004/09/transfer/Get</a:Action>
    <a:MessageID>urn:uuid:8bd3f321-0a94-44f1-9eb4-5575068cc408</a:MessageID>
    <a:ReplyTo>
    <a:Address>http://www.w3.org/2005/08/addressing/anonymous</a:Address>
    </a:ReplyTo>
    <a:To s:mustUnderstand="1">http://myserver/MyService/test.svc</a:To>
    </s:Header>
    <s:Body/>
    </s:Envelope>
    I'm assuming somehow the BizTalk receive location would have to be configured to behave differently under this circumstance instead of passing the message to the pipeline component...

  • WCF-WebService count, accessed by the end user, the wcf-webservice published BizTalk orchestration as wcf-webservice.

    Hi BizTalk Experts,
    Please help me out, following is my scenario.
    I had published orchestration as wcf-service, for integration purpose. Now I need to count, how many times the service  accessed and failed and successful bye users.
    Thanks 
    Teegala.
    Teegala

    If you need to know how many times the orchestration was called, you can use BAM just like when the orchestration wasn't exposed as web service.
    The success/failure rate depends on what you mean by that: functional (which is part of the workflow in the orchestration) or technical (which is infra related).
    Jean-Paul Smit | Didago IT Consultancy
    Blog |
    Twitter | LinkedIn
    MCTS BizTalk 2006/2010 + Certified SOA Architect
    Please indicate "Mark as Answer" if this post has answered the question.

  • Is there any there any scenario where we have to publish "Orchestration as WCF Service" and not "Schema as WCF service"

    Hi All,
    Recently in one interview a senior architect asked me this question-
    Q- In which scenario we have to publish "Orchestration as WCF Service" and not "Schema as WCF service".
    He also told there are some scenarios which can't be accomplished by exposing schema as WCF Service.
    As per my understanding below are the benefits of exposing Orchestration as a web service, but there is no such scenario where we can't be achieved by exposing Schema as WCF Service.
    Publishing orchestrations is a way to go when:
    Implementing simple solutions with small number of dependencies when we have control over both consumer and service endpoints
    * Rapid prototyping, proof-of-concepts, service stubs
    * Developing local scoped services, when collaboration is not an issue
    * Don’t care much about interoperability
    * No skilled XML Schema, WSDL developers available
    (http://geekswithblogs.net/paulp/archive/2006/03/21/72943.aspx)
    Please share your inputs.
    Thanks,
    Prashant
    Please mark this post accordingly if it answers your query or is helpful.

    First, the answer to the question as written is NO, because there really isn't a difference between the two options.
    To be more specific, the only difference is in the Wizard itself in that when you publish an Orchestration, the Wizard reads the request/response schema(s) and Service & Operation name from the Orchestration Port rather than asking for them as it does
    when you choose Publish schemas.
    Basically, if you choose Publish schemas and enter the same values configured in the Orchestration Port, the output will be the same.  So, publishing an Orchestration is merely a convenient shortcut.
    Most importantly though, all of this only affects the metadata publishing.  There is no difference in the Receive Location (BizTalk or IIS), if you chose to create one.  The receive stack is schema agnostic, always.
    In practice, the only thing the Wizard does that is difficult to do manually is organize the metadata, but I haven't had to create a metadata endpoint in years.  The only reason I even run the Wizards is to create the IIS app.

  • How we can limit the number of concurrent calls to a WCF service without use the Singleton pattern or without do the change in BizTalk Configuration file?

    How can we send only one message to a WCF service at a time? How we can limit the number of concurrent calls to a WCF service without use the Singleton pattern or without do the change in BizTalk Configuration file? Can we do it by Host throttling?

    Hi Pawan,
    You need to use WCF-Custom adapter and add the ServiceThrottlingBehavior service behavior to a WCF-Custom Locations.
    ServiceThrottlingBehavior.MaxConcurrentCalls - Gets or sets a value that specifies the maximum number of messages actively processing across a ServiceHost. The MaxConcurrentCalls property specifies the maximum number of messages actively
    processing across a ServiceHost object. Each channel can have one pending message that does not count against the value of MaxConcurrentCalls until WCF begins to process it.
    Follow MSDN-
    http://msdn.microsoft.com/en-us/library/ee377035%28BTS.10%29.aspx
    http://msdn.microsoft.com/en-us/library/system.servicemodel.description.servicethrottlingbehavior.maxconcurrentcalls.aspx
    I hope this helps.
    Rachit
    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.

  • BizTalk 2010 Error consuming WCF service metadata. Object reference not set to an instance of an object.

    "Error consuming WCF service metadata.
    Object reference not set to an instance of an object."
    I have no clue what happen to my BizTalk.  I checked all the below forum but m clueless why BTS not consuming WCF through Generated Items. I tried both metadata exhange endpoint and metadata file through
    svcutil. but all my wcf services are working fine with .net C# client.
    http://blogs.msdn.com/b/appfabriccat/archive/2010/11/23/how-using-duplex-mep-to-communicate-with-biztalk-from-a-net-application-or-a-wf-workflow-running-inside-appfabric-part-1.aspx
    http://msdn.microsoft.com/en-us/library/bb226552.aspx
    http://msdn.microsoft.com/en-us/library/bb798122.aspx
    http://masteringbiztalkserver.wordpress.com/tag/wcf-service-consuming-wizard/
    I reinstall the WCF lob Adapter SDK to my BizTalk VM but still no clue. no erros in event viewer nothing.
    http://www.abdulazizfarooqi.wordpress.com Abdul Aziz Farooqi [BizTalk & SharePoint Consultant] MCPD Web & MCPD SharePoint 2010

    Thanks from me too Neal - this worked from me. I wan't able to consume directly from exchange because the certificate is broken. However, I was able to convince Google Chrome to let me view the /Services.wsdl and from there I could save the .wsdl and two
    .xsd files. In my case the problem lay at the top of the .wsdl file. I changed the following:
    <wsdl:types>
            <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
                <xs:import namespace="http://schemas.microsoft.com/exchange/services/2006/messages" schemaLocation="messages.xsd"/>
            </xs:schema>
    by giving the same targetNamespace as assigned in the <wsdl:definitions element, so I ended up with
    <wsdl:types>
            <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://schemas.microsoft.com/exchange/services/2006/messages">
                <xs:import namespace="http://schemas.microsoft.com/exchange/services/2006/messages" schemaLocation="messages.xsd"/>
            </xs:schema>

  • Biztalk schema exposing as WCF service with multiple operations

    Hi,
    I am working on a design pattern to expose the BizTalk schema as a WCF service and thought of taking expert’s advice. I have a single schema with 30 different nodes and each one is a different message type. For this 30 message types we need to expose WCF
    endpoints to customer for consuming from their application.
    When I exposed this schema as WCF service, a single receive location got created in BizTalk application and in IIS there is one .svc file. I defined 30 operations for this while exposing the endpoint with wizard.
    Currently I came up with the below 2 approaches but I did not like them as there is more redundancy
    Create 30 different orchestrations and each orchestration subscribes to Message Box direct binding with message type as filter.
    Create a single orchestration that binds to single receive location( this location got created by wizard..) and access the operation/message type in the expression shape. Based on this value create 30 IF conditions for each message type. For this the
    single orchestration receive shape should have a message type of xml document and then access the type. Is it possible?
    I don’t like the above approaches as it is very difficult to maintain and also difficult to add for any new message type.
    Does anyone has good ideas for doing this?
    Thanks
    JB

    "Canonical Schemas" are used where multiple source messages need to be addressed by a SINGLE Operation !!!
    Every operation anyway translates to a separate process. Forget that we're dealing with BizTalk for a minute, when you're writing plain we services, you introduce new service contracts (operations) when you deal with different data contracts. To come back,
    in BizTalk your data contracts are your schemas. So when you have multiple schemas, each requiring different processing then you need different orchestrations.
    Let us for a minute assume you've defined a single service schema (very possible with a service header and a service details where the service data contract could differ). Now you use this schema to expose ONE service endpoint (good till now). In that service
    you're suggesting to ADD decisions (something like a switch statement where you'll do 'x' set of activities is the message is of 'x' type and so on... How is this sustainable? Every time you introduce an new operation, you'll have to tear down and redeploy
    the new orchestration which will affect all other operations. During the introduction of ONE op you may touch other parts of the orchestration (multiple branches in a parallel shape anyways make the orchestration very unwieldy from a code management/support
    standpoint) and introduce errors in existing ops.
    Regards. 

  • BIzTalk schema exposed as wcf service deployment in WIndows server which dont have bizTalk installed

     Hi All,
    I am deploying my Biztalk wcf service (exposed from Schema) in SIT environment which dont have BizTAlk installed. But BizTalk is installed in One server and Webservices are there in another server.
    When I browse the service, it is throwing errors as below.
    Retrieving the COM class factory for component with CLSID {9D0E435E-4CCE-4536-83FA-4A5040674AD6} failed due to the following error: 80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).
    [COMException (0x80040154): Retrieving the COM class factory for component with CLSID {9D0E435E-4CCE-4536-83FA-4A5040674AD6} failed due to the following error: 80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).]
       Microsoft.BizTalk.Adapter.Wcf.Runtime.TransportProxySingleton..cctor() +23
    So please advise me on this. Am I going in correct way? Is it possible like this or do we need to install BizTalk for BizTAlk wcf services also in that environment?
    Thanks in Advance

    Hi,
    If you wish to deploy BizTalk WCF services onto another server, you can do so but you need to install BizTalk
    there. This is needed because some dlls are needed for the BizTalk WCF services such that it can point effieciently to the receive location in another server (where actual BizTalk application is running). Also the BizTalk runtime is needed in the other server
    and hence you need to just install BizTalk on the other server.
    Now if your other server is in the DMZ, then you might not go with the above option of installing BizTalk
    over there. In that case you need to install Microsoft ISA server (Internet Security and Application Server) and configure your DMZ with that. In that case you can host your BizTalk WCF services over there and make it point to the actual receive locations
    on your BizTalk server.
    Rachit
    Please mark as answer or vote as helpful if my reply does

Maybe you are looking for

  • SID Generation Error while activating the DSO.

    Hello Gurus, Am trying to load the data to a dso in FIGL, the data is getting loaded to the dso very fine, this is extracting data of 1700000. But the problem is while activating the dso it throws an error "Activation of M records from DataStore obje

  • Remove the user status in Sales order

    how to remove the user status in sales order header? could you give the function module or BAPI to get this?

  • Can i use my Ipad in Thailand?

    Can I use my Ipad in Thailand for email and wifi internet?

  • Two layers with "dissolve"

    I'm on CS3 with OS10.4.11 I have a photoshop document where I had two layers each with a shape of solid colour. In the top layer I had blend mode "Dissolve" and then reduced its opacity to get the speckled/distressed look. If I merge the two layers o

  • Is there any issues to use exp in a live production instance?

    Hi all, I'll migrate from 9.0.1 o hp-ux to a 10gR2 on Redhat AS E4 To prepare my upgrade, I need the whole structure from our 9.0.1 instance. Can I without any danger / problem use exp to export the structure of our live instance while its actively r