locked
Failed to register the adapter for "SOAP"?? RRS feed

  • Question

  • Dear aLL,

    After published orchestration as web service and then use the orchestration published as web service,,, i get an error...


    The orchestration had this task:

    1. Orchestration will get an parameter type string

    2. Then the parameter will throw to a web service

    3. So, the orchestration had web reference to a web service

    4. Then, the web service will use the parameter to get one row from database based the parameter

    5. Then the result will throw back to the orchestration

     

    What is wrong??

    I had tes my web service from a browser, and input the parameter,

    the web service had done and give an output from the database correctly.

     


    But, when i use the web service (the orchestration that has published as web service), and use for my function,

    it throw an error:

    "

     

    System.Web.Services.Protocols.SoapException: Internal SOAP Processing Failure

       at Microsoft.BizTalk.WebServices.ServerProxy.ServerProxy.Invoke(String functionName, Object[] parameters, ParamInfo[] inParamInfos, ParamInfo[] outParamInfos, Int32 bodyPartIndex, String bodyType, ArrayList inHeaders, ArrayList inoutHeaders, ArrayList& inoutHeaderResponses, ArrayList& outHeaderResponses, Type[] outHeaderTypes, String[] outHeaderNamespaces, SoapUnknownHeader[] unknownHeaders, SoapUnknownHeader[]& unknownHeaderResponses, Boolean oneway, Boolean spsSsoEnabled, Object cookie)

       at Microsoft.BizTalk.WebServices.ServerProxy.ServerProxy.Invoke(String functionName, Object[] parameters, ParamInfo[] inParamInfos, ParamInfo[] outParamInfos, Int32 bodyPartIndex, String bodyType, ArrayList inHeaders, ArrayList inoutHeaders, ArrayList& inoutHeaderResponses, ArrayList& outHeaderResponses, Type[] outHeaderTypes, String[] outHeaderNamespaces, SoapUnknownHeader[] unknownHeaders, SoapUnknownHeader[]& unknownHeaderResponses, Boolean oneway, Boolean spsSsoEnabled)

       at B2BOrchestrations.B2BOrchestrations_B2BProcess_ReceiveBAK_Port.Operation_1(String part)

    "

     

    And at the event log from BizTalk Administration Console: i see this error:

     

    The Messaging Engine failed to register the adapter for "SOAP" for the receive location "/BAKOrchestrations_Proxy/B2BOrchestrations_B2BProcess_ReceiveBAK_Port.asmx". Please verify that the receive location exists, and that the isolated adapter runs under an account that has access to the BizTalk databases.

     

    Wait for your advice.....

     

    Great thanks,

    Nengsih Fitria

    Wednesday, June 9, 2010 8:07 AM

