Sep21

[MOSS] Problemas con la activación de WorkFlows declarativos

Tags: MOSS/WSS, SPD

 

El SPD (SharePoint Designer) es una herramienta muy útil (y gratis) para diseñar WorkFlows, cuando se crean desde el SPD se denominan declarativos. 

Entiendo que reciben este nombre debido a su naturaleza, un WF declarativo se ejecuta con la cuenta del usuario que lo desencadena, por ejemplo si el WF se activa al añadir un nuevo elemento a la lista, las acciones que puede realizar el WF, son las mismas que las del usuario que provocó su activación por lo tanto si el usuario que lo desencadena no tiene permisos para modificar otra lista y el WF en su ejecución la intenta modificar, fallará.

Esto limita en algunas ocasiones el tipo de acciones que se pueden realizar mediante este tipo de WF, por ejemplo no permite la activación de un WF con usuarios anónimos. Algunos desarrolladores para evitar esta limitación, mediante diversos métodos activaban este tipo de WF usando la cuenta de sistema, que tiene acceso a todo el contenido de SharePoint. El equipo responsable de SPD descubrió un problema de seguridad en los WF declarativos que solucionaron con el SP1, y uno de los efectos de la solución es que a partir de la aplicación de dicha actualización no permite la activación de WF declarativos con la cuenta del sistema.

Por lo tanto si tienes problemas en la activación automática de un WorkFlow declarativo que se ha diseñado usando el SPD, una de las posibles razones es que se esté intentando activar usando la cuenta del sistema, bastante común en entornos locales o de desarrollo.

Algunos enlaces:

Como último apunte decir que mediante SPD solo se pueden definir WF de tipo secuenciales, para definir WF de tipo máquina de estados hay que hacerlo con Visual Studio.

Publicado: 21-Sep-09 | 0 Comentarios | 0 Enlaces a este post

Sep16

Enlaces I

Tags: Herramientas

Os dejo una serie de enlaces interesantes que he encontrado últimamente:

  • Plantillas de SharePoint para Microsoft Visio

clip_image002

clip_image004

http://sharepointsherpa.com/2008/02/01/sharepoint-2007-visio-stencil/

  • Excel con las relaciones entre roles y niveles de permisos y opciones visibles del menú para cada nivel de permisos

clip_image005

http://blogs.msdn.com/markarend/archive/2008/02/14/sharepoint-2007-permissions-matrix.aspx

  • Página Web que permite “escapar” HTML y viceversa

Muy útil para trabajar con XSLT

clip_image007

http://www.htmlescape.net/htmlescape_tool.html

Publicado: 16-Sep-09 | 0 Comentarios | 594 Enlaces a este post

Sep14

[MOSS]Topologías: colecciones de sitios con host header

Tags: Arquitectura, MOSS/WSS

 

En SharePoint es posible especificar host headers tanto para aplicaciones web, como para colecciones de sitios, esto puede ser bastante útil a la hora de afrontar algunos tipos de topologías.

Pongamos el caso de una empresa que necesita diferentes sitios para los distintos departamentos, de tal manera que cada uno de ellos tenga su propio FQDN, esto puede realizarse usando una aplicación web para cada departamento, pero esto incrementaría notablemente el número de bases de datos presentes y complicaría las tareas de backup/restore.

Este problema puede simplificarse significativamente si agrupamos todos los departamentos dentro de la misma aplicación web, por lo que serían colecciones de sitios, y el FQDN para cada uno de ellos puede establecerse usando host header, por lo tanto tendríamos todas las colecciones de sitios agrupadas dentro de una misma aplicación web y por lo tanto en la misma base de datos, algo bastante interesante sobretodo si no contamos con un volumen de datos grande, que es lo normal, en este tipo de sitios.

También sería posible repartir el contenido de la aplicación web en varias bases de datos, en caso de que contasen con un gran volumen de datos.

Por lo tanto será necesario crear colecciones de sitios de la siguiente manera:

clip_image002

Para simplificar un poco los pasos necesarios para llegar a una topología de este tipo, en este ejemplo se va a crear una como la siguiente:

clip_image004

Para conseguir una topología de este tipo, lógicamente, en primer lugar será necesario crear una aplicación web, en este caso para complicarlo un poco más, también la aplicación web tendrá un “host header”, por lo tanto se crea una aplicación web con un host header, que en este caso será “Raiz”, y estará alojado en el puerto 80:

clip_image006

