1

Exchange Webサービスに接続するJavaインターフェイスを開発しましたが、リクエストを実行するまで機能します。

私の問題は、答えが常に空であるということです。たとえば、次のクエリを2007Exchangeサーバーに送信するとします。

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:t=\"http://schemas.microsoft.com/exchange/services/2006/types\">"
<soap:Header>
<t:RequestServerVersion Version=\"Exchange2007\"/>"
</soap:Header>"
<soap:Body>"
  <FindItem xmlns=\"http://schemas.microsoft.com/exchange/services/2006/messages\" xmlns:t=\"http://schemas.microsoft.com/exchange/services/2006/types\" Traversal=\"Shallow\">"
    <ItemShape>"
      <t:BaseShape>IdOnly</t:BaseShape>"
    </ItemShape>
    <ParentFolderIds>
      <t:FolderId Id="inbox" />
    </ParentFolderIds>"
  </FindItem>
</soap:Body>
</soap:Envelope>

私が最後に得た答えは、エラーのない単純な通常のHTTPパケットです。その内容は次のとおりです(これを出力するためにいくつか実行System.outしました):

################ANSWER################
#Header : Date: Thu, 09 Aug 2012 09:36:53 GMT#
#Header : Server: Microsoft-IIS/6.0#
#Header : X-Powered-By: ASP.NET#
#Header : X-AspNet-Version: 2.0.50727#
#Header : Cache-Control: private#
#Header : Content-Length: 0#
################DATA################
Data : 

ご覧のとおり、コンテンツの長さは空です。サーバーはリクエストを受け入れ、それを使って何かを行い、空の結果を返信しているようです。

理由がわかりますか?

どうも!

4

2 に答える 2

1

私はすべてを解決する強力なトリックを見つけました。サーバーに送信するHTTPPOSTメッセージの最も重要で唯一必要なヘッダーはContent-Type値です。他のすべてのヘッダーはオプションであり、それらが何かに使用されているかどうかさえわかりません。これContent-Typeがすべてのロックを解除する鍵です。

于 2012-08-13T14:42:30.827 に答える
0

受信トレイフォルダ内のメッセージを検索するためのEWSでの有効なFindItem要求/応答:

リクエスト:

<FindItem Traversal="Shallow" xmlns="http://schemas.microsoft.com/exchange/services/2006/messages" xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
<ItemShape><t:BaseShape>IdOnly</t:BaseShape></ItemShape>
<ParentFolderIds><t:DistinguishedFolderId Id="inbox"></t:DistinguishedFolderId></ParentFolderIds></FindItem>

JWebServices for Exchange 1.1評価版、www.independentsoft.com。

応答:

<?xml version="1.0" encoding="utf-8"?><s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Header><h:ServerVersionInfo MajorVersion="14" MinorVersion="16" MajorBuildNumber="175" MinorBuildNumber="8" Version="Exchange2010_SP2" xmlns:h="http://schemas.microsoft.com/exchange/services/2006/types" xmlns="http://schemas.microsoft.com/exchange/services/2006/types" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"/></s:Header>
<s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><m:FindItemResponse xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages" xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
<m:ResponseMessages><m:FindItemResponseMessage ResponseClass="Success"><m:ResponseCode>NoError</m:ResponseCode><m:RootFolder TotalItemsInView="1" IncludesLastItemInRange="true">
<t:Items><t:Message><t:ItemId Id="AAMkAGM2NmE0NDQ4LTk0ZDAtNDRmZi1iYzJiLTI3ZGFiZTIwNTE4NQBGAAAAAADMQnRUWVgLTKClbuKuQmcEBwA5UIf+H7cbQZVv4gNmZSgmAAAA2iK7AAA5UIf+H7cbQZVv4gNmZSgmAAAD76voAAA=" ChangeKey="CQAAABYAAAA5UIf+H7cbQZVv4gNmZSgmAAAD77IT"/></t:Message></t:Items>
</m:RootFolder></m:FindItemResponseMessage></m:ResponseMessages></m:FindItemResponse></s:Body></s:Envelope>
于 2012-08-13T10:15:23.987 に答える