Answers

  • This article (http://technet.microsoft.com/en-us/library/cc737404(WS.10).aspx) descirbes the following steps:

    1. In IIS Manager, expand the local computer, right-click the Web site or the starting-point directory for the application you want to configure, and then click Properties.

    2. Click the Home Directory, Virtual Directory, or Directory tab, depending on whether you are configuring a Web site, a virtual directory, or an application.

    3. In the Application protection box, click the appropriate level of protection, and then click OK.


    If you like my post or consider it as a valid answer, please use the buttons to show me - Oliver

    http://biztalk.hauth.me

    Thursday, June 10, 2010 7:03 AM

All replies

  •  

     

    Dear all,

     

    After published orchestration as web service, and then

    when i used the orhestration published as web service, i get this error

     

     

    System.Web.Services.Protocols.SoapException: Internal SOAP Processing Failure

       at Microsoft.BizTalk.WebServices.ServerProxy.ServerProxy.Invoke(String functionName, Object[] parameters, ParamInfo[] inParamInfos, ParamInfo[] outParamInfos, Int32 bodyPartIndex, String bodyType, ArrayList inHeaders, ArrayList inoutHeaders, ArrayList& inoutHeaderResponses, ArrayList& outHeaderResponses, Type[] outHeaderTypes, String[] outHeaderNamespaces, SoapUnknownHeader[] unknownHeaders, SoapUnknownHeader[]& unknownHeaderResponses, Boolean oneway, Boolean spsSsoEnabled, Object cookie)

       at Microsoft.BizTalk.WebServices.ServerProxy.ServerProxy.Invoke(String functionName, Object[] parameters, ParamInfo[] inParamInfos, ParamInfo[] outParamInfos, Int32 bodyPartIndex, String bodyType, ArrayList inHeaders, ArrayList inoutHeaders, ArrayList& inoutHeaderResponses, ArrayList& outHeaderResponses, Type[] outHeaderTypes, String[] outHeaderNamespaces, SoapUnknownHeader[] unknownHeaders, SoapUnknownHeader[]& unknownHeaderResponses, Boolean oneway, Boolean spsSsoEnabled)

       at B2BOrchestrations.B2BOrchestrations_B2BProcess_ReceiveBAK_Port.Operation_1(String part)


     

    Really need your help,

     

    Great thanks,

    Nengsih Fitria

    Wednesday, June 9, 2010 6:41 AM
  • Hi,

    Please check to following things:

    - Is the receive location for the SOAP webservice enabled?
    - Is the webservice configured to run in the correct application pool?
    - Is application pool running under the correct account?
    - Can you browse to (the WSDL of) the webservice? Is displayed correctly?
    - Is the account for the application pool configured with the correct rights on the TEMP folder?

    Also see: http://msdn.microsoft.com/en-us/library/ee270848.aspx (aimed at BTS 2004 but also helpful for other versions).

     


    HTH,

    Randal van Splunteren - MVP, MCTS BizTalk Server
    http://biztalkmessages.vansplunteren.net

    Please mark as answered if this answers your question.

    Check out the PowerShell provider for BizTalk: http://psbiztalk.codeplex.com
    Wednesday, June 9, 2010 7:35 AM
    Moderator
  • Hi,

    You need to focus on error mentioned in eventlog. The error you receive is a permission issue and occurs because the web service is running on the application pool which security account user is not a member of the BizTalk Isolated Host Users group.  To solve this issue check the application pool security user account in the IIS. Add that user account into the BizTalk Isolated Host Users group. Or change the application pool to the pool which user is already a member of the BizTalk Isolated Host Users Group.

    HTH

    Regards,

    Steef-Jan Wiggers
    MCTS BizTalk Server
    http://soa-thoughts.blogspot.com/
    If this answers your question please mark it accordingly

     


    BizTalk
    Wednesday, June 9, 2010 8:43 AM
    Moderator
  • I am littlebit confused from description and the error. Do you mean you have shifted the functionality of webservice to orchestration itself? Are you using SQL Port or Helper class? It shouldn't be the problem if you have used the same piece of code unless you are using some configuration values things because biztalk reads those from BTSNTSvc.exe.config rather than web.config or app.config.

    Regarding your error, the first error comes when there is some problem calling web service. The second error is due to right issue so as Steef suggested, you will need to add user to Biztalk Isolated Host group. I also suggest to check browsing your published orchestration web service (/BAKOrchestrations_Proxy/B2BOrchestrations_B2BProcess_ReceiveBAK_Port.asmx) to check the path configured is correct. 
    Please mark it as Answer if this answers your question
    Thanks.
    Mo
    The contents I write here is my personal views, not the view of my employer and anyone else.
    Wednesday, June 9, 2010 9:04 AM
  • Dear Mr Steef,

     

    i can't find the application pool...

    I use Windows XP SP2...

    And the IIS still v5.1...

     

    I think that's matter, isn't??

    Or

    How can i solve my problem Sir, with that condition (condition that i'm using Windows XP)...

     

    Great thanks,

    Nengsih Fitria

    Thursday, June 10, 2010 3:13 AM
  • Did you enable it this way:

    IIS 5.1 (for Windows XP) use the ASP.NET worker process for processing Web service requests. For each server, all Web services run within the ASP.NET worker process.

     

    Have a look here: http://msdn.microsoft.com/en-us/library/aa559328(BTS.70).aspx


    If you like my post or consider it as a valid answer, please use the buttons to show me - Oliver

    http://biztalk.hauth.me

    Thursday, June 10, 2010 4:36 AM
  • Dear Mr Mohan,

     I am sorry to make you confusing...

     

    Let me explain again...

    Essentially,

    I want to integrate two system... (MISSION and BAK), but this is just one of many two system that i would integrate Sir...

    The BAK application need data from MISSION.

    Then, the BAK application will use the MISSION web service (the MISSION web service will select data from it's database based on the input parameter)

    So, the BAK application can get data from the MISSION database...

     

    But, i use BizTalk to connect the BAK application and the MISSION web service...

    The BizTalk application will call the MISSION web service....

    And then the BizTalk application, i published as web service.... (name: "B2BOrchestrations_B2BProcess_ReceiveBAK_Port.asmx")

    So, the BAK application will add web reference to the "B2BOrchestrations_B2BProcess_ReceiveBAK_Port.asmx", to get data from the MISSION database...

     

    Note:

    1) The MISSION web service it's self, when i browse the function with browser, it do the right things...

    I mean, i enter the parameter and it return the output correctly from the database

    2) The orchestration that had published as web service when i browse with browser, had function "Operation_1"

    that can't be testing, because there is no parameter there...

     

    That error come, when i try use the "B2BOrchestrations_B2BProcess_ReceiveBAK_Port.asmx" web service...

     

    Please tell me if i still make u confusing...

     

    And FYI, i use Windows XP.....

    Is it matter??

    But, the BizTalk Server 2006R2 itself, can running on that OS...

     

    Because many solution said that i must configure the application pool but, i can't find it at my iis manager.....

     

    Great thanks,

    Nengsih Fitria

    Thursday, June 10, 2010 4:43 AM
  • Dear Mr Randal,

    Thanks for your reply...

     

    I am so sorry if my question to stupid,

    but i don't know how i can check the receive location for the SOAP web service enable or not??

     don't know how i can check the web service configure to run in the correct application pool or not??

    don't know how i can check whether the application pool running under the correct account or not??

    don't know how i can check is the account for the application pool configured with the correct rights on the TEMP folder or not?

     

    -- but the web service it self, i had test with input the parameter, and it return the correct data from the database.... ^^

    it is the web service that call by the orchestration....

     

    So sorry to make u confuse.....

    And FYI, i use Windows XP to run my BizTalk Server 2006...

     

    But, great thanks for your help....

    Nengsih Fitria


    Thursday, June 10, 2010 5:03 AM
  • Please read the article I posted above. It has many hints regarding your problem:

    IIS 5.1 in Windows XP don't have application pools. If you are using IIS 5.1, set the isolation level for the IIS virtual directories to High. This will create a separate COM+ application for each virtual directory. Each COM+ application will run in its own dllhost.exe.

     

    In addition here is an article about how to enable Web Services under WinXP: http://msdn.microsoft.com/en-us/library/aa562145(v=BTS.70).aspx


    If you like my post or consider it as a valid answer, please use the buttons to show me - Oliver

    http://biztalk.hauth.me

    Thursday, June 10, 2010 5:20 AM
  • Here is an article about how to enable webservices on WinXP: http://msdn.microsoft.com/en-us/library/aa562145(v=BTS.70).aspx

    And here to add ASP.NET functionality: http://msdn.microsoft.com/en-us/library/aa560277(v=BTS.70).aspx

    Read this two articles - should help you.

     

    Regarding the temp folder: open a cmd and type in %temp% on your BizTalk Server. Now navigate to this directory and right click on it. Under Permissions check if the account under that the application pool runs has read / write / modify permissions to this directory and all subdirectories.


    If you like my post or consider it as a valid answer, please use the buttons to show me - Oliver

    http://biztalk.hauth.me

    Thursday, June 10, 2010 5:24 AM
  • Dear Mr Oliver,

     

    Thanks for your reply....

    But, feel shame to ask this,,

    I don't know how to set the isolation level for the IIS virtual directories to High .

     

    Would you guide me to do that?

     

    Great thanks,

    Nengsih Fitria

    Thursday, June 10, 2010 6:29 AM
  • This article (http://technet.microsoft.com/en-us/library/cc737404(WS.10).aspx) descirbes the following steps:

    1. In IIS Manager, expand the local computer, right-click the Web site or the starting-point directory for the application you want to configure, and then click Properties.

    2. Click the Home Directory, Virtual Directory, or Directory tab, depending on whether you are configuring a Web site, a virtual directory, or an application.

    3. In the Application protection box, click the appropriate level of protection, and then click OK.


    If you like my post or consider it as a valid answer, please use the buttons to show me - Oliver

    http://biztalk.hauth.me

    Thursday, June 10, 2010 7:03 AM
  • Dear Mr Oliver,

     

    Thanks for your guide...

    I had to that, but it still doesn't work.... :'(

    So confusing.....

     

    So, what's wrong sir??

     

    Great thanks,

    Nengsih Fitria

    Thursday, June 10, 2010 7:10 AM
  • Dear Mr Oliver,

     

    The article : "How to Enable ASP.NET 2.0 for Published Web Services"

    It's done by default ( i had use the 2.0), so i don't have to do that...

     

    And about the permission for the temp folder, i had do that...

     

    But, its still throw the same error...

    and at the event log also still make the same error "

    The Messaging Engine failed to register the adapter for "SOAP" for the receive location "/BAKOrchestrations_Proxy/B2BOrchestrations_B2BProcess_ReceiveBAK_Port.asmx". Please verify that the receive location exists, and that the isolated adapter runs under an account that has access to the BizTalk databases.

    "

    Sir, how can i find the receive location that had i made when published the orchestration as web service??

     

    Great thanks,

    Nengsih Fitria

    Thursday, June 10, 2010 7:22 AM
  • When using the Web Services Publishing Wizard you can choose an option like "create a receive location in the Biztalk application".

    So head over to BizTalk administration console, click this application and have a look under "Receive Location". Here it should be "enabled".


    If you like my post or consider it as a valid answer, please use the buttons to show me - Oliver

    http://biztalk.hauth.me

    Thursday, June 10, 2010 7:29 AM
  • Hi,

    Look at the URI for the receive locations in the BizTalk Administration console. The receive location that has the URI corresponding to the webservice is the one you're looking for.

     


    HTH,

    Randal van Splunteren - MVP, MCTS BizTalk Server
    http://biztalkmessages.vansplunteren.net

    Please mark as answered if this answers your question.

    Check out the PowerShell provider for BizTalk: http://psbiztalk.codeplex.com
    Thursday, June 10, 2010 7:36 AM
    Moderator
  • Dear Mr Oliver,

     

    Yupp, thanks Sir...

    First, i don't check the option to "create a receive location in the BizTalk application"

    But, then i remove the web service and repeat to publish the orchestration and check that option...

    Now, after you say the location, it's disabled....

     

    After know the location of the receive location, then i enable it...

    I run back my application, but still throw the same error...

     

    System.Web.Services.Protocols.SoapException: Internal SOAP Processing Failure

       at Microsoft.BizTalk.WebServices.ServerProxy.ServerProxy.Invoke(String functionName, Object[] parameters, ParamInfo[] inParamInfos, ParamInfo[] outParamInfos, Int32 bodyPartIndex, String bodyType, ArrayList inHeaders, ArrayList inoutHeaders, ArrayList& inoutHeaderResponses, ArrayList& outHeaderResponses, Type[] outHeaderTypes, String[] outHeaderNamespaces, SoapUnknownHeader[] unknownHeaders, SoapUnknownHeader[]& unknownHeaderResponses, Boolean oneway, Boolean spsSsoEnabled, Object cookie)

       at Microsoft.BizTalk.WebServices.ServerProxy.ServerProxy.Invoke(String functionName, Object[] parameters, ParamInfo[] inParamInfos, ParamInfo[] outParamInfos, Int32 bodyPartIndex, String bodyType, ArrayList inHeaders, ArrayList inoutHeaders, ArrayList& inoutHeaderResponses, ArrayList& outHeaderResponses, Type[] outHeaderTypes, String[] outHeaderNamespaces, SoapUnknownHeader[] unknownHeaders, SoapUnknownHeader[]& unknownHeaderResponses, Boolean oneway, Boolean spsSsoEnabled)

       at B2BOrchestrations.B2BOrchestrations_B2BProcess_ReceiveBAK_Port.Operation_1(String part)

     

     

    But, at the even log, i get different error...

    For one call from my application, return two error at my even log, here they are:

     

    First,

     

    The Messaging engine failed to process a message submitted by adapter:SOAP Source URL:/BAKOrchestrations_Proxy/B2BOrchestrations_B2BProcess_ReceiveBAK_Port.asmx. 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.

     

     

    Second,

    A message received by adapter "SOAP" on receive location "WebService_BAKOrchestrations_Proxy/B2BOrchestrations_B2BProcess_ReceiveBAK_Port" with URI "/BAKOrchestrations_Proxy/B2BOrchestrations_B2BProcess_ReceiveBAK_Port.asmx" is suspended.

      Error 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. 

      MessageId:  {CD367D05-4FC2-4FE5-831A-D26FC0D4827A}

      InstanceID: {7BA3F038-2ACA-45EB-BBA1-A7510383962E}

     

    Still waiting for any response Sir...

    I am really new with BizTalk, so really appreciate all your help Sir... ^^

     

    Great thanks,

    Nengsih Fitria

     

     

    Thursday, June 10, 2010 7:43 AM
  • Hi Nengsih,

    To get rid of this error: You have to just Enlist and start the orchestration which you exposed as webservice from BizTalk Administratior console.

    Regards,

    Abhijit


    Please "Mark as Answer" if Post has Answered the Question
    Thursday, June 10, 2010 8:05 AM
  • The error message is: "The published message could not be routed because no subscribers were found."

    So the orchestration listening to this webservice is in state "unenlistet". Did you deploy your orchestration to BizTalk? If yes head over to the admin console and check under "Orchestrations" and Enlist or Start you process.

    If you need to deploy: right click on the application "Add... / BizTalk Assembly".


    If you like my post or consider it as a valid answer, please use the buttons to show me - Oliver

    http://biztalk.hauth.me

    Thursday, June 10, 2010 8:06 AM
  • Hai aLL,

    it's done!

     

    I make a mistake....

     

    Now, my application that call the orchestration published as web service, can get the data...

     

    Thanks yhiaaa....

     

    Cheers,

    Nengsih Fitria

    Thursday, June 10, 2010 1:30 PM
  • Hi aLL,

    it's done!!

     

    I make mistake....

     

    Thanks for your kindness to reply my question....

     

    CHeers,

    Nengsih Fitria

    Thursday, June 10, 2010 1:32 PM