Поиск не работает в SharePoint 2010 - PullRequest
1 голос
/ 25 октября 2011

Поиск в SharePoint приводит к ошибке, NullReferenceException, независимо от того, используется ли поле поиска на обычной странице или даже просто загружается страница расширенного поиска.

Изначально я получал ошибки System.ServiceModel.ServerTooBusyException и Round Robin Service Load Balancer EndpointFailure в журналах ULS SharePoint при каждой попытке поиска. Я изучил IIS и определил, что веб-приложения существуют. Я остановился и запустил поисковый запрос и Serviec Настройки сайта на сервере. Это был последний раз, когда я видел ошибки EndpointFailure и ServerTooBusyException.

Однако появилась новая ошибка. Это время было System.NullReferenceException с SetPropertiesOnQueryReader() на CoreResultsWebPart.OnInit(). Статья КБ 976462 выглядела многообещающе, пока дальнейшие исследования не показали, что она добавляет свойство AllowInsecureTransport в класс SecurityBindingElement и изменяет значение по умолчанию False на Правда . Однако это свойство существует и уже установлено в True в моей среде.

Я обнаружил эту же проблему , однако удаление приложений и прокси службы поиска, воссоздание их и выполнение IISRESET не решило мою проблему.

Когда открывается страница расширенного корпоративного поиска, на экран возвращается ошибка: Object reference not set to an instance of an object.

Это запись в журнале ULS:

CoreResultsWebPart :: OnInit: Инициализация исключения: System.NullReferenceException: Ссылка на объект не установлена ​​на экземпляр объекта. в Microsoft.Office.Server.Search.WebControls.CoreResultsWebPart.SetPropertiesOnQueryReader () в Microsoft.Office.Server.Search.WebControls.CoreResultsWebPart.OnInit (EventArgs e)

Внутренняя ошибка сервера: исключение System.NullReferenceException: для ссылки на объект не задан экземпляр объекта. в Microsoft.Office.Server.Search.WebControls.CoreResultsWebPart.SetPropertiesOnQueryReader () в Microsoft.Office.Server.Search.WebControls.CoreResultsWebPart.OnInit (EventArgs e) объект System.NullReferenceException исключение объекта: объект: в Microsoft.Office.Server.Search.WebControls.CoreResultsWebPart.SetPropertiesOnQueryReader () в Microsoft.Office.Server.Search.WebControls.CoreResultsWebPart.OnInit (EventArgs e)

Ответы [ 4 ]

3 голосов
/ 16 ноября 2011

Можете ли вы взглянуть на топологию поиска? Проверьте состояние следующих компонентов:

  • Административный компонент
  • Компонент сканирования
  • Компонент запроса

Это должно быть онлайн. Если это не так, нажмите «Изменить топологию» и повторно предоставьте ее.

Перейдите к centraladmin:port/_admin/FarmServers.aspx и проверьте состояние своих серверов. В нем должно быть указано Никаких действий не требуется для всех серверов - если указано Требуется обновление , затем запустите мастер продукта и конфигурации на серверах WFE и приложений в зависимости от серверов SP.

В вашей конфигурации DB может быть какая-то мошенническая запись, которая может быть причиной этого. Поскольку вы уже повторно подготовили поиск, возможно, возникла проблема с какой-то потерянной БД. Перейдите к centraladmin:port/_admin/databaseStatus.aspx. Если вы не видите здесь старых потерянных поисковых баз, удалите приложение службы поиска, снова зайдите на указанный выше URL и проверьте, есть ли оно там. Если это так, выполните следующую команду PowerShell для удаления потерянных БД:

$orphanedDB = Get-SPDatabase | where{$_.Name -eq "MySearchDatabase"}
$orphanedDB.Delete()
2 голосов
/ 25 апреля 2012

У меня была похожая проблема, и после ответа Винода заметил, что «Состояние оповещения о поиске» в Search Administration было отключено (я и предполагал). Включение этого исправило проблему, означающую, что страницы поиска теперь отображаются. После этого мне снова удалось отключить «Состояние оповещения о поиске», и страницы продолжают работать нормально.

Надеюсь, что это поможет кому-то еще, прежде чем они сбросят / перезапустят службы, как это предлагается в других местах в Интернете.

1 голос
/ 21 мая 2014

Я только что столкнулся с той же проблемой и исправил ее:

  1. Я убедился, что сайт веб-служб SharePoint существует в IIS и что SecurityTokenServiceApplication существует как виртуальный каталог.
  2. В моем случае я обнаружил, что пул приложений, который его запитал, был остановлен из-за плохих кредитов. Я установил кредиты, отскочил от пула и отскочил от сайта.
  3. Это все еще не решило проблему, поэтому я перешел в Sharepoint Central Admin, перешел в Управление приложениями -> Управление приложениями-службами.
  4. Я нажал на приложение службы поиска, создал новый обход для своих локальных сайтов и выполнил полный индекс.
  5. Наконец, я просмотрел все части в топологии приложения поиска, ничего не изменил, но применил изменения топологии, когда закончил.

Эта комбинация вещей исправила это для меня.

1 голос
/ 25 марта 2013

Я получил ту же ошибку, перезапуск сервера SharePoint устранил мою проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...