WebDav And Exchange2007 HTTP1.1 404 Ressource not

2019-08-22 05:37发布

i have Exchange2007. and i am using the url:

"https://exchange2007.exchange.server.com/Exchange/username/calendar";

'calendar', or 'mailbox'( in your language! example, "boite de reception" in french or "calendário" in portuguese)

with that url that i'm using i can list my ressources, but can't send a mail or write an appointement! why?!?

See that i get a response of the server 207multistatus and ok, but the return a HTTP/1.1 404 Resource Not Found i wish a 201 created!!! (for my appointement)

someone have better ideia ? thx.

Console:

>>>>>>>  to  server  ---------------------------------------------------
PROPPATCH /Exchange/marcelo/calend%C3%A1rio HTTP/1.1
Authorization: Basic bWFyY2Vsb0BleGNoYW5nZTptdXN0YWZhMSQ=
Content-Type: text/xml; charset=utf-8
User-Agent: Jakarta Commons-HttpClient/2.0final
Host: exchange2007.exchange.snap.com.br
Content-Length: 1407

<D:propertyupdate xmlns:D="DAV:">
   <D:set>
      <D:prop>
         <mapi xmlns="xmlns">
               http://schemas.microsoft.com/mapi/
         </mapi>
         <Cmd xmlns="urn:">
               saveappt
         </Cmd>
         <dtEnd xmlns="urn:schemas:calendar">
               2009-06-30T10:30:00.000Z
         </dtEnd>
         <contentclass xmlns="DAV">
               urn:content-classes:Appointment
         </contentclass>
         <Subject xmlns="urn:schemas:httpmail">
               Changed Test Appointment Subject
         </Subject>
         <Location xmlns="urn:schemas:calendar">
               do
         </Location>
         <responserequested xmlns="urn:schemas:calendar">
               0
         </responserequested>
         <saveappt xmlns="urn:schemas:calendar:cmd">
               1
         </saveappt>
         <ressource xmlns="DAV">
               https://exchange2007.exchange.snap.com.br/Exchange/marcelo/calendárioassuntoteste.EML
         </ressource>
         <alldayevent xmlns="urn:schemas:calendar">
               0
         </alldayevent>
         <to xmlns="urn:schemas:header">
               adrien
         </to>
         <dtStart xmlns="urn:schemas:calendar">
               2009-06-30T10:00:00.000Z
         </dtStart>
         <isfolder xmlns="DAV">
               0
         </isfolder>
         <cmd xmlns="Cmd">
               saveappt
         </cmd>
         <HtmlDescription xmlns="urn:schemas:httpmail">
               Let's meet here
         </HtmlDescription>
         <outlookmessageclass xmlns="http://schemas.microsoft.com/exchange/subject-utf8=Appointment">
               IPM.Appointement
         </outlookmessageclass>
         <instancetype xmlns="urn:schemas:calendar">
               0
         </instancetype>
         <meetingstatus xmlns="urn:schemas:calendar">
               CONFIRMED
         </meetingstatus>
         <finvited xmlns="urn:schemas:mapi">
               0
         </finvited>
         <BusyType xmlns="urn:schemas:calendar">
               BUSY
         </BusyType>
      </D:prop>
   </D:set>
</D:propertyupdate>
------------------------------------------------------------------------

<<<<<<< from server  ---------------------------------------------------
HTTP/1.1 207 Multi-Status
Date: Thu, 16 Jul 2009 20:29:40 GMT
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET
MS-Exchange-Permanent-URL: https://exchange2007.exchange.snap.com.br/Exchange/marcelo/-FlatUrlSpace-/b3ee92320938254c828a96e2e269a417-a6271d
Repl-UID: <rid:b3ee92320938254c828a96e2e269a417000000a6282e>
Content-Type: text/xml
Content-Length: 825
ResourceTag: <rt:b3ee92320938254c828a96e2e269a417000000a6282eb3ee92320938254c828a96e2e269a41700545bb4844c>
MS-WebStorage: 08.01.10240