Una vez creemos la colección de sitios, si se ha especificado un host header es necesario incluirlo en el DNS o en el fichero de hosts (c:\WINDOWS\system32\drivers\etc\hosts) para que el IIS sepa a qué aplicación web redirigir las peticiones.

Este sería el fichero de hosts, donde se incluye una nueva entrada, indicando que las peticiones a la aplicación web se redirijan a la propia máquina:

clip_image008

Y mediante dicho host header se podrá acceder al sitio:

clip_image010

Para crear el resto de colecciones de sitios con host header, será necesario utilizar los comandos stsadm, desde el interfaz no es posible, por lo tanto con el comando “createsite” se especifica la Url con la que se accederá al sitio, el hostheader, y tambien en el parametro hhurl, la dirección “real” que tendría dicho sitio si no se usara un host header.

clip_image012

No entiendo muy bien porque para el parámetro hhurl (host header url) se especifica la dirección “real”, entiendo que debería ser al revés….

Nuevamente habrá que modificar el DNS o el fichero de hosts, para incluir la nueva entrada:

clip_image014

Y en este caso también hay que modificar el valor del host de la aplicación web para que reconozca las peticiones, en este caso de “subsitioPrimerNivel”, para ello en la administración del IIS, incluimos en la aplicación web raíz el host header “subsitioPrimerNivel”:

clip_image016

Como al ejecutar el comando stsadm de creación de la colección de sitios no he indicado la plantilla de sitio, al acceder por primera vez, SharePoint necesitará que se seleccione una:

clip_image018

Y a este subsitio se accede mediante el host header:

clip_image020

Si para esta colección de sitios, creamos un nuevo subsitio mediante el interfaz, se creara de la siguiente manera:

clip_image022

Algunos artículos relacionados:

Publicado: 14-Sep-09 | 2 Comentarios | 0 Enlaces a este post

Sep10

[MOSS] Completar las tareas de configuración de la administración central

Tags: MOSS/WSS

 

Por defecto cuando instalamos una nueva granja de SharePoint en la esquina superior izquierda de las páginas de la administración central se muestra un mensaje indicando que la configuración de la granja no esta completa.

Para hacer que este mensaje desaparezca, lógicamente hay que configurar correctamente la granja y finalizar las tareas asignadas al administrador:

clip_image002

Para que desaparezca este mensaje hay que seguir los pasos de las tareas de administrador de mayor prioridad (las cuatro que se muestran en la página principal de la administración central) que consisten en añadir servidores a la granja, configurar los roles de cada servidor y configurar los servicios compartidos.

A modo de curiosidad resaltar que para la parte relativa a configurar los servicios compartidos tanto el servicio de Búsqueda de MOSS (Office SharePoint Search), como el servicio de búsqueda de WSS (Windows SharePoint Search) , como los servicios Excel (Excel Calculation Services) deben estar configurados y arrancados:

clip_image004

clip_image006

Una vez todas las tareas están correctamente realizadas y completadas, puede ser necesario realizar un reinicio del IIS (iisreset). Y el mensaje de alerta desaparecerá:

clip_image008

Si una vez completadas todas las tareas sigue sin desaparecer el mensaje de que la configuración de la granja no está completa puede ser necesario reiniciar los Excel Services, el servicio de búsqueda de MOSS, el servicio de búsqueda de WSS o incluso reiniciar la máquina de la administración central.

Enlace a la referencia de TechNet:

Dismiss the Server Farm Configuration not Complete warning

Publicado: 10-Sep-09 | 0 Comentarios | 0 Enlaces a este post

Sep08

Comparativa del volumen de datos SharePoint en Internet según GoogleTrends

Tags: MOSS/WSS

Curioseando un poco con Google Trends,  me surgió la idea de comparar los volúmenes de búsquedas presentes en Internet referentes a SharePoint con algunos de sus competidores.

GoogleTrends muestra el volumen de búsquedas de un término en particular o de una comparativa entre una serie de elementos.

Por una parte estos son los resultados de comparar SharePoint con otras herramientas colaborativas en este caso de software libre como Drupal, Liferay, Mindtouch y Alfresco.

(Pinchando en cada una de las imágenes se abrirá cada una de las búsquedas de WebTrends)

clip_image002

Y estos los de comparar SharePoint con otras herramientas de pago como FileNet, Documentum, OpenText y Lotus Notes:

clip_image004

A la vista de los resultados parece clara la importante ventaja actual en lo referente a contenidos en Internet entre SharePoint y el resto. Esto parece un claro indicador de la salud actual de SharePoint si tenemos en cuenta que todas estas herramientas vendrían a competir por el mismo nicho de mercado.

