Lists.asmx, GetList i "wartość nie może być zerowy”

Odkryłem dzisiaj, GetList() Metoda lists.asmx usługi sieci Web ma bardzo starannie nazywane lub jest podatna na rzut tajemniczy wyjątek "Wartość nie może być zerowy" (i że zakładając, że można uzyskać w przeszłości jeszcze gorsza komunikat Błąd rodzajowy, "Wyjątek typu ' Microsoft.SharePoint.SoapServer.SoapServerException’ zgłoszono wyjątek.")  W szczególności, I stwierdzone, że nie może dostarczyć wszelkiego rodzaju prefiks na metodzie GetList.  Poniższy urywek jQuery ilustruje punktu:

image

Jeśli, Usługa sieci web odpowiada "Wartość nie może być zerowa" jak na to skrzypek-pod warunkiem transkrypcja HTTP:

<?wersja pliku XML = "1.0" Kodowanie = "utf-8"?>
  <mydło:Koperta
     xmlns:mydło ="
http://schemas.xmlsoap.org/soap/envelope/"    
     xmlns:xsi = "
http://www.w3.org/2001/XMLSchema-instance
     xmlns:xsd ="
http://www.w3.org/2001/XMLSchema">

  <mydło:Organ>
    <mydło:Usterka>
      <faultcode>mydło:Serwer</faultcode>
      <elementem faultString>
        Wyjątek typu ' Microsoft.SharePoint.SoapServer.SoapServerException’ zgłoszono wyjątek.
      </elementem faultString>
      <szczegóły>
        <ErrorString xmlns ="
http://schemas.Microsoft.com/SharePoint/SOAP/">
Wartość nie może być zerowy.
        </ErrorString>
      </szczegóły>
    </mydło:Usterka>
  </mydło:Organ>
</mydło:Koperta>

Oczywiście, prawdopodobnie nie dodasz tego prefiksu "s0" na własne, Jednak niektóre narzędzia są podatne na nie (Podobnie jak Eclipse).

Jest to tym bardziej skomplikowane / frustrujący, ponieważ inne metody tolerować prefiksów.  Na przykład, The GetListCollection Metoda nie przeszkadzało jeśli jest zostało poprzedzone, nawet z prefiksami bzdury, takich jak "xyzzy":

image

To "wartość nie może być zerowy" wydaje się dość wspólnej z lists.asmx tak miejmy nadzieję pomoże to ktoś się w przyszłości.

</koniec>

Subskrybowanie mój blog.

Follow me on Twitter wiek na http://www.twitter.com/pagalvin

Jedna myśl na "Lists.asmx, GetList i "wartość nie może być zerowy”

Odpowiedz

Twoj adres e-mail nie bedzie opublikowany. wymagane pola są zaznaczone *