La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Desarrollo.NET sobre SharePoint 2003 (WSS y SPS) César de la Torre Software Architect

Presentaciones similares


Presentación del tema: "Desarrollo.NET sobre SharePoint 2003 (WSS y SPS) César de la Torre Software Architect"— Transcripción de la presentación:

1 Desarrollo.NET sobre SharePoint 2003 (WSS y SPS) César de la Torre Software Architect

2 Agenda Introducción de la Arquitectura de Microsoft SharePoint Portal Server 2003 Oportunidades de Desarrollo Desarrollo de Web Parts Sharepoint 2003 Desarrollo de gestión de eventos de las Bibliotecas de Documentos El Modelo de Objetos de SharePoint 2003 Los Web Services de SharePoint 2003 FUTURO: Web Parts en Whidbey.NET ¿Que? ¿Cómo? ¿Por qué?

3 ¿Por qué SharePoint 2003? Distribución y compartición de información Colaboración Espacios de trabajo de Documentos y reuniones Gestión Documental Bibliotecas de Documentos (meta-data, versionado, aprobación de documentos, check- in/check-out) Personalización y Notificación Encontrar información

4 ¿Windows Sharepoint Services 2003 vs. SharePoint Portal Server 2003? Windows SharePoint Services 2003 (v2) Microsoft SharePoint Portal Server (v2) Windows Server 2003.NET Framework 1.1 SQL Server 2000 (SP3) Windows SharePoint Services SharePoint Portal Server Office 2003 System SolucionesCustom

5 PortalPrincipal Arquitectura Lógica de SharePoint Portal Server 2003 IIS 6.0 vServer vServer App Web Colección de Sites SharePoint Sub-Portal 1 Sub-Portal 2

6 Oportunidad desarrollo 1: Web Parts Puntos a ver: ¿Qué son los Web Parts? Pasos Básicos Cache La Técnica de los User Controls

7 ¿Qué son los Web Parts? (SPS2003) Perspectiva de Usuario Un Web Parts es un bloque de construcción (caja) en una página de un Portal de SharePoint Perspectiva de Gestores de Contenido Web Parts son contenedores de información que se pueden añadir a las páginas al igual que las Bibliotecas de Documentos y las Listas Perspectiva de Desarrollo Los Web Parts son Web-Controls extendidos basados en ASP.NET que implementan interfaces estandard de SharePoint Interesantes SOLAMENTE si vamos a reutilizarlo

8 Trabajando con Web Parts Galerías de Web Part Web Part Page Gallery Virtual Server Gallery Online Gallery Se sueltan en páginas En Páginas ASP.NET divididas en zonas Personalización Propiedades Comunes ToolPart Conexión entre Web Parts Importación y Exportación de Web Parts

9 Uso de Web-Parts Web Parts ejemplo: - Biblioteca de Documentos - Enlaces - Foros de Discusión - etc. (1)

10 Desarrollo de Web Parts Plantillas de proyecto WebPart con VS.NET (MSDN Downloads) Derivar de clase base de SharePoint Implementar uno o mas interfaces de SharePoint Renacimiento.WebParts.MiWebPart Microsoft.SharePoint.WebPartPages.WebPart System.Web.UI.Control Tu assembly Microsoft.SharePoint.dll System.Web.dll

11 Los ficheros de un Web Part Tu Web-Part encapsulando Assembly.NET encapsulando el código servidor y renderización del HTML Un fichero DWP (basado en XML) que guarda algunas Propiedades y valores que se necesitan para cargar el assembly.NET Un fichero manifest (basado en XML) que guarda datos a fusionar con el web.config Fichero CAB STSADM.EXE Utilidad de instalación

12 Desarrollo Básico - Simple 1. Definir Propiedades custom del WebPart 2. Generar un montón de HTML en el método RenderWebPart

13 Desarrollo de Web-Part Hola Mundo - Creación de Web Part - Métodos Base de un Web Part - HTML renderizado manualmente (2)

14 Desarrollo Básico – Realista (Uso de WebControls internos) 1. Definir Propiedades custom del WebPart 2. Sobreescribir CreateChildControls 1. Instanciar web-controls y añadirlos a la colección de controles 3. Implementar el gestionador(es) del evento OnLoad

