Una delle maggiori richieste quando si implementa qualcosa in Umbraco che ha del pregresso è, ovviamente, l’importazione.

Personalmente, mi sono trovato bene con CmsImport (prima noto come UmbImport), un package commerciale che per 99 dollari permette di fare l’importazione “semplice” e, tramite custom action, maneggiare il documento importato in modo da fare virtualmente qualsiasi cosa. A meno che l’autore non abbia aggiornato la documentazione o il blog mentre leggete questo post, vi consiglio di scrivergli per chiedergli esempi: è possibile fare veramente tante cose e lui è molto disponibile ad aiutarvi, ma gli esempi e la documentazione online sono un pò carenti.

Uno dei più “lunghi” problemi che ho avuto nel suo utilizzo è che, oltre i 100 nodi importati, tutto andava in bomba ed iniziavano ad essere lanciate strane eccezioni relative agli indici di Lucene:

System.IO.IOException. The process cannot access the file [path to some lucene index file].

Googlando anche nelle community di Lucene, ho scoperto un comando

Lucene.Net.Store.FSDirectory.SetDisableLocks(true);

Che dovrebbe disabilirate il locking. Altrimenti, da quello che ho capito, il fatto che l’importazione non sia thread safe può fare accavallare le cose (praticamente lo stesso problema che si ha se si usa la funzionalità di reindicizzazione di Umbraco mentre qualcuno pubblica…)

Technorati Tags: ,,