Recentemente ho dovuto riprendere in mano una struttura ancora NT4 e Exchange 5.5 (un tuffo nella preistoria dell'informatica ). Il problema che si presentata era legato al servizio OWA, installato su un server NT4 diverso da quello di produzione: questo server aveva funzionato egregiamente per molti anni, ma recentemente aveva iniziato a piantarsi di tanto in tanto, dando agli utenti un bel:

 

ASP 0115 - Unexpected error 
/exchange/root.asp
A trappable error occurred in an external object. The script cannot continue running.

 

Contemporaneamente l'event viewer segnalava lo stesso errore sulla pagina. Da notare che per far ripartire il tutto era necessario un riavvio del server, cosa peraltro molto scomoda.

La stranezza di tutta la questione è che il sistema aveva regolarmente funzionato per tanto tempo: il problema si è manifestato solo recentemente ed era diventato ben presto insostenibile.

 

SPIEGAZIONE

Cercando a giro su internet i vari messaggi di errore ho scoperto che questi problemi non erano poi così isolati (c'è ancora tanto 5.5 al mondo!): anche Microsoft segnalava qualcosa sugli errori ASP 0115 ma tutto ciò a cui faceva riferimento era stato fatto (permessi, patch e così via).

Ad un certo punto ho inciampato su http://support.microsoft.com/kb/818709 che, sebbene non riportasse esattamente l'errore cercato, presentava una serie di analogie con quanto visto: in pratica, i problemi si erano verificati quando agli utenti era stato consegnato un nuovo PC sul quale era stato montato Outlook 2003. L'articolo in questione dice che Outlook 2003 aggiunge una entry ad una proprietà MAPI della mailbox e che le vecchie CDO.DLL (montate su 5.5), non essendo in grado di capire questa aggiunta vanno in crash.

Abbiamo ovviamente provato un po' di configurazioni, creando un utente ex novo e verificando che, fin tanto che si accedeva alla mailbox da Outlook 2000 o OWA tutto funzionava; al contrario, dopo il primo accesso alla mailbox con Outlook 2003, il problema compariva (alle volte immediatamente, alle volte dopo un pochino che si lavorava via OWA).

Contrariamente però a cosa dice l'articolo, l'event viewer del server 5.5 non presentava alcun evento significativo, nemmeno attivando tutte le opzioni del Diagnostic Logging. Dato che non ci rimanevano altre carte da giocare, abbiamo richiesto la patch e l'abbiamo applicata SOLO su OWA. Risultato: OWA non si è più bloccato.

Ricapitolando, a differenza di cosa dice Microsoft, nel mio caso ho trovato che:

  • Non c'è alcuna segnalazione sull'Event viewer di Exchange (forse perchè i due servizi erano separati)
  • La patch va applicata solo sul server OWA e non anche sul server Exchange (come, invece, suggerisce l'articolo).