<a:multistatus
      xmlns:a="DAV:"
      xmlns:b="xmlns"
      xmlns:c="urn:"
      xmlns:d="urn:schemas:calendar"
      xmlns:e="DAV"
      xmlns:f="urn:schemas:httpmail"
      xmlns:g="urn:schemas:calendar:cmd"
      xmlns:h="urn:schemas:header"
      xmlns:i="Cmd"
      xmlns:j="http://schemas.microsoft.com/exchange/subject-utf8=Appointment"
      xmlns:k="urn:schemas:mapi">

   <a:response>
      <a:href>
            https://exchange2007.exchange.snap.com.br/Exchange/marcelo/Calend%C3%A1rio
      </a:href>
      <a:propstat>
         <a:status>
               HTTP/1.1 200 OK
         </a:status>
         <a:prop>
            <b:mapi>
            </b:mapi>
            <c:Cmd>
            </c:Cmd>
            <d:dtEnd>
            </d:dtEnd>
            <e:contentclass>
            </e:contentclass>
            <f:Subject>
            </f:Subject>
            <d:Location>
            </d:Location>
            <d:responserequested>
            </d:responserequested>
            <g:saveappt>
            </g:saveappt>
            <e:ressource>
            </e:ressource>
            <d:alldayevent>
            </d:alldayevent>
            <h:to>
            </h:to>
            <d:dtStart>
            </d:dtStart>
            <e:isfolder>
            </e:isfolder>
            <i:cmd>
            </i:cmd>
            <f:HtmlDescription>
            </f:HtmlDescription>
            <j:outlookmessageclass>
            </j:outlookmessageclass>
            <d:instancetype>
            </d:instancetype>
            <d:meetingstatus>
            </d:meetingstatus>
            <k:finvited>
            </k:finvited>
            <d:BusyType>
            </d:BusyType>
         </a:prop>
      </a:propstat>
   </a:response>
</a:multistatus>
------------------------------------------------------------------------

>>>>>>>  to  server  ---------------------------------------------------
PROPFIND /Exchange/marcelo/calend%C3%A1rio HTTP/1.1
Authorization: Basic bWFyY2Vsb0BleGNoYW5nZTptdXN0YWZhMSQ=
Content-Type: text/xml; charset=utf-8
User-Agent: Jakarta Commons-HttpClient/2.0final
Host: exchange2007.exchange.snap.com.br
Content-Length: 207
Depth: 0

<D:propfind xmlns:D="DAV:">
   <D:prop>
      <D:displayname>
      </D:displayname>
      <D:getcontentlength>
      </D:getcontentlength>
      <D:getcontenttype>
      </D:getcontenttype>
      <D:resourcetype>
      </D:resourcetype>
      <D:getlastmodified>
      </D:getlastmodified>
      <D:lockdiscovery>
      </D:lockdiscovery>
   </D:prop>
</D:propfind>
------------------------------------------------------------------------

<<<<<<< from server  ---------------------------------------------------
HTTP/1.1 207 Multi-Status
Date: Thu, 16 Jul 2009 20:29:40 GMT
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET
Content-Type: text/xml
Accept-Ranges: rows
MS-WebStorage: 08.01.10240
Transfer-Encoding: chunked

<a:multistatus
      xmlns:a="DAV:"
      xmlns:b="urn:uuid:c2f41010-65b3-11d1-a29f-00aa00c14882/"
      xmlns:c="xml:">

   <a:response>
      <a:href>
            https://exchange2007.exchange.snap.com.br/Exchange/marcelo/Calend%C3%A1rio/
      </a:href>
      <a:propstat>
         <a:status>
               HTTP/1.1 200 OK
         </a:status>
         <a:prop>
            <a:displayname>
                  Calendário
            </a:displayname>
            <a:getcontentlength b:dt="int">
                  0
            </a:getcontentlength>
            <a:resourcetype>
               <a:collection>
               </a:collection>
            </a:resourcetype>
            <a:getlastmodified b:dt="dateTime.tz">
                  2009-07-16T20:29:40.098Z
            </a:getlastmodified>
            <lockdiscovery xmlns="DAV:">
            </lockdiscovery>
         </a:prop>
      </a:propstat>
      <a:propstat>
         <a:status>
               HTTP/1.1 404 Resource Not Found
         </a:status>
         <a:prop>
            <a:getcontenttype>
            </a:getcontenttype>
         </a:prop>
      </a:propstat>
   </a:response>
</a:multistatus>

1条回答
smile是对你的礼貌
2楼-- · 2019-08-22 06:07

I don't know anything about Exchange, but here are two WebDAV related comments.

1) Your property "mapi" in the namespace "xmlns" looks fishy. Not even Microsoft comes up with a namespace name that bad (I hope).

2) In the second server response, you are getting a status of 200 OK for most properties, except for getcontenttype (which is indeed 404).

Other than that: are you sure you it's the right thing to PROPPATCH against a calendar URL to do what you want?

查看更多
登录 后发表回答