Você receberá uma mensagem de erro exceção sem tratamento quando você tenta consumir um serviço BizTalk da Web no BizTalk Server 2006 ou no BizTalk Server 2004

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 891386
Sintomas
No Microsoft BizTalk Server 2006 ou no Microsoft BizTalk Server 2004, quando você tenta consumir um serviço BizTalk da Web no aplicativo cliente, você receberá exceção não tratada mensagem de erro é semelhante a um destes procedimentos:
Mensagem de erro 1
Uma exceção sem tratamento do tipo 'System.Web.Services.Protocols.SoapException' ocorreu no system.web.services.dll
Obter informações adicionais: servidor não pôde processar a solicitação. --> Nome do arquivo ou assembly PP5dap.dll, ou uma de suas dependências, não foi encontrada.
Mensagem de erro 2
Falha SOAP: [Receptor]: servidor não pôde processar a solicitação. ---> Não é possível gerar uma classe temporária (resultado = 1). Erro CS0029: não é possível converter implicitamente o tipo 'string 'para' seqüência de caracteres []'
Se você ativou o tempo de compilação XmlSerialization.Compilation alternar no arquivo Web.config, você receberá uma mensagem de erro semelhante à seguinte:
vax07a.0.cs(219,125): erro CS0030: não é possível converter tipo 'seqüência de caracteres [] 'para' seqüência'
vax07a.0.cs(715,147): erro CS0029: não é possível converter implicitamente o tipo 'string 'para' seqüência de caracteres []'
Causa
Esse problema ocorre quando o BizTalk Web Services Publishing Wizard usa Web Services Description Language Tool (WSDL.exe) para gerar as informações do cliente. Quando você publica um esquema que contém os nós aninhadas que têm o atributo maxOccurs definido como o valor "acoplado", a ferramenta WSDL.exe cria matrizes multidimensionais no arquivo datatypes.cs gerado. Portanto, o arquivo datatypes.cs gerado contém tipos incorretos para os nós aninhados.

Por exemplo, no arquivo datatypes.cs gerado, você observa instruções de declaração de tipo dados gerados que são semelhantes à seguinte.
...public class yourSchema    {             /// <remarks/>        [System.Xml.Serialization.XmlElementAttribute("TextValue")]        public string[] TextValue;                /// <remarks/>        [System.Xml.Serialization.XmlElementAttribute("NumValue")]        public string[] NumValue;               ....    }....
Observação neste exemplo, os tipos de dados incorretamente são declarados como matrizes multidimensionais.
Como Contornar
Para contornar esse problema, modifique o arquivo datatypes.cs gerado pelo BizTalk Web Services Publishing Wizard, removendo os caracteres de matriz colchete ([]) as instruções de declaração de tipo de dados.
Situação
A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na seção "Aplica-se a".
Mais Informações
Para obter mais informações sobre o BizTalk Web Services Publishign Wizard no BizTalk Server 2006, visite a seguinte site da Microsoft Developer Network (MSDN): Para obter mais informações sobre o BizTalk Web Services Publishing Wizard no BizTalk Server 2004, visite a seguinte site da Microsoft Developer Network (MSDN):Para obter mais informações sobre como habilitar a opção XmlSerialization.Compilation, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
823196Você recebe um erro "System.IO.FileNotFoundException" quando o aplicativo cliente chama um serviço da Web
BTS2004 BTS2006 BizTalk2004 BizTalk2006

Propriedades

ID do Artigo: 891386 - Última Revisão: 08/07/2007 17:27:17 - Revisão: 3.2

Microsoft BizTalk Server 2006 Developer Edition, Microsoft BizTalk Server 2006 Enterprise Edition, Microsoft BizTalk Server 2006 Standard Edition, Microsoft BizTalk Server 2004 Developer Edition, Microsoft BizTalk Server 2004 Enterprise Edition, Microsoft BizTalk Server 2004 Partner Edition, Microsoft BizTalk Server 2004 Standard Edition

  • kbmt kbbiztalk2004sp2fix kbtshoot kbnofix kbbug kbprb KB891386 KbMtpt
Comentários