15 Persistencia de Propiedades Atributo WebPartStorage por propiedad Storage.SharedStorage.PersonalStorage.None Los ficheros.DWP persisten valores de propiedades para realizar importaciones/exportaciones

16 Web-Part ejemplo Visor de Noticias RSS - Utilización de Web-Controls dentro de WebPart - Propiedades persistentes de WebParts - Debugging de WebParts (3.1)

17 Cache de Web Parts (1) Tenemos dos opciones tecnológicas para el CACHE: Cache estandard de páginas ASP.NET Cache de Web-Parts (soporta cache por usuario)

18 Cache de Web Parts (2) Los Administradores – no los desarrolladores – establecen el tipo de cache en el web.config Tenemos 2 tipos de cache CacheObject (Cualquier objeto.NET) Database (El objecto tiene que ser serializable)

19 Cache de Web Parts (3) Los valores de Cache se pueden guardar como: SharedPersonal Métodos de la clase base WebPart PartCacheRead()PartCacheWrite()PartCacheInvalidate()

20 Web-Part Visor de Noticias RSS - CACHE de WebParts (3.2)

21 Trabajo con User Controls No hay un diseñador para las clases Web Part Truco: Podemos utilizar User-Controls de ASP.NET Situar.ascx en Directorio de Aplicación Web Definir el Managed Path Dentro del Web Part, utilizar this.Page.LoadControl(/tu path) Instala el Assembly del Web User Control en el GAC Añade la referencia del assembly en el web.config

22 Web Part con User Controls (web) Ejemplo de WebPart utilizando un User-Control de formulario complejo (4)

23 Conexión de Web Parts Los Web Parts se pueden conectar si implementan los interfaces para conexiones (estandard SharePoint)

24 Interfaces Soportados ICellProvider, ICellConsumer IRowProvider, IRowConsumer IListProvider, IListConsumer IFilterProvider, IFilterConsumer IParametersOutProvider, IParametersOutConsumer IParametersInProvider, IParametersInConsumer

25 Seguridad en páginas de Web Parts Se permite a los usuarios modificar páginas directamente No se permite ejecutar cualquier código: No se permite inline script Code behind si se permite No se permite usar cualquier control de servidor Lista de SafeControls en Web.Config Dá a los administradores control sobre qué clases pueden utilizarse Code behind Controles de Servidor Web Parts

26 Seguridad en páginas de Web Parts (cont.) Gestión de Identidad para acceder a datos externos Impersonation = true Delegation Kerberos si configurado por admin SSO en SharePoint Portal Server

27 Deployment (Inst. En Producción) Assemblies, Recursos y su localización Los Assemblies pueden instalarse en el GAC o en el directorio bin del WebSite Los Recursos se instalan en /_wpresources o /wpresources respectivamente DWPs se instalan en el directorio /wpcatalog

28 Deployment (cont.) GAC Por defecto Fully trusted Los Assemblies necesitan estar firmados con un strongname. Disponible para todos los servidores virtuales de la máquina Bin Por defecto Partial trust Disponible solo para un WebSite específico

29 Deployment (cont.) WPPacks son ficheros cab que contienen; ManifestAssembliesRecursosDWPs La creación de.cabs permite a los administradores usar la utilidad stsadm.exe para el deployment

30 Deployment (cont.) Mas allá, crear un.msi Contiene el.cab Usar el objeto SPGlobalAdmin del namespace Microsoft.SharePoint.Administration AddWPPackRemoveWPPackEnumWPPacks Deployment de politicas CAS usando el.msi

31 Deployment de Web Parts Ejemplo de uso de stsadm.exe (5)

32 Librerías de clases.NET Utilizando el Modelo de Objetos de SharePoint se puede manipular programáticamente contenido de Bibliotecas y Listas Oportunidad desarrollo 2: Gestión de Eventos de Bibliotecas de Documentos

