Webcast. Todo lo que siempre quisiste saber sobre SharePoint, pero no te atreviste a preguntar II

Los grupos de usuarios de SharePoint de habla hispana os proponemos un evento online un tanto diferente: os proponemos durante aproximadamente 90 minutos charlar con los principales expertos de la plataforma en países de habla hispana. Ven con nosotros, plantéanos tus dudas y cuestiones sobre nuestro servidor favorito y averigua todo aquello que siempre quisiste saber, pero nunca te atreviste a preguntar.

Nos vemos el 1 de junio a las 15.00 (GMT) https://msevents.microsoft.com/CUI/WebCastEventDetails.aspx?EventID=1032486303&EventCategory=4&culture=es-ES&CountryCode=ES

Entre los participantes en la charla contaremos con algunos de los mayores conocedores de la plataforma SharePoint como: Gustavo Vélez, David Martos, Ricardo Muñoz, Juan Andrés Valenzuela, Juan Carlos González, Alberto Díaz, Daniel Seara, Héctor Insua, Manuel Herrera, Haarón González y Fabian Imaz.

SharePoint Designer 2010 no me permite guardar un fichero

Alguna vez te habrá pasado que no puedes hacer algo con SharePoint Designer 2010 que normalmente puedes hacer. El caso con el que me he encontrado hoy ya me había pasado en alguna ocasión, pero el hecho que haya estado buscando la solución durante más tiempo del necesario me ha empujado a escribir este breve artículo.

Síntoma

Al abrir un sitio con SharePoint Designer 2010 puedo localizar un fichero, desprotegerlo y editarlo pero al intentar guardar el fichero recibo un error indicando que el fichero ya no está desprotegido o que ha sido eliminado.

Causa

A la hora de implementar el paquete de despliegue no hemos indicado que el fichero en cuestión es GhostableInLibrary.

Solución

Localizar el fichero en vuestro paquete de despliegue y aseguraos de poner la parte resaltada en la siguiente figura.

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

<Elements xmlns="http://schemas.microsoft.com/sharepoint/">

  <Module Name="ModuleName" Path="ModulePath" Url="ModuleUrl">

    <File Path="file.url" Url="file.url" Type="GhostableInLibrary" />

  </Module>

</Elements>

Como habréis imaginado, necesitaréis redesplegar el sitio para solucionar el problema. Si en el escenario en el que os encontráis no podéis hacerlo, la única opción que tenéis es la de eliminar el fichero incorrectamente desplegado y subirlo manualmente ya sea desde SharePoint Designer o desde la interfaz de usuario de SharePoint. En cualquier caso os recomiendo que arregléis la característica que ya teníais (por eso de que pueda venir un service pack o un desarrollador después de vosotros que haga que la característica se vuelva a activar y os rompa alguna cosa)

El servicio de sincronización de perfiles de usuario de SharePoint 2010 no se inicia

Quizá uno de los puntos más conflictivos en la instalación de SharePoint 2010 sea la configuración del servicio de sincronización de perfiles de usuario. Son muchas las causas que pueden provocar que el servicio no se inicie o no acabe de funcionar correctamente. En su mayoría las causas acaban siendo el no seguir adecuadamente los pasos de la guía de instalación. No obstante, nunca dejará de sorprenderme el hecho que, aún siguiendo los pasos al pie de la letra, siempre acaba habiendo un nuevo obstáculo en el camino.

Hoy, en una instalación que tengo entre manos, me encontré con que el servicio estaba parado y no había manera humana de iniciarlo. Al revisar los logs me encontré con esta perlita:

The Execute method of job definition
Microsoft.Office.Server.Administration.ProfileSynchronizationSetupJob
(ID b542c13b-af6a-41ed-a810-04a7405c536b) threw an exception. More
information is included below.

An update conflict has occurred, and you must re-try this action. The
object UserProfileApplication Name=User Profile Service Application
was updated by FARMuser, in the OWSTIMER (4548) process, on
machine SP.  View the tracing log for more information about the
conflict.

Tras verificar unas cuantas veces que había seguido todos los pasos al pie de la letra empecé a buscar la causa del error que estaba recibiendo. Al parecer esto ocurre si el contenido de la caché del sistema de archivos en los servidores frontales de la granja de SharePoint es más nuevo que los contenidos de la base de datos de contenidos. Pero, ¿cómo lo soluciono?

La solución es más simple de lo que parece. Sólo es necesario seguir los pasos que Microsoft indica en este artículo de su KB.

  1. Parar el servicio Windows SharePoint Services Timer
  2. Navegar a la carpeta donde Windows Server 2008 guarda la caché. En 2008 lo encontraréis en %ProgramData%MicrosoftSharePointConfig.
  3. Encontraréis ahí dos carpetas con un GUID como nombre. Una de ellas contiene un montón de ficheros .XML y un fichero CACHE.INI. Entrar en la carpeta que contiene el fichero CACHE.INI.
  4. Hacer una copia de seguridad del fichero CACHE.INI
  5. Eliminar todos los ficheros .XML de la carpeta
  6. Borrar todo el contenido del fichero CACHE.INI, escribir un 1 y guardar el fichero
  7. Reiniciar el servicio Windows SharePoint Services Timer

Probar de nuevo a iniciar el servicio de sincronización de perfiles de usuario y debería funcionar correctamente.