Thursday, June 26, 2008

Publishing Schemas as Web Services: "This invalid type may be from a property schema"

Few days ago, I was trying to publish a schema as a Web Service through BizTalk Web Services Publishing Wizard. When I tried to test this Web Service through a Xml Validation pipeline, I received the error "This invalid type may be from a property schema":

This error is due the fact that the BizTalk Web Services Publishing Wizard sets the DocumentSpecName when invokes the web method. My problem was, that my schema had two root nodes and BizTalk Web Services Publishing Wizard don't set in DocumentSpecName the root node:

string bodyTypeAssemblyQualifiedName = "Company.ESB.PC02._02.SOAPService_company_es_ConectorWS_servi" + "ces_SN627003, Company.ESB.PC02.02, Version=1.0.0.0, Culture=neutral, Public" + "KeyToken=9431070526ed7a05";

There are two approaches to resolve this problem:

1) Set the root node in the Web Service:

string bodyTypeAssemblyQualifiedName = "Company.ESB.PC02._02.SOAPService_company_es_ConectorWS_servi" + "ces_SN627003+Root1, Company.ESB.PC02.02, Version=1.0.0.0, Culture=neutral, Public" + "KeyToken=9431070526ed7a05";

2) Set to null this param in the Web Service:

object[] invokeResults = this.Invoke("WebMethod1", invokeParams, inParamInfos, outParamInfos, 0, null, inHeaders, inoutHeaders, out inoutHeaderResponses, out outHeaderResponses, null, null, null, out unknownHeaderResponses, false, false);

1 comment:

purnachandra said...

Hi i am also facing the same problem.Can you provide clear way how to fix that issue.