33 Pasos de Desarrollo Crear una Librería de clases.NET Añadir referencia a Microsoft.SharePoint.dll Implementar el interfaz IListEventSink Añadir tu código en el método OnEvent() Se llama a este método cuando ocurre algo en la Biblioteca de Documentos Firma tu Assembly Registralo en el GAC Habilita el soporte para Doc Lib Event Handlers en tu servidor virtual Especifica el Doc Lib Event Handler a la Biblioteca de documentos o Formularios

34 Libreria.NET de gestión de Eventos de Librería SharePoint (6)

35 Oportunidad desarrollo 3: Acceso a SharePoint desde aplicaciones.NET Dos opciones: Modelo de objetos (assemblies) de SharePoint (p.e. acceder a SharePoint desde mi app. ASP.NET) XML Web Services de SharePoint (p.e. acceder a SharePoint desde mi app. WinForms)

36 Oportunidad desarrollo 3: - Acceso a SharePoint desde aplicaciones.NET - Assemblies vs. Web Services

37 Modelo de Objetos.NET de SharePoint Modelo de Objetos de codigo gestionado en el servidor Accessible desde ASP.NET o cualquier otro proceso en el servidor Implementado en C# Expone practicamente todos los datos guardados en Windows SharePoint Services

38 ¿Que se puede hacer con este Modelo de Objetos? Ejemplos: Añadir, editar, borrar, y devolver datos de las Listas de SharePoint Crear nuevas listas y establecer metadatos de listas (e.j. los campos en una lista) Establecer propiedades de web Trabajar con documentos en una Biblioteca de documentos. Realizar tareas administrativas como crear webs, añadir usuarios, crear roles, etc.

39 SPVirtualServer SPWebServer SPGlobalConfig SPSite SPWeb SPList SPListItem

40 Web-Part Acceso a Profiles de usuarios de SharePoint - Modelo de Objetos de SharePoint 2003 (7)

41 Resumen OM El modelo de objetos tiene tres objetos principales de alto nivel: SPWeb (representa un site individual) SPSite (representa una colección de sites, que es un conjunto de web sites) SPGlobalAdmin (utilizado para administración de configuración global) Para poder realizar acciones en los datos de un web, primero hay que obtener siempre un objeto SPWeb.

42 Web Services de WSS (Windows SharePoint Services) La capa de web services publica la capa de OM. Permite manipulación de Lists, Webs, Vistas, etc. La Funcionalidad es similar al OM, pero algunos interfaces están optimizados para minimizar las transacciones. Office 2003 (e.j. Excel, DataSheet, Work, Outlook, FrontPage, etc) utilizan dichos web services para acceder a los datos de WSS.

43 EjemplosGetListCollectionGetListItemsGetWebCollectionUpdateListUpdateListItemsGetWebInfoGetWebPartGetSmartPageDocumentOtros…

44 Uso de XML Web Services Acceso a Profiles de usuarios de SharePoint - XML Web Services de SharePoint 2003 (8)

45 Ver contenido de SharePoint en un Pocket PC

46 Single Sign-On Servicio de valor añadido en SharePoint 2003 Proporciona una única autenticación para todas las aplicaciones custom en un entorno Intranet. B.D. SQL de Single Sing On (Es un Cache de Credenciales) IE Login Automático Challege-Response Entramos en la Intranet Login programat. App. 1 App. Custom 1 App. Custom n Obtención credenciales Cacheadas Login visual para App 1 Cacheamos las credenciales b. a

47 Demo de Single Sign-On

48 FUTURO: Web Parts en Whidbey.NET

49 ¿Qué tenemos hoy? Sin tener en cuenta a Whidbey.NET Los Web Parts tienen que ser Web-Controls custom basados en ASP.NET Las páginas para Web Parts tienen que estar obligatoriamente alojadas en Sites de SharePoint Es escalable, está soportado, y tenemos disponible una infraestructura completa de servicios de SharePoint Las Zonas son estrictamente plantillas visuales de contenedores

