Como: Publicar en Bibliotecas de Office365 a través de Java

Para publicar la documentación generada desde un aplicativo de Java, propongo varias aproximaciones:

  • A través de los servicios web expuestos por la plataforma de Office365. 

  • Trabajar a través del modelo de objetos cliente, ECMAScript. 

Antes de continuar, hay que hacer notar que las bibliotecas en SharePoint son tipos particulares de listas, es por ello que en la documentación las referencias se llevan a cabo sobre listas y no sobre bibliotecas (Libraries). 

Servicio web de SharePoint 

Como referencia es recomendable partir del documento de guía de desarrolladores: 

SharePoint Online for Office 365: Developer Guide 

https://www.microsoft.com/en-us/download/details.aspx?id=17069 

Servicio 

En donde se indica que el servicio web de listas se expone para su acceso: 

Lists Web Service 

https://msdn.microsoft.com/en-us/library/websvclists.aspx 

Para acceder a éste servicio hay que utilizar la referencia: 

https://<site>/_vti_bin/Lists.asmx 

Herramientas 

El modo de capturar el WSDL (Web Services Description Language) es escribiendo: 

https://<Site>/_vti_bin/Lists.asmx?WSDL 

Understanding WSDL 

https://msdn.microsoft.com/en-us/library/ms996486.aspx 

Con la siguiente herramienta es más sencillo generar el XML para los servicios: 

Web Services Description Language Tool (Wsdl.exe) 

https://msdn.microsoft.com/en-us/library/7h3ystb6(v=VS.80).aspx 

Recursos 

Para consultar el modo en que utilizar éste servicio existe la siguiente entrada de Blog: 

Connecting to SharePoint Online Web Services 

https://blogs.msdn.com/b/sharepointdev/archive/2011/05/12/connecting-to-sharepoint-online-web-services.aspx 

Publicaciones 

Existen muchas publicaciones sobre cómo abordar ésta aproximación y todas coinciden en que las incidencias que se encuentran son debidas al modo de autentificación y seguridad de la plataforma. 

Algunos ejemplos de éstas publicaciones son: 

How do I upload a document to SharePoint with Java? 

https://stackoverflow.com/questions/314258/how-do-i-upload-a-document-to-sharepoint-with-java 

JAX-WS Sharepoint 401 Unauthorized NTLM 

https://stackoverflow.com/questions/4865165/jax-ws-sharepoint-401-unauthorized-ntlm 

SharePoint Web Services: 3 things to consider before coding in Java 

https://davidsit.wordpress.com/2010/02/03/sharepoint-web-services-3-things-to-consider-before-coding-in-java/ 

Creating SharePoint list items with java: tutorial 

https://davidsit.wordpress.com/2010/02/15/creating-sharepoint-list-items-with-java-tutorial/ 

Calling SharePoint webservices like lists.asmx using javascript 

https://social.msdn.microsoft.com/forums/en-US/sharepointdevelopment/thread/c756054f-05c5-4a21-8d0a-242b34eecce7/ 

Modelo de objetos cliente (ECMAScript) 

Para evitar el despliegue en la plataforma de un desarrollo, es posible utilizar el modelo de objetos cliente, disponible en SharePoint Online. 

API 

Modelo de objetos administrados cliente de SharePoint es un API que se ejecuta en cliente.  

Convierte las llamadas de API en una petición XML y la envía al servidor de SharePoint. En el servidor, la solicitud XML es gestionada por un servicio llamado Client.svc donde se traduce la solicitud XML en llamadas apropiadas al modelo de objetos de SharePoint Server y obtiene los resultados. 

Después de recibir los resultados, Client.svc traduce en notación de objetos JavaScript (JSON) y envía de regreso al modelo de objetos de cliente administrado. En el lado del cliente la respuesta JSON es traducida en objetos de ECMAScript para ECMAScript. 

Su aplicación se lleva a cabo a través de un elemento web (WebPart) denominado “Editor de contenido”, que permite incorporar código cliente al portal Office365. 

Recursos 

JavaScript Class Library 

https://msdn.microsoft.com/en-us/library/ee538253 

SP Namespace 

https://msdn.microsoft.com/en-us/library/ee557057.aspx 

Using the SharePoint Foundation 2010 Managed Client Object Model 

https://msdn.microsoft.com/en-us/library/ee857094(office.14).aspx 

Publicaciones 

Existen muchas publicaciones sobre cómo abordar ésta aproximación. 

Algunos ejemplos de éstas publicaciones son: 

SharePoint 2010: Use ECMAScript to manipulate (Add/Delete/Update/Get) List Items 

https://ranaictiu-technicalblog.blogspot.com.es/2010/07/sharepoint-2010-use-ecmascript-to.html 

Using the ECMAScript Client Object Model with JQuery Templates 

https://www.thesharepointblog.net/Lists/Posts/Post.aspx?List=815f255a%2Dd0ef%2D4258%2Dbe2a%2D28487dc9975c&ID=92 

Get and set the list item value in SharePoint 2010 using ECMAScript 

https://www.dotnetspark.com/kb/5086-get-and-set-list-item-value-sharepoint-2010.aspx