Los datos localizados para España son ligeramente distintos:

clip_image006

clip_image008

Hay que recordar que estos resultados solo se refieren a volúmenes de datos en las búsquedas de Google y de contenidos indexados y que si bien no son una medida exacta del nivel de implantación del producto sí que pueden ser indicativos del interés generado y del volumen de datos presentes en la red referentes a cada una de las tecnologías.

Investigando un poco más también me he encontrado con estos artículos relacionados que creo que son bastante interesantes:

Para finalizar os dejo esta reflexión, extraída de este articulo, que me parece bastante acertada e interesante:

Microsoft SharePoint taking business by storm

Versatile Microsoft server may not be perfect, but it is attracting interest as tool to address anything from collaboration to process management

Microsoft's SharePoint Server is on a billion dollar juggernaut to potentially become the next must-have technology, offering companies tools for building everything from collaborative applications to Internet sites and potentially handing Microsoft its next cash cow.

"I have not seen anything like this since the early days of [Lotus] Notes," says Mike Gotta, an analyst with the Burton Group. In those days, corporate users were enamored with a shiny new technology that seemed to have infinite uses. "The talk [around SharePoint] is getting strategic now and people are talking about it as a middleware decision," Gotta says.

Microsoft Office SharePoint Server (MOSS) 2007 is the fastest growing product in the company's history and seems to have as many uses as a Swiss Army knife. Its six focus areas are collaboration, portal, search, enterprise content management (ECM), business process management and business intelligence.

Publicado: 08-Sep-09 | 0 Comentarios | 0 Enlaces a este post

Sep02

[MOSS] Recopilatorio de errores de indexación

Tags: MOSS/WSS

 

En este artículo voy a intentar ir recopilando los diferentes errores de indexación que me vaya encontrando.

Antes de comenzar a enumerar los diferentes errores de rastreo, por si alguien ando muy perdido, intentaré enumerar un par de criterios muy básicos para validar el correcto funcionamiento del rastreo:

A.-Cuando tarda un tiempo prudencial en rastrear el contenido, dependiendo lógicamente del tamaño del contenido a rastrear:

image

Si tarda menos de 10 segundos no es un buen síntoma….

B.-Verificar el correcto funcionamiento o los errores que se han producido en el log (Crawl Log):

image

C.-Y fundamentalmente comprobar que funcionan las búsquedas en MOSS.

 

1.- ERRORES DE ACCESO AL CONTENIDO

Normalmente el primer síntoma de que la indexación no va bien, es que una vez configurado el origen de contenido a rastrear, una vez que comenzamos un rastreo completo (full crawl) o incremental, este dura pocos segundos y en el log del crawl solo encontramos registros de errores como muestra la siguiente imagen:

image

Y en el detalle encontraríamos con algunos errores de este tipo:

-The system cannot find the path specified. (Exception from HRESULT: 0x80070003)

-Error: The item could not be accessed

-Acces is denied. Verify that either the Default Content Access Account has access to the repository, or add a crawl rule to crawl this repository. If the repository being crawled is a SharePoint repository, verify that the account you are using has “Full Read” permissions on the SharePoint Web Application being crawled.

image

En el visor de eventos de la máquina de la administración central:

The update cannot be started because the content source cannot be accessed. Fix the errors and try the update again

image

 

Este sería el punto de partida común, indagando un poco más encontraremos el origen real del error.

Un primer paso sería verificar que la ruta introducida a rastrear en el origen de contenido es correcta, y que si contamos con un AAM (Alternate Access Mapping) al FQDN (Full Qualified Domain Name), que ese FQDN es el que especificamos en el origen de contenido a rastrear.

También es necesario verificar que la cuenta que realiza el rastreo tiene acceso de lectura al sitio que queremos rastrear y comprobar si tiene acceso desde la propia máquina donde se realiza la indexación, para esto, lógicamente deberemos logarnos en la máquina de indexación con el usuario encargado de realizar el rastreo, y al acceder al sitio que se quiere rastrear si nos encontraremos con que no somos capaces de autenticarnos, y un error de este tipo en el navegador:

HTTP 401.1 - Unauthorized: Logon Failed

Quiere decir que nuestro problema será el “loopback check”. Este error es algo extraño ya que se puede acceder desde otras máquinas pero no desde la propia, para solucionarlo habrá de deshabilitarlo:

Disable the loopback check

Follow these steps:

1.-Click Start, click Run, type regedit, and then click OK.

2.-In Registry Editor, locate and then click the following registry key:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa

3.-Right-click Lsa, point to New, and then click DWORD Value.

4.-Type DisableLoopbackCheck, and then press ENTER.

5.-Right-click DisableLoopbackCheck, and then click Modify.

6.-In the Value data box, type 1, and then click OK.

7.-Quit Registry Editor, and then restart your computer.

 

En el mismo kb de Microsoft(http://support.microsoft.com/kb/896861/en-us) donde explica como deshabilitar el “loopback check” también explican otro método para solucionarlo.

 

En casos en los que la aplicación a rastrear se encuentre con un SSL, también puede ser que nos encontramos con que el crawler no es capaz de acceder al contenido ya que el certificado no es valido, algo bastante común en los entornos que no sean de producción, el error será algo de este tipo:

The secure socket layer (SSL) certificate sent by the server was invalid and this item will not be crawled

image 

Para solucionarlo deberemos añadir una regla de rastreo indicando que ignore los warnings que se produzcan con el certificado:

image

Es posible que necesitemos reiniciar el servicio de búsqueda en las máquinas de indexación.

2.- ERRORES EN EL ALMACENAMIENTO DEL CONTENIDO RASTREADO

Otro caso de error es el relacionado con el almacenamiento de los datos rastreados, en este tipo de errores nos encontraremos algo como esto en el visor de eventos:

The gatherer service cannot be initialized.

image

Como bien detalla el propio error la carpeta temporal, esta llena o inaccesible, normalmente como este tipo de errores se producen en la configuración el problema será de permisos en el acceso a dicha carpeta, sobre la que el usuario que realiza el rastreo deberá tener permisos de administración, yo nunca me he encontrado sin espacio en la ruta de almacenamiento, pero me imagino que será algo que puede producirse y provocará este mismo error.

La carpeta donde se almacena este contenido rastreado  se llama “gthrsvc”, y si no se ha indicado lo contrario en el momento de configurar la máquina de indexación se encontraré en:

C:\Documents and Settings\<Cuenta del usuario que realiza el rastreo>\Local Settings\Temp\gthrsvc\ 

Si no se existe esta carpeta y en la configuración del indexador no se especifica otra ruta, deberemos crearla y asignar los permisos correspondientes.

Publicado: 02-Sep-09 | 1 Comentario | 0 Enlaces a este post

Sep02

[MOSS]AAM con NLB y Hostheader

Tags: MOSS/WSS

 

En granjas de SharePoint con varios frontales resulta muy interesante tener configuradas urls de acceso independientes para cada uno de los frontales, así de una forma rápida es posible posicionarse en uno u otro a la hora de realizar alguna acción o verificación.

Esto es sencillo de conseguir si no se usa hostheader, ya que la url para cada uno de los frontales será el nombre de la máquina y el puerto, pero si por el contrario en nuestra granja usamos un “hostheader” esto se complica un poco.

Por lo tanto para este artículo voy a suponer que la topología de la granja cuenta con 4 frontales, un NLB y además nuestra aplicación web usa hostheader.

image

Para esto en primer lugar deberemos incluir en el DNS o en el fichero de hosts (C:\WINDOWS\system32\drivers\etc\hosts) una entrada para cada uno de las máquinas por lo tanto necesitaríamos un hosts como el siguiente:

clip_image001

De modo que para la IP de cada uno de los frontales asociamos un nombre descriptivo de nuestra aplicación web para cada uno de los frontales.

Ahora deberemos modificar la configuración del IIS (Internet Information Server) de cada uno de los frontales para que nuestra aplicación web responda a los nombres descriptivos que hemos usado en el fichero de host:

clip_image003

De esta manera una vez generemos la petición desde nuestra máquina se redirigirá correctamente a la aplicación web de cada uno de los frontales, por lo tanto ahora solamente falta modificar el AAM (Alternate Access Mapping) en la administración central de la granja para incluir que estas direcciones de entrada se correspondan con la URL pública de la aplicación Web:

clip_image005

De esta manera si desde una máquina accedemos a la url correspondiente a “http://aplicacionweb01” sabemos que estamos en el frontal 1 de la granja.

Por propia experiencia puedo deciros que es muy útil en muchos casos, no se tarda nada en configurar y puede agilizar mucho la resolución de ciertos problemas.

Publicado: 02-Sep-09 | 0 Comentarios | 1 Enlace a este post