50 Tools Client Application Model AvalonWindows Forms Web & Service Application Model ASP.NET / Indigo Win FS Compact Framework Yukon Mobile PC Optimized System.Help System.Drawing System.NaturalLanguageServices Data Systems Application Model Presentation Data Mobile PC & Devices Application Model Communication Command Line NT Service DataSet Mapping ObjectSpaces ObjectSpace Query Schema Item Relationship Media Audio Video Images System.Messaging System. Discovery System.DirectoryServices System.Remoting System.Runtime.Remoting Active Directory Uddi System.Web.Services Web.Service Description Discovery Protocols System.MessageBus Transport Port Channel Service Queue PubSub Router System.Timers System.Globalization System.Serialization System.Threading System.Text System.Design Base & Application Services Fundamentals System.ComponentModel System.CodeDom System.Reflection System.EnterpriseServices System.Transactions Security System.Windows. TrustManagement System.Web. Security System.Message Bus.Security Authorization AccessControl Credentials Cryptography System.Web.Configuration System.MessageBus.Configuration System.Configuration System.Resources System.Management System.Deployment System.Diagnostics ConfigurationDeployment/Management System.Windows System.Windows.Forms System.Console System.ServiceProcess System.Windows.Forms System.Web System.Storage System.Data.SqlServer Animation Controls Control Design Panel Controls Dialogs SideBar Notification System.Windows Documents Text Element Shapes Shape Ink UI Element Explorer Media System.Windows.Forms Forms Control Print Dialog Design System.Web.UI Page Control HtmlControls MobileControls WebControls Adaptors Design Ports InteropServices System.Runtime System.IO System.Collections Generic System.Search Annotations Monitoring Logging Relevance System.Data SqlClient SqlTypes SqlXML OdbcClient OleDbClient OracleClient Core Contact Location Message Document Event System.Storage System.Web Personalization Caching SessionState System.Xml Schema Serialization Xpath Query Permissions Policy Principal Token System.Security System.Collaboration RealTimeEndpoint TransientDataSession SignalingSession Media Activities HttpWebRequest FtpWebListener SslClientStream WebClient System.Net NetworkInformation Sockets Cache System.Web Administration Management Navigation Peer Group Policy Serialization CompilerServices Recognition System.Speech Synthesis

51 Compatibilidad Futuro WebParts Los Web Parts para WSS/SPS de hoy funcionarán en las versiones de WSS/SPS del futuro Los Web Parts de Whidbey de mañana funcionarán en los siguientes versiones de WSS/SPS Los Web Parts de Whidbey de mañana funcionarán también en las versiones actuales de WSS/SPS después de aplicar una actualización ó SP correspondiente.

52 Web Parts ASP.NET (Futuro a partir de Whidbey.NET) Ya no se dependerá de SharePoint 2003 para desarrollar WebParts Son bloques de construcción para cualquier Web ASP.NET dinámico. Completamente integrado en el modelo de controles web de ASP.NET Cualquier control-web puede ser un WebPart Cualquier user-control-web puede ser un WebPart Podemos utilizar los nuevos servicioes ASP.NET Personalización, Roles, Membership, etc.

53 Windows SharePoint Services La siguiente versión de WSS y SPS estará basada en ASP.NET Whidbey Los Web Parts actuales de WSS 2.0: Funcionarán en la siguiente versión de WSS Los Web Parts de ASP.NET Whidbey: Funcionarán sobre ASP.NET Whidbey Funcionarán sobre la siguiente versión de WSS Funcionarán sobre WSS 2.0 * (Service Packs)

54 Conclusiones desarrollo.NET sobre SharePoint 2003 SharePoint 2003 tiene muchas oportunidades para desarrolladores.NET permitiendo extender y crear soluciones propias basadas en SharePoint Web Parts Custom (Aplicaciones propias) Acceso a elementos internos de SharePoint Compatibilidad con futuros WebParts de.NET Whidbey

55 Recursos Centro de Downloads de SharePoint Products and Technologies en MSDN Ejemplos de desarrollo en GotDotNet Desarrollo Web Parts y Whidbey.NET WebParts Proyectos y/o Formación de Renacimiento


Descargar ppt "Desarrollo.NET sobre SharePoint 2003 (WSS y SPS) César de la Torre Software Architect"

Presentaciones similares


Anuncios Google