jueves, 26 de septiembre de 2013

Comportamiento aparentemente errático de las Apps que muestran el contenido para algunos usuarios y a otros no en SharePoint 2013 On Premises o local con los mismos niveles de permisos

Este fue un error que me costo encontrar donde estaba el problema por lo que creo que es de utilidad compartir con ustedes la solución del problema.

Escenario:

SharePoint 2013 Idioma Español versión Standard con un hotfix de Marzo 2013 instalada.

Las apps fueron desarrolladas para para SharePoint online y nadie nos había reportado este problema pero luego de instalarla en un cliente en SharePoint 2013 On Premises, reportaron que algunos usuarios no veían el contenido de ninguna App.  Estas mostraban diferentes contenidos como imágenes, links, información de los empleados.

Probamos de todo, diferentes navegadores, diferentes computadoras, y siempre que el usuario ingresaba con su usuario y contraseña en diferentes computadoras y navegadores, n o les mostraba el contenido de ningún App.

Por lo que publique el problema en el foro de technet.microsoft.com relacionado con Apps en SharePoint 2013.

http://social.technet.microsoft.com/Forums/en-US/75b55f98-c4db-49e5-9001-4997ff5f5966/some-users-do-not-display-the-contents-of-app-part-and-do-not-show-any-errors-on-sharepoint-2013-on?prof=required

Allí me aconsejaron que descargará fiddler y revisará el tráfico entre el navegador y el servidor.  Y el error que reportaba fiddler al intentar autenticarse para acceder los archivos JS de no autorización.

Bueno luego de analizar la información y realizar muchas pruebas hayamos el problema.  Los usuarios que tenían acceso limitado al Internet eran los que las Apps no podían renderizar el contenido a pesar que tenían acceso a las listas e imágenes del App Web y  el problema se debía a que todas las Apps tenían una referencia a la librería microsoft.ajax.js en la nube y esto evitaba que el contenido lo pudiesen ver.  La línea de código era la siguiente:

<script type="text/javascript" src="https://ajax.aspnetcdn.com/ajax/4.0/1/MicrosoftAjax.js">

La Solución:

Bueno se descargó el archivo microsoftAjax.js en una carpeta de scripts dentro del App y se hizo referencia de esta.  Se publicó de nuevo cada App y el problema se resolvió.

Apps4Fun!,

Juan Manuel Herrera Ocheita

No hay comentarios.: