none
не работает синхронизация задач Project server 2010 RRS feed

  • Вопрос

  • здравствуйте все.

    проблема в сл, по инструкции на techNet настроил синхронизацию задач ms project server с exchange 2010 sp1, и получил ошибку при попытке выполнения синхронизации.

    и так ошибка в event log'ах:

    Общая ошибка синхронизации Project Server с Exchange: Входная точка PSI:
    Пользователь проекта: domain\user
    ИД взаимосвязи: e7020e3f-8550-43fb-bae5-cbe761aa3290
    URL-адрес сайта PWA: http://sharepoint/PWA
    Имя SSP: ProjectServer
    Ошибка PS: GeneralExchangeSyncError (40500) System.Net.WebException: Сбой запроса с состоянием HTTP 401: Unauthorized.
       в System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
       в System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
       в Microsoft.Office.Project.Server.ExchangeSync.ExchangeServiceBinding.FindFolder(FindFolderType FindFolder1)
       в Microsoft.Office.Project.Server.ExchangeSync.ExchangeSyncUtil.GetRootFolder()
       в Microsoft.Office.Project.Server.ExchangeSync.ExchangeSyncUtil..ctor(ICredentials credentials, String url, PlatformContext context, Guid teamMemberUid)
       в Microsoft.Office.Project.Server.BusinessLayer.Queue.ProcessExchangeSyncMessage.ExecuteSync(ExchangeSyncTasks exchangeSyncTasks)

    иду в ULS и вижу такое:

    PWA:http://sharepoint/PWA, ServiceApp:ProjectServer, User:domain\user, PSI: ExchangeSync() - User (4ab7ea59-7366-484a-b9d6-13f7f6598b54) email server found at: https://outlook.domain.local/ews/exchange.asmx

    Error is: GeneralExchangeSyncError. Details: Attributes:  System.Net.WebException: Сбой запроса с состоянием HTTP 401: Unauthorized.     в System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)     в System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)     в Microsoft.Office.Project.Server.ExchangeSync.ExchangeServiceBinding.FindFolder(FindFolderType FindFolder1)     в Microsoft.Office.Project.Server.ExchangeSync.ExchangeSyncUtil.GetRootFolder()     в Microsoft.Office.Project.Server.ExchangeSync.ExchangeSyncUtil..ctor(ICredentials credentials, String url, PlatformContext context, Guid teamMemberUid)     в Microsoft.Office.Project.Server.BusinessLayer.Queue.ProcessExchangeSyncMessage.ExecuteSync(ExchangeSyncTasks exchangeSyncTasks)  . Standard Information: Входная точка PSI:   Пользователь проекта: domain\user  ИД взаимосвязи: e7020e3f-8550-43fb-bae5-cbe761aa3290  URL-адрес сайта PWA: http://sharepoint/PWA  Имя SSP: ProjectServer  Ошибка PS: GeneralExchangeSyncError (40500)

    и так несколько раз одно и тоже, а в самом конце выдает такую ошибку

    Project Server General Exchange Sync Error: Входная точка PSI:   Пользователь проекта: domain\user  ИД взаимосвязи: e7020e3f-8550-43fb-bae5-cbe761aa3290  URL-адрес сайта PWA: http://sharepoint/PWA  Имя SSP: ProjectServer  Ошибка PS: GeneralExchangeSyncError (40500) System.Net.WebException: Сбой запроса с состоянием HTTP 401: Unauthorized.     в System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)     в System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)     в Microsoft.Office.Project.Server.ExchangeSync.ExchangeServiceBinding.FindFolder(FindFolderType FindFolder1)     в Microsoft.Office.Project.Server.ExchangeSync.ExchangeSyncUtil.GetRootFolder()     в Microsoft.Office.Project.Server.ExchangeSync.ExchangeSyncUtil..ctor(ICredentials credentials, String url, PlatformContext context, Guid teamMemberUid)     в Microsoft.Office.Project.Server.BusinessLayer.Queue.ProcessExchangeSyncMessage.ExecuteSync(ExchangeSyncTasks exchangeSyncTasks)

    даже не знаю в чем дело. зайти по ссылке https://outlook.domain.local/ews/exchange.asmx из под пользователя, из под которого настроена синхронизация получается без проблем. сам этот пользователь является админом фермы (системной учетной записью для Sharepoint). domain\user является обычной учетной записью в домене.

    буду рад любой помощи, заранее спасибо!


    26 декабря 2011 г. 16:33

Ответы

  • вопрос закрыт. починил.

    собственно сделал следующее:

    в IIS Manager выбрал приложение EWS, открыл Authentication, и в Windows Authentication удалил провайдера Negotiate.

    причем до удаления было 2 провайдера, и смена их приоритетов не помогала. а вот удаление помогло. сделал это на всех CAS серверах Exchange. задачи синхронизируются, а описанная мной ошибка более не появляется!

    всем спасибо!

    • Помечено в качестве ответа Konstantin Artemiev 28 декабря 2011 г. 7:13
    28 декабря 2011 г. 7:13

Все ответы

  • вопрос закрыт. починил.

    собственно сделал следующее:

    в IIS Manager выбрал приложение EWS, открыл Authentication, и в Windows Authentication удалил провайдера Negotiate.

    причем до удаления было 2 провайдера, и смена их приоритетов не помогала. а вот удаление помогло. сделал это на всех CAS серверах Exchange. задачи синхронизируются, а описанная мной ошибка более не появляется!

    всем спасибо!

    • Помечено в качестве ответа Konstantin Artemiev 28 декабря 2011 г. 7:13
    28 декабря 2011 г. 7:13
  • помогите настроить синхронизацию Exchange serverv 2010 и Project Server2010

    Делал все по инструкции Technet

    Неизвестное исключение SQL 6005. См. ниже дополнительные сведения об ошибке из SQL Server.


    Выполняется команда SHUTDOWN.
    Ошибка входа пользователя "domen\SpfarmService".
    При выполнении текущей команды возникла серьезная ошибка.. При наличии результатов они должны быть аннулированы.

    Есть такие неприятные евенты...

    Стандартные сведения: Входная точка PSI: 
    Пользователь проекта: domen\SpfarmService
    ИД взаимосвязи: 6f2c53bf-733d-4618-96a1-3143f55f7dbf
    URL-адрес сайта PWA: http://сервер/PWA
    Имя SSP: Project Server
    Ошибка PS: NoError (0)
    Взаимодействие очереди с SQL невозможно. Тип очереди (очередь проектов, расписаний и т. п.): TimesheetQ. Исключение: Microsoft.Office.Project.Server.BusinessLayer.Queue.QueueSqlException: GetJobCountPerfMon failed ---> System.Data.SqlClient.SqlException: Выполняется команда SHUTDOWN.
       в System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
       в System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
       в System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
       в System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)
       в System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async)
       в System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)
       в System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe)
       в System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
       в Microsoft.Office.Project.Server.DataAccessLayer.DAL.SubDal.ExecuteStoredProcedureNoResult(String storedProcedureName, SqlParameter[] parameters)
       в Microsoft.Office.Project.Server.DataAccessLayer.QueueDal.GetJobCountPerfMon(String prefix, Int32& totalCount, Int32 idMarker, Int32& newJobCount, Int32& newIdMarker)
       в Microsoft.Office.Project.Server.BusinessLayer.Queue.BaseQueueAccess.SqlCallRetry.GetJobCountPerfMonSqlCall.Execute()
       в Microsoft.Office.Project.Server.BusinessLayer.Queue.BaseQueueAccess.SqlCallRetry.RetryableSqlCallBase.ExecuteRetryableSqlCall()
       --- Конец трассировки внутреннего стека исключений ---
       в Microsoft.Office.Project.Server.BusinessLayer.Queue.BaseQueueAccess.SqlCallRetry.RetryableSqlCallBase.ExecuteRetryableSqlCall()
       в Microsoft.Office.Project.Server.BusinessLayer.Queue.BaseQueueAccess.SqlCallRetry.GetJobCountPerfMonSqlCall.GetJobCountPerfMonRetry(Int32& totalCount, Int32 idMarker, Int32& newJobCount, Int32& newIdMarker)
       в Microsoft.Office.Project.Server.BusinessLayer.Queue.BaseQueueAccess.GetJobCountPerfMon(Int32& totalCount, Int32 idMarker, Int32& newJobCount)
       в Microsoft.Office.Project.Server.BusinessLayer.Queue.Receiver.ThreadEntry()

    может что то не так сделал?

    16 марта 2012 г. 17:32