Исключение нулевого указателя генерируется, когда приложение пытается использовать null в случае, когда требуется объект. К ним относятся:
null
. null
. null
, как если бы это был массив. null
, как если бы это был массив. null
как будто это было значение Throwable. Приложения должны бросать экземпляры этого класса, чтобы указать на другие незаконные использования объекта null
.
Ссылка: http://docs.oracle.com/javase/8/docs/api/java/lang/NullPointerException.html
FileNotFoundException брошен SharePoint, когда это не может найти требуемый набор сайта в базе данных конфигурации SharePoint. Мое предположение - то, что Вы еще не создали набор сайта на URL http://mysite:80. Я вижу следующее отслеживание стека, если я пытаюсь инстанцировать нового объекта SPSite с URL несуществующего набора сайта:
System.IO.FileNotFoundException : The site http://server/sites/bah could not be found in the Web application SPWebApplication
Name=SharePoint - 80 Parent=SPWebService.
at Microsoft.SharePoint.SPSite..ctor(SPFarm farm, Uri requestUri, Boolean contextSite, SPUserToken userToken)
at Microsoft.SharePoint.SPSite..ctor(String requestUrl)
Определяют надлежащий URL Вашего набора сайта или открывают Central Administration и создают новый Набор Сайта.
Я недавно обнаружил, что этой проблемой с конструктором может быть причина странным поведением конструктора.
я занимаю о MOSS 2007. То, когда Вы передаете полный URL сайта конструктору, что это, кажется, делает, должно действительно рассмотреть только часть сайта URL, выбрав веб-приложение, которое является 'в настоящее время seleced' в управлении селектором веб-приложения.
Таким образом, например, когда Вы имеете" http://webapp/sites/site " и имеете" http://weabapp:22345 " в настоящее время выбираемый (в прошлый раз Вы выбрали его в таком селекторе), когда Вы звоните
SPSite site = new SPSite("http://webapp/sites/site")
, Это пытается на самом деле создать объект сайта для" http://webapp:22345/sites/site " и сбои.
Я был заполонен этим несколько недель назад. В конечном счете я обнаружил, что файл, который не мог быть найден, был самим блоком SharePoint. Времени выполнения не удавалось загрузить сборку-сателлит через позднее связывание.
решение моей проблемы состояло в том, чтобы зарегистрировать SharePoint 12.0.0.0 блока в GAC. Это не кажется, что совпадает с Вашей проблемой, но просто к вашему сведению.
Проверьте свой web.config и посмотрите, существует ли конфигурация там с отсутствием файла.
Взгляд в Вас 12 ульев для журнала. Если Ваши настройки журнала будут корректны, Вы получите пропавших без вести файла.
РЕДАКТИРОВАНИЕ: Проверьте также, если ВЕСЬ Ваш DLL находится в GAC. Проверьте, содержит ли Ваш web.config файл всю информацию: пространство имен, Имя класса, NameSpace, Version=version_number, Культура-your_culture, PublicKeyToken=your_signed_token
Stacktrace исключения был бы полезен.
я думаю, что возможно можно получить некоторое представление, какого файла это и что происходит путем отключения "просто моего кода" в инструментах-> опции-> отладка и рассмотрение аргумента имени файла в стеке вызовов исключения, когда отладчик показывает его (если можно отладить его, конечно), или возможно имя обнаруживается в сообщении об исключении.
Также возможно, что объектной модели не нравится URL, который Вы даете ему. Если Вы не предоставляете ему или точный URL, в котором Вы создали набор сайта или точный URL, перечисленный в Вашем, настроен в Ваших Альтернативных Отображениях Доступа, это выдаст исключение, которое не могло бы обязательно иметь смысла. В Вашем случае Вы могли бы попробовать http://mysite
или http://machinename
.
Мы столкнулись с той же проблемой несколько дней назад, и решение состояло в том, чтобы настроить приложение, которое пытается создать объект de SPSite, на использование того же пула приложений, что и веб-приложение Sharepoint.
Надеюсь, это поможет.
Прочтите этот сайт http://community.bamboosolutions.com/forums/t/8179.aspx , если вы работаете с 64-разрядной версией ОС и используете MSTest (32-разрядную версию), произойдет сбой, используйте nunit, работает !!!
Проблема с MSTest на x64 была для меня причиной этой проблемы. Работает в консольном приложении.
У меня такая же проблема.
В моем сценарии я смог создать экземпляр SPSite из консольного приложения, но когда другой товарищ по команде попытался это сделать, приложение вызвало такое же исключение, как упомянуто выше.
Решение: я добавил другого товарища по команде в качестве администратора на сервер Content Db (это возможно не для всех), код работает нормально и без ошибок