Il versioning dei file - per le immagini non è possibile - è disponibile solo per i documenti non protocollati e per le bozze di documenti protocollati. Qualora si voglia sostituire un allegato di un documento protocollato occorre annullare la registrazione e inserire un nuovo documento.
In inserimento di un documento, se non si usano le voci di indice, non è possibile omettere la classificazione. Bisogna, quindi, indicarla insieme agli smistamenti (rpa, cc, ecc.).
Non usare le voci di indice, però, è un approccio sconsigliato perché vincola fortemente il client a Titulus: esso, infatti, deve sapere quali classificazioni usare e a quali persone assegnare i documenti; per ogni persona è necessario indicare il nome, la matricola, il nome dell'ufficio di appartenenza e il suo codice. La voce di indice, invece, semplifica la configurazione del client ed in futuro verrà usata per assegnare anche altre informazioni (es. il codice di repertorio). Se un ateneo non è abituato ad usare le voci di indice, si consiglia comunque di definirle almeno per i client che devono registrare dei documenti mediante i web service. A causa di alcune limitazioni, attualmente non è possibile usare le voci di indice per indicare il mittente di un documento tra uffici (RPA e classificazione della minuta). La cosa, però, verrà presto risolta.Attualmente le annotazioni inserite tramite il metodo Titulus.postIt() non vengono notificate agli smistamenti del documento. La notifica delle annotazioni verrà però implementata a breve.
dom4j è una libreria java usata per la gestione dei file xml.
Non avendo esperienza in .NET, riportiamo il workaround trovato da un cliente:
http://www.codeproject.com/Articles/94235/The-request-failed-with-HTTP-status-417-Expectatio
Scarica la dispensa: dotnet-titulus_web_services.pdf
Si ringrazia l'Università degli Studi di Catania per aver gentilmente concesso la distribuzione di questa dispensa.
Ecco un client .NET di esempio scritto in C#: titulushelper.zip
Le risposte SOAP multipart 1) non si riescono a gestire mediante WCF.
E' necessario usare la libreria Microsoft.Web.Services2.dll per interpretare correttamente questi messaggi SOAP.
Abbiamo recentemente provato a generare il codice del client .NET scritto in C# utilizzando .NET 4.
Questi sono i risultati della generazione: wsdl /serverInterface Titulus.wsdl wsdl /server Titulus.wsdlPurtroppo non abbiamo esperienze con questo linguaggio di programmazione e non abbiamo ricevuto dei riscontri da parte dei clienti che hanno usato php per contattare i servizi di Titulus.
Sappiamo che le più diffuse librerie per la creazione di client php hanno dei problemi nella gestione dei messaggi SOAP mime-multipart, cioè non riescono a gestire il download/upload dei file secondo la specifica SwA (SOAP with Attachments) usata dal vecchio servizio Titulus. Tutto ciò di cui disponiamo è un link ad un post di un forum dove si affronta questo problema:Problema del client PHP nella gestione dei messaggi SOAP Multipart
Al di là delle tecniche “fai da te”, sembra che si consigli l'uso della libreria WSO2 WSF/PHP.
Un nostro cliente consiglia di usare la libreria “NUSOAP” (versione usata: 0.9.5), avendo, però, l'accortezza di istanziare l’oggetto di tipo nusoap_client_mime al posto di quello usato normalmente, cioè nusoap_client.
L'uso dei metodi per il download degli allegati che non fanno uso della specifica SwA consente di evitare i problemi riscontrati in passato (vecchio servizio Titulus). Si vedano getAttachmentByteArray() e getAttachmentBase64() .
Anche per l'upload degli allegati è possibile fare a meno della specifica SwA, usando il metodo saveDocumentWithAttachments() .Con i nuovi servizi della versione 4 la modalità di upload/download dei file tramite SwA è stata abbandonata, quindi non è più necessario usare delle librerie in grado di gestirla.
Dipende dalle esigenze del cliente. Si tratta di un aspetto legato alla configurazione del sistema e non impatta sul funzionamento dei servizi.