Ошибка синтаксического анализатора "Ошибка в XML-документе (0,0)" Salesforce Wsdl - PullRequest
1 голос
/ 20 марта 2012

Я столкнулся с этой проблемой очень давно, но не смог документировать ее для себя и потомков.

У меня есть 3 машины с одинаковым кодом. Я использую IIS в Windows XP Pro, Windows 2003 и Windows 2008. Код взят с нашего исходного сайта (весь код точно такой же) и размещен в других средах, чтобы посмотреть, сможем ли мы начать разработку и внести дальнейшие изменения.

Win 2003 является текущей функцией внутреннего сервера. Он запускает код без проблем. Другие 2 нет, с тем же сообщением об ошибке:

Ошибка парсера
Описание: во время анализа ресурса, необходимого для обслуживания этого запроса, произошла ошибка. Пожалуйста, просмотрите следующую конкретную информацию об ошибке разбора и измените исходный файл соответствующим образом.

Сообщение об ошибке анализатора: в документе XML есть ошибка (0, 0).

Ошибка источника:

[Нет соответствующих строк источника]

Исходный файл: / site1 / App_WebReferences / salesforce / Строка: 1

Информация о версии: Microsoft .NET Framework Версия: 2.0.50727.3615; ASP.NET версия: 2.0.50727.3618

Я не думаю, что это проблема с файлом Salesforce Wsdl, потому что он говорит, что проблема с самой первой строкой. Декларация xml.

    <?xml version="1.0" encoding="UTF-8"?>

    <!--
    Salesforce.com Enterprise Web Services API Version 21.0
    Generated on 2011-02-24 15:38:46 +0000.

    Package Versions:
    Informatica Data Loader (Version: 1.11, Namespace: infa)
    Salesforce for Google AdWords (Version: 1.2, Namespace: sfga)
    VerticalResponse for AppExchange (Version: 1.1, Namespace: vr)

    Copyright 1999-2011 salesforce.com, inc.
    All Rights Reserved
    -->

    <definitions targetNamespace="urn:enterprise.soap.sforce.com" ...

Я полагаю, что это может иметь какое-то отношение к файлам бина или коду, который запускает сайт. Глобальное или приложение, которое работает неправильно.

Я использую AspDotNetStorefront. Более новая версия 9.x работает одновременно на том же сервере Windows 2008. Работает просто отлично.

Кроме того, я подумал, что IIS может заблокировать некоторые файлы, что не позволяет ему правильно скомпилировать файлы, которые работают на другом сервере. Это просто теория, которую я не знаю, как проверить, или даже найти файл (ы), которые нарушают. Я попытался удалить все временные файлы .NET из папки Windows после закрытия сайта в IIS. Но я не знаю, является ли это единственным местом для файлов. Это все равно не решило проблему.

1 Ответ

0 голосов
/ 11 июня 2013

Я заметил довольно много посещений этого вопроса и решил опубликовать некоторые из вещей, которые я сделал, чтобы решить проблему.Мы только недавно столкнулись с похожей проблемой на нашем сайте, и я надеюсь, что они могут быть полезны.

Прежде всего, нужно заставить ваш сайт перекомпилироваться, коснувшись web.config (добавив пробел и затем удалив его).и сохранение файла web.config).Эта перекомпиляция может не повлиять на весь сайт, и некоторые из кэшированных файлов могут быть неправильно перекомпилированы.

Итак, второй шаг - найти временную папку .Net в каталоге Windows.Найдите конкретную папку, содержащую вашу кэшированную сборку для сайта, на котором возникают проблемы.Поскольку у меня одновременно работает несколько сайтов, я должен искать по определенному имени файла, например, johnjohn.aspx.Папки имеют временные имена, которые я хотел бы понять, откуда они берутся, но как только вы нашли папку, вы можете создать ее резервную копию и удалить ее или переименовать.Для этого вам, вероятно, потребуется остановить сайт.После удаления / переименования папки перезапустите сайт в IIS.

Это то, что у меня сейчас есть.Я проверю, чтобы узнать, опубликовал ли кто-нибудь еще решения.

...