Home Page di Graziano Scappatura
Loading

Error 1058: The service cannot be started

sabato 28 novembre 2009

Tutto e' partito dai continui crash di Apache Tomcat 5.5.17. Mi sono rivolto percio' alla mailing-list degli utenti di Tomcat, aprendo un thread (Tomcat 5.5.17 crashes too often).

La prima cosa che e' venuta fuori e' il colpevole: la servlet PHP (php5servlet.dll) che realizza l'interprete PHP nel mio ambiente Tomcat.

Tuttavia, mi e' stato consigliato di aggionare la JVM (Java Virtual Machine), che sicuramente era un po' troppo datata, dalla versione che avevo io:

C:\>java -version
  java version "1.5.0_09"
  Java(TM) SE Runtime Environment (build 1.5.0_09-b04)
  Java HotSpot(TM) Client VM (build 14.3-b01, mixed mode, sharing)

alla versione piu' recente che adesso ho installato:

C:\>java -version
  java version "1.6.0_17"
  Java(TM) SE Runtime Environment (build 1.6.0_17-b04)
  Java HotSpot(TM) Client VM (build 14.3-b01, mixed mode, sharing)

e questo avrebbe potuto risolvere il problema.

Difatti, non ha risolto un bel niente. Anzi mi sono imbattuto in un problema in cui non ne riuscivo a venirne a capo. Ovvero, il servizio Tomcat5 (Apache Tomcat) non partiva affatto. E non partiva nemmeno specificando nella configurazione dell'avvio del servizio, la vecchia JVM come JVM da essere usata da Tomcat.

L'errore che Windows mi dava e' il seguente:

Impossibile avviare Apache Tomcat.

Errore 1058: Il servizio Impossibile avviare, perché è disabilitato o perché non sono periferiche associati.

L'unico suggerimento che mi e' stato dato e' stato dato e' di aggiornare anche l'application server, visto che la Apache Tomcat 5.5.17 era vecchio. Ho quindi installato Apache Tomcat 5.5.28 e ripristinato tutte le configurazioni e applicazioni. Ma il risultato non cambiava.

Ho perso un bel po' di tempo a cercare su Internet, quando ho trovato il seguente articolo che spiega la causa:

Error 1058: The service cannot be started, either because it is disabled or because it has no enabled devices associated with it.

e quest'altro che da' la soluzione.

Servizio non viene avviato e viene visualizzato "Errore 1058"

HTTP Server di Apache e i 'behaviour'

sabato 22 novembre 2008

Sul Web si fa un uso diffuso dei menu orizzontali "drop down" (a tendina). Per realizzare questi piacevoli menu, si fa uso dei fogli di stile (CSS) e dei selettori per i vari elementi HTML.

Un selettore particolarmente importante per realizzare questo tipo di menu per un sito Web, e' ":hover", che permette di cambiare lo stato di una porzione di codice HTML che realizza spesso una "tendina" di un menu a discesa.

Purtroppo, c'e' un problema noto nell'ambiente che e' legato al fatto che non tutti i browser supportano "completamente" il selettore :hover. In particolare, Internet Explorer (IE6) supporta :hover solo per il tag "a". Visto che un menu a tendina normalmente usa il selettore :hover anche su altri elementi, cio' risulta - con brutta sorpresa per lo sviluppatore Web che si trova per la prima volta a sviluppare una tale funzionalita' - in un sito praticamente inservibile per una buona porzione di utenti.

C'e' da dire pero' che, fortunatamente, sebbene IE6 non supporta completamente il selettore ":hover", nonostante il controllo venga effettuato con Javascript, il comportamento che implementa quando trova un foglio di stile con il selettore :hover in un tag diverso da a, e' di trascurare il tag senza dare alcun errore.

Rimane comunque il problema di far funzionare i menu a tendina con IE6. Per raggirare questo problema, viene incontro un aspetto che i browser Internet Explorer (IE) supportano, ovvero i "behaviour". I behaviour sono file ".htc" o ".hta" che si collegano a particolari elementi HTML usando i fogli di stile, e permettono loro di comportarsi in modi speciali (come i comportamenti che hanno con i browser piu' moderni come Internet Explorer 7 - IE7 - e Mozilla Firefox - MF).

A tal proposito, ho trovato molto interessante il tutorial Come creare un menu css dropdown orizzontale di base. Tale articolo, fa riferimento al problema che ho citato e ricorre al behaviour "csshover2.htc" scritto dal Peter Nederloff, ampiamente commentato in CSS Hover.

Tuttavia, tutte queste linee guida non sempre possono essere sufficienti a vedere il proprio menu drop down funzionare correttamente. Infatti, il corretto funzionamento puo' anche dipendere dal Web server che si usa per pubblicare il sito. Ad esempio, se si usa HTTP Server di Apache nella sua configurazione nativa, si continuera' ad avere un menu drop down non funzionante.

Non poco ci ho sbattuto la testa prima di riuscire a capire che il problema era legato al MIME type del behaviour. Difatti, HTTP server di Apache, se il MIME type per l'estensione .htc non e' definito, restituisce:

  HTTP/1.1 400 Bad Request

Chiaramente, questa e' una causa del cattivo funzionamento del menu drop down.

Di questo me ne sono potuto accorgere per il semplice fatto che il menu funzionava correttamente su Come creare un menu css dropdown orizzontale di base, mentre a me continuava a non funzionare nonostante avevo meticolosamente ( :-) ) ricopiato il codice funzionante. A quel punto mi era rimasta solo la chance di testare il menu su un diverso Web server. L'alterantiva, che ho scelto io e' stato Tomcat e su Tomcat il menu ha funzionato correttamente.

A seguito di questa difformita', ho 'googlato' e sono riuscito risalire ad un preziosissimo articolo della Microsoft in cui viene citato il problema, la causa e la soluzione (PRB: Apache Web Server non carica i comportamenti HTC).

Riconfigurando HTTP server di Apache - aggiungendo il MIME type per i behaviour, e riavviando il servizio, il menu a tendina funziona correttamente anche con IE6.

Infatti, la risposta HTTP questa volta e':

  HTTP/1.1 200 OK

e, in particolare, l'header "Content-type" e':

  Content-Type: text/x-component

Se cosi' non e', allora bisogna solo andare a controllare i permessi e la proprieta' del behaviour sul file system.

Cambio canale

lunedì 07 aprile 2008

Pippo Baudo a Sanremo non riesce a regalare alcuna novita', come dovrebbe invece fare un festival che si professa 'la piu' importante delle manifestazioni canore d'Italia'. Ma e' solo un nauseante riciclo di quello che nemmeno trent'anni fa' era novita'. E qualche giovane spinto da dietro da 'super Pippo' e trascinato davanti da una giuria fatta di persone che avrebbero accettato anche di fare una telepromozione con Roberto da Crema pur di apparire in TV.

E in tutto cio', non riesce piu' a salvare il culo nemmeno il dopofestival, affondato definitivamente dalla squallida polemica tra Luzzato Fegiz e Toto Cotugno. Forse qualcosa di artificiale. Costruito apposta per risollevare le sorti del festival (dubbio peraltro legittimo, dati i precedenti di Baudo). Ma che, a mio parere, ha disgustato quelle poche persone che, come me, si aspettavano dal dopofestival qualche spunto interessante che e' venuto a mancare completamente nel festival, e che invece non ha potuto constatare altro che la capitolazione della vecchia signora che fa ridere ma non diverte piu'. Che non riesce a cogliere molte verita'. Che non vede ne' ascolta le esegenze del pubblico che le gira le spalle.

Forse la sconfitta della TV e' solo dovuta alla voglia di nuovo che l'uomo matura per ogni cosa nel corso della sua vita. Forse e' la normale e salutare fine di un ciclo, preludio di una rinascita e di una piu' che mai folgorante nuova stagione della TV. Forse e' solo una mia masturbazione mentale.

Ma oggi preferisco leggere un quotidiano o un perodico, per farmi un quadro di quello che succede intorno a me, e non vedere un telegiornale che assume sempre piu' i contorni di uno show che deve fare odiens piuttosto che un notiziario di informazione. Preferisco ascoltare un po' di musica invece che vedere un programma a premi in cui si vince sempre piu' per fortuna e sempre meno per la dottrina o per l'intelletto. Preferisco navigare su Internet e prender parte ad un newsgroup invece che ascoltare un talk show in cui si parla sempre piu' di cose che interessano a chi parla e sempre meno a chi ascolta.

E persino la programmazione di un film in TV oggi sta diventando qualcosa di vecchio e' superato. Disponendo di un collegamento ad Internet sufficientemente veloce e cliccando su 'http://www.riflettotv.it', si accede ad una Web TV interattiva, ovvero un sito che da' all'utente l'arbitrio di scegliere uno dei film in programmazione, e guardarlo in streaming attraverso il browser e senza l'installazione di alcun software.

Search

Tag Cloud

Archive

recent Post

Link

Blogroll

Feed

All Post

ADS