Lista de problemas de interoperabilidade SOAP que podem ocorrer quando você trabalha com a tecnologia de ambiente universal de idioma genérico (Colar) 5.0.1 no SQL Server 2005

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: 894710
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
INTRODUÇÃO
Suporte nativo a HTTP SOAP introduzidas no Microsoft SQL Server 2005 permite que você ativar a programação do Transact-SQL do SQL Server como métodos da Web. Por exemplo, você pode ativar os procedimentos armazenados ou funções definidas pelo usuário como métodos da Web. Essa funcionalidade permite que o SQL Server 2005 ficarão disponíveis como um servidor compatível com 1.2 SOAP. Um servidor compatível com 1.2 SOAP é acessível por HTTP por clientes SOAP 1.1 e SOAP 1.2.

Este artigo descreve SOAP problemas de interoperabilidade que podem ocorrer quando você trabalha com tecnologia genérico idioma ambiente universal (Colar) 5.0.1.

Observação Tecnologia de união é também conhecido como Glueware.

Para obter mais informações sobre como colar, visite o seguinte site:
Mais Informações
Se você desejar usar Colar para criar aplicativos que se comunicam com o SQL Server 2005, é altamente recomendável que você usar o documento WSDL (Web Services Description Language) simples em vez do documento WSDL padrão (estendido). Você pode recuperar o documento WSDL simples adicionando o "? wsdlsimple" seqüência no final da URL de consulta. Por exemplo, use a seguinte URL:
http:// Server / ponto de extremidade? wsdlsimple
SQL Server 2005 requer autenticação do Microsoft Windows NT correto antes de você pode recuperar o documento WSDL. Para habilitar colar importar o documento WSDL, talvez você precise recuperar o documento WSDL e, em seguida, salvar o documento como um arquivo ou uma página da Web.

As seguintes questões de interoperabilidade podem ocorrer quando você usar Colar juntamente com suporte a HTTP nativo do SQL Server 2005.

Talvez você precise modificar a definição de esquema XSD para o tipo complexo SqlRowSet

Para usar Colar para analisar corretamente o documento WSDL padrão (estendido) que é gerado pelo SQL Server 2005, talvez seja necessário que modificar a definição de esquema XSD definição de linguagem (XSD) para o tipo complexo SqlRowSet . A Definição de esquema XSD que gera o SQL Server 2005 é semelhante ao exemplo de código a seguir.
<xsd:complexType name="SqlRowSet">  <xsd:sequence maxOccurs="unbounded">	<xsd:element ref="xsd:schema" />	<xsd:any />  </xsd:sequence></xsd:complexType>
talvez você precise modificar o esquema para o exemplo de código a seguir.
<xsd:complexType name="SqlRowSet">  <xsd:sequence>	<xsd:any minOccurs="0" maxOccurs="unbounded" />  </xsd:sequence></xsd:complexType>
para evitar esse problema, use o documento WSDL simples para gerar o código de cliente.

Cola suporta apenas o algoritmo MD5 para a autenticação Digest

Para a autenticação Digest, colar apenas implementa o MD5 algoritmo. Colar não implementa o algoritmo MD5-sessão. Por motivos de segurança, o algoritmo MD5 sess é o algoritmo que o Windows Server 2003 aplica quando você usa a autenticação Digest.

Para contornar esse problema, pontos de extremidade que exigem autenticação interoperabilidade com clientes colar devem implementar um tipo de autenticação que é diferente de resumo. Por exemplo, os pontos de extremidade podem implementar Basic ou WS-Security sobre autenticação SSL.

Cola clientes enviam valores xsi: Type inválido para determinados tipos de dados SQL

Cola clientes enviam inválido xsi: Type valores para os tipos de dados sem suporte do SQL que estão listados na tabela a seguir.
Tipo de dados XSDTipo de dados SQL
Número inteiroInt
LongoBitInt
CurtoSmallInt
UnsignedByteTinyInt
DuploFloat
FloatReal
BooleanoBit
Por exemplo, a seguinte solicitação de um cliente colar inclui um valor sem suporte xsi: Type :
<?xml version='1.0' encoding='UTF-8'?><soap:Envelope xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:n2='http://schemas.xmlsoap.org/soap/encoding/'>  <soap:Body>    <n:RetLongOut xmlns:n='http://tempuri'>      <n:a xsi:type='n2:long'>23425234</n:a>      <n:res xsi:type='n2:long'>0</n:res>    </n:RetLongOut>  </soap:Body></soap:Envelope>
Observação O valor xsi: Type usa o namespace http://schemas.xmlsoap.org/soap/encoding/. SQL Server 2005 suporta o espaço para nome XSD padrão e os tipos de dados de espaço para nome http://schemas.microsoft.com/sqlserver/2004/sqltypes.

Cola mapeia incorretamente seqüência de caracteres e tipos de decimais

O gerador de classe de proxy colar pode funcionar com o documento WSDL padrão (estendido) que é gerado pelo SQL Server 2005. Nesse cenário, o gerador de classe de proxy colar interpreta qualquer elemento sem nome xsd:simpleType que tem um elemento xsd:restriction como um byte []. O fragmento de XSD exemplo a seguir ilustra esse problema.
<xsd:element name="RetString">  <xsd:complexType>    <xsd:sequence>      <xsd:element minOccurs="1" maxOccurs="1" name="a" nillable="true">        <xsd:simpleType>          <xsd:restriction base="sqltypes:nvarchar" sqltypes:localeId="1033" sqltypes:sqlCompareOptions="IgnoreCase IgnoreKanaType IgnoreWidth" sqltypes:sqlSortId="52" />         </xsd:simpleType>      </xsd:element>    </xsd:sequence>  </xsd:complexType></xsd:element>
esse problema se aplica a todos os tipos de seqüência de caracteres e decimais SQL.

Esse problema ocorre somente quando você usa o documento WSDL padrão (estendido) para um ponto de extremidade HTTP SOAP. Esse problema não afeta os pontos de extremidade para o qual o documento WSDL simples é usado.

Cola atualmente suporta apenas um elemento <xsd:extension> dentro de um nó <xsd:complexContent>

Cola no momento só permite um <xsd:extension> elemento aparecer dentro de um <xsd:complexContent> nó. Esse comportamento afeta a definição de WSDL padrão (estendido) da classe TypedXml .

Por exemplo, você pode usar o fragmento de código a seguir WSDL.
<xsd:element name="RetTypedXml"> <xsd:complexType>  <xsd:sequence>   <xsd:element name="a" minOccurs="1" maxOccurs="1" nillable="true">     <xsd:complexType sqltypes:xmlSchemaCollection="[Interop].[dbo].[SqlInterop]">       <xsd:complexContent>         <xsd:restriction base="sqltypes:xml">          <xsd:sequence>           <xsd:any processContents="strict" namespace="http://Sqlsoap" />           </xsd:sequence>         </xsd:restriction>       </xsd:complexContent>     </xsd:complexType>   </xsd:element> </xsd:sequence></xsd:complexType></xsd:element>
quando você usa este fragmento de código WSDL, uma exceção é lançada pela ferramenta de geração de classe de proxy colar. A exceção é semelhante à seguinte:
Electric.XML.IO.Schema.SchemaException: <complexcontent><extension> no tipo http://tempuri:null no momento deve ser seguido por <extensão>
Para contornar esse problema, modifique a definição WSDL para remover o <xsd:complexContent> elemento. Essa alteração é ilustrada no seguinte fragmento de código revisado.
<xsd:element name="RetTypedXml"> <xsd:complexType>  <xsd:sequence>   <xsd:element name="a" minOccurs="1" maxOccurs="1" nillable="true">     <xsd:complexType sqltypes:xmlSchemaCollection="[Interop].[dbo].[SqlInterop]">          <xsd:sequence>           <xsd:any processContents="strict" namespace="http://Sqlsoap" />           </xsd:sequence>     </xsd:complexType>   </xsd:element> </xsd:sequence></xsd:complexType></xsd:element>
para modificar a definição WSDL para remover o <xsd:complexContent> elemento, use um gerador de WSDL personalizado com o SQL Server 2005. Para obter mais informações, consulte "Implementing personalizado WSDL suporte" nos manuais online do SQL Server 2005.

Se você deseja criar um aplicativo de colar que se comunica com o SQL Server 2005, recomendamos que use o documento WSDL simples.
TSQL T-SQL

Aviso: este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 894710 - Última Revisão: 12/09/2015 02:12:12 - Revisão: 2.3

Microsoft SQL Server 2005 Developer Edition, Microsoft SQL Server 2005 Enterprise Edition, Microsoft SQL Server 2005 Express Edition, Microsoft SQL Server 2005 Standard Edition, Microsoft SQL Server 2005 Workgroup Edition, Microsoft SQL Server 2005 Standard X64 Edition, Microsoft SQL Server 2005 Enterprise X64 Edition

  • kbnosurvey kbarchive kbmt kbtshoot kberrmsg kbinfo KB894710 KbMtpt
Comentários