Hi!
I am setting up a server-based SharePoint Integration on our DEV environment. I have followed the instructions on https://technet.microsoft.com/en-us/library/dn949332.aspx and everything seems to be in perfect order until I launch the "Enable Server-Based SharePoint Integration" wizard from CRM. After checking the "On-Premises" --> Next --> Providing the site URL (https://<FQDN>/sites/crmdev) and SharePoint realm ID --> Next..
Here it all comes to a screeching halt:
On the CRM server I get a 18176 error containing the following:
The Web Service plug-in failed in OrganizationId: 00e5d762-6caf-48e7-9331-4d96b31b7c84; SdkMessageProcessingStepId: e0bdf6d6-0b83-4aba-838f-f7b4a31afd72; EntityName: sharepointdocument; Stage: 30; MessageName: ValidateSharePointSite; AssemblyName: Microsoft.Crm.Extensibility.InternalOperationPlugin, Microsoft.Crm.ObjectModel, Version=8.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35; ClassName: Microsoft.Crm.Extensibility.InternalOperationPlugin; Exception: Unhandled Exception: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor) at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments) at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) at System.Web.Services.Protocols.LogicalMethodInfo.Invoke(Object target, Object[] values) at Microsoft.Crm.Extensibility.InternalOperationPlugin.Execute(IServiceProvider serviceProvider) at Microsoft.Crm.Extensibility.V5PluginProxyStep.ExecuteInternal(PipelineExecutionContext context) at Microsoft.Crm.Extensibility.VersionedPluginProxyStepBase.Execute(PipelineExecutionContext context) Inner Exception: System.Xml.XmlException: An error occurred while parsing EntityName. Line 7, position 171. at System.Xml.XmlTextReaderImpl.Throw(Exception e) at System.Xml.XmlTextReaderImpl.HandleEntityReference(Boolean isInAttributeValue, EntityExpandType expandType, Int32& charRefEndPos) at System.Xml.XmlTextReaderImpl.ParseText(Int32& startPos, Int32& endPos, Int32& outOrChars) at System.Xml.XmlTextReaderImpl.FinishPartialValue() at System.Xml.XmlTextReaderImpl.get_Value() at System.Xml.Linq.XContainer.ReadContentFrom(XmlReader r) at System.Xml.Linq.XContainer.ReadContentFrom(XmlReader r, LoadOptions o) at System.Xml.Linq.XElement.ReadElementFrom(XmlReader r, LoadOptions o) at System.Xml.Linq.XElement.Load(XmlReader reader, LoadOptions options) at System.Xml.Linq.XElement.Parse(String text, LoadOptions options) at Microsoft.Crm.ObjectModel.SharePointProxyBase.ValidateSharePointSite(String[] siteUrls, String& validationLog) at Microsoft.Crm.ObjectModel.SharePointProxyService.ValidateSharePointSite(String[] siteUrls, ExecutionContext context, String& validationLog) .
There is also a windows error reporting event, containing the following log info:
Exception generated at: 18.11.2016 08:44:20 Error Type: System.Xml.XmlException Error Message: An error occurred while parsing EntityName. Line 7, position 171. Error Stack Trace: at XmlTextReaderImpl.Throw(Exception e) ilOffset = 0x27 at XmlTextReaderImpl.HandleEntityReference(Boolean isInAttributeValue, EntityExpandType expandType, Int32& charRefEndPos) ilOffset = 0xB5 at XmlTextReaderImpl.ParseText(Int32& startPos, Int32& endPos, Int32& outOrChars) ilOffset = 0x1D0 at XmlTextReaderImpl.FinishPartialValue() ilOffset = 0x36 at XmlTextReaderImpl.get_Value() ilOffset = 0x1A at XContainer.ReadContentFrom(XmlReader r) ilOffset = 0x132 at XContainer.ReadContentFrom(XmlReader r, LoadOptions o) ilOffset = 0x354 at XElement.ReadElementFrom(XmlReader r, LoadOptions o) ilOffset = 0x106 at XElement.Load(XmlReader reader, LoadOptions options) ilOffset = 0x4C at XElement.Parse(String text, LoadOptions options) ilOffset = 0x16 at SharePointProxyBase.ValidateSharePointSite(String[] siteUrls, String& validationLog) ilOffset = 0x6E2 at SharePointProxyService.ValidateSharePointSite(String[] siteUrls, ExecutionContext context, String& validationLog) ilOffset = 0xF5 Stack Frame: at Pipeline.Execute(PipelineExecutionContext context) ilOffset = 0xDD at MessageProcessor.Execute(PipelineExecutionContext context) ilOffset = 0x1EB at InternalMessageDispatcher.Execute(PipelineExecutionContext context) ilOffset = 0xE4 at ExternalMessageDispatcher.ExecuteInternal(IInProcessOrganizationServiceFactory serviceFactory, IPlatformMessageDispatcherFactory dispatcherFactory, String messageName, String requestName, Int32 primaryObjectTypeCode, Int32 secondaryObjectTypeCode, ParameterCollection fields, CorrelationToken correlationToken, CallerOriginToken originToken, UserAuth userAuth, Guid callerId, Guid callerRegardingObjectId, UserType userType, Guid transactionContextId, Int32 invocationSource, Nullable`1 requestId, Version endpointVersion) ilOffset = 0x22D at ExternalMessageDispatcher.Execute(IInProcessOrganizationServiceFactory serviceFactory, IPlatformMessageDispatcherFactory dispatcherFactory, String messageName, String requestName, Int32 primaryObjectTypeCode, Int32 secondaryObjectTypeCode, ParameterCollection fields, CorrelationToken correlationToken, CallerOriginToken originToken, UserAuth userAuth, Guid callerId, Guid callerRegardingObjectId, UserType userType, Guid transactionContextId, Int32 invocationSource, Nullable`1 requestId) ilOffset = 0x0 at OrganizationSdkServiceInternal.ExecuteRequestRequestWithInstrumentation(OrganizationRequest request, CorrelationToken correlationToken, CallerOriginToken callerOriginToken, WebServiceType serviceType, UserAuth userAuth, Guid targetUserId, OrganizationContext context, Boolean returnResponse, Boolean checkAdminMode, Object operation, UserType targetUserType) ilOffset = 0x0 at OrganizationSdkServiceInternal.ExecuteRequest(OrganizationRequest request, CorrelationToken correlationToken, CallerOriginToken callerOriginToken, WebServiceType serviceType, Boolean checkAdminMode, ExecutionContext executionContext) ilOffset = 0x4B at OrganizationSdkServiceInternal.Execute(OrganizationRequest request, CorrelationToken correlationToken, CallerOriginToken callerOriginToken, WebServiceType serviceType, Boolean checkAdminMode, ExecutionContext executionContext) ilOffset = 0x0 at InprocessServiceProxy.ExecuteCore(OrganizationRequest request) ilOffset = 0x34 at SandboxSdkListener.ExecuteInternal(SandboxCallInfo callInfo, SandboxSdkContext requestContext, String operation, Byte[] serializedRequest, IExecutionContext context, String& primaryEntityName) ilOffset = 0xDA at SandboxSdkListener.Execute(SandboxCallInfo callInfo, SandboxSdkContext requestContext, String operation, Byte[] serializedRequest) ilOffset = 0xC3 at ilOffset = 0xFFFFFFFF at SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs) ilOffset = 0x222 at DispatchOperationRuntime.InvokeBegin(MessageRpc& rpc) ilOffset = 0x97 at ImmutableDispatchRuntime.ProcessMessage5(MessageRpc& rpc) ilOffset = 0x48 at MessageRpc.Process(Boolean isOperationContextSet) ilOffset = 0x65 at Wrapper.Resume(Boolean& alreadyResumedNoLock) ilOffset = 0x1B at ThreadBehavior.ResumeProcessing(IResumeMessageRpc resume) ilOffset = 0x8 at ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) ilOffset = 0x79 at ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) ilOffset = 0x9 at QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem() ilOffset = 0x35 at ThreadPoolWorkQueue.Dispatch() ilOffset = 0xA4 Exception Data: 1: Key type: System.String, value: PluginTrace Custom Message: Web Service Plug-in failed in SdkMessageProcessingStepId: e0bdf6d6-0b83-4aba-838f-f7b4a31afd72; EntityName: sharepointdocument; Stage: 30; MessageName: ValidateSharePointSite; AssemblyName: Microsoft.Crm.Extensibility.InternalOperationPlugin, Microsoft.Crm.ObjectModel, Version=8.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35; ClassName: Microsoft.Crm.Extensibility.InternalOperationPlugin; Exception: Unhandled Exception: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor) at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments) at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) at System.Web.Services.Protocols.LogicalMethodInfo.Invoke(Object target, Object[] values) at Microsoft.Crm.Extensibility.InternalOperationPlugin.Execute(IServiceProvider serviceProvider) at Microsoft.Crm.Extensibility.V5PluginProxyStep.ExecuteInternal(PipelineExecutionContext context) at Microsoft.Crm.Extensibility.VersionedPluginProxyStepBase.Execute(PipelineExecutionContext context) Inner Exception: System.Xml.XmlException: An error occurred while parsing EntityName. Line 7, position 171. at System.Xml.XmlTextReaderImpl.Throw(Exception e) at System.Xml.XmlTextReaderImpl.HandleEntityReference(Boolean isInAttributeValue, EntityExpandType expandType, Int32& charRefEndPos) at System.Xml.XmlTextReaderImpl.ParseText(Int32& startPos, Int32& endPos, Int32& outOrChars) at System.Xml.XmlTextReaderImpl.FinishPartialValue() at System.Xml.XmlTextReaderImpl.get_Value() at System.Xml.Linq.XContainer.ReadContentFrom(XmlReader r) at System.Xml.Linq.XContainer.ReadContentFrom(XmlReader r, LoadOptions o) at System.Xml.Linq.XElement.ReadElementFrom(XmlReader r, LoadOptions o) at System.Xml.Linq.XElement.Load(XmlReader reader, LoadOptions options) at System.Xml.Linq.XElement.Parse(String text, LoadOptions options) at Microsoft.Crm.ObjectModel.SharePointProxyBase.ValidateSharePointSite(String[] siteUrls, String& validationLog) at Microsoft.Crm.ObjectModel.SharePointProxyService.ValidateSharePointSite(String[] siteUrls, ExecutionContext context, String& validationLog) .
My user is CRM Administrator, local admin on both CRM and Sharepoint servers, and SharePoint Farm Administrator. Certificates are issues by our local CA.
I can't get a grasp of exactly WHAT is failing, and where to start looking. If I manually add a SharePoint site in CRM, and run validation it validates. However it will not validate through the SBI wizard..
Any takers? :)