Operação UpdateItem (contato)
A operação UpdateItem é usada para atualizar as propriedades do item de contato no repositório exchange.
Exemplo de solicitação updateItem (Contato)
Descrição
O exemplo de código a seguir mostra como atualizar o endereço de email de um contato.
Código
<soap:Envelope
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
<soap:Body>
<UpdateItem xmlns="http://schemas.microsoft.com/exchange/services/2006/messages"
ConflictResolution="AlwaysOverwrite">
<ItemChanges>
<t:ItemChange>
<t:ItemId Id="AAAtAA=" ChangeKey="EQAAABYi" />
<t:Updates>
<t:SetItemField>
<t:IndexedFieldURI FieldURI="contacts:EmailAddress" FieldIndex="EmailAddress1"/>
<t:Contact>
<t:EmailAddresses>
<t:Entry Key="EmailAddress1">changedemail@example.com</t:Entry>
</t:EmailAddresses>
</t:Contact>
</t:SetItemField>
</t:Updates>
</t:ItemChange>
</ItemChanges>
</UpdateItem>
</soap:Body>
</soap:Envelope>
Comments
O identificador de item foi encurtado para preservar a legibilidade.
Elementos de solicitação
Os seguintes elementos são usados na solicitação:
Resposta do UpdateItem (Contato) bem-sucedida
Descrição
O exemplo de código a seguir mostra uma resposta updateItem bem-sucedida.
Código
<?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:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Header>
<t:ServerVersionInfo MajorVersion="8" MinorVersion="0" MajorBuildNumber="602" MinorBuildNumber="0"
xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types" />
</soap:Header>
<soap:Body>
<UpdateItemResponse xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages"
xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types"
xmlns="http://schemas.microsoft.com/exchange/services/2006/messages">
<m:ResponseMessages>
<m:UpdateItemResponseMessage ResponseClass="Success">
<m:ResponseCode>NoError</m:ResponseCode>
<m:Items>
<t:Contact>
<t:ItemId Id="AAAtAE=" ChangeKey="EQAAABYx" />
</t:Contact>
</m:Items>
</m:UpdateItemResponseMessage>
</m:ResponseMessages>
</UpdateItemResponse>
</soap:Body>
</soap:Envelope>
Comments
O identificador de item foi encurtado para preservar a legibilidade.
Elementos de resposta bem-sucedidos
Os seguintes elementos são usados na resposta:
Exemplo de solicitação de UpdateItem inválido (Contato)
Descrição
O exemplo de código a seguir mostra uma solicitação inválida.
Código
<soap:Envelope
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
<soap:Body>
<UpdateItem xmlns="http://schemas.microsoft.com/exchange/services/2006/messages"
ConflictResolution="AlwaysOverwrite">
<ItemChanges>
<t:ItemChange>
<t:ItemId Id="AAAtAEF=" ChangeKey="EQAAABYi" />
<t:Updates>
<t:SetItemField>
<t:IndexedFieldURI FieldURI="contacts:EmailAddress" FieldIndex="EmailAddress4"/>
<t:Contact>
<t:EmailAddresses>
<t:Entry Key="EmailAddress4">changedemail2@example.com</t:Entry>
</t:EmailAddresses>
</t:Contact>
</t:SetItemField>
</t:Updates>
</t:ItemChange>
</ItemChanges>
</UpdateItem>
</soap:Body>
</soap:Envelope>
Comments
O identificador de item foi encurtado para preservar a legibilidade.
Resposta de erro updateItem (Contato)
Descrição
O exemplo de código a seguir mostra uma resposta de erro a uma solicitação UpdateItem (Contato).
Código
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header>
<t:ServerVersionInfo MajorVersion="8" MinorVersion="0" MajorBuildNumber="602" MinorBuildNumber="0"
xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types" />
</soap:Header>
<soap:Body>
<soap:Fault>
<soap:faultcode>Client</soap:faultcode>
<soap:faultstring>The request failed schema validation.</soap:faultstring>
<detail>
<e:ResponseCode xmlns:e="http://schemas.microsoft.com/exchange/services/2006/errors">ErrorSchemaValidation</e:ResponseCode>
<e:Message xmlns:e="http://schemas.microsoft.com/exchange/services/2006/errors">The 'Key' attribute is invalid - The value 'EmailAddress4' is invalid according to its data type 'http://schemas.microsoft.com/exchange/services/2006/types:EmailAddressKeyType' - The Enumeration constraint failed.</e:Message>
<e:Line xmlns:e="http://schemas.microsoft.com/exchange/services/2006/errors">17</e:Line>
<e:Position xmlns:e="http://schemas.microsoft.com/exchange/services/2006/errors">19</e:Position>
</detail>
</soap:Fault>
</soap:Body>
</soap:Envelope>
Comments
Alguns elementos que são usados no corpo SOAP de uma resposta de erro causada por um erro de validação de esquema não são definidos nos esquemas de mensagens ou tipos. O elemento de detalhes contém informações sobre o erro. O elemento ResponseCode contém o código de erro. O elemento Message contém uma explicação para o erro, se um estiver disponível. O elemento Linha descreve o número de linha em que ocorreu o erro de validação do esquema. O elemento Position descreve a posição do caractere mais à esquerda do documento XML.