Causa di ‘tmpFile.renameTo(classFile) non riuscita’ durante JSP compilazione

Di recente, ho cominciato a sperimentare strani comportamenti JBOss 4.0.5 applicazione JSP. JSP compilazione fallisce al primo (secondo, terzo,..) tentativo di eccezione:

17:24:29,909 ERROR [[jsp]] Servlet.service() for servlet jsp threw exception
java.io.IOException: tmpFile.renameTo(classFile) failed
        at org.apache.jasper.compiler.SmapUtil$SDEInstaller.install(SmapUtil.java:245)
        at org.apache.jasper.compiler.SmapUtil.installSmap(SmapUtil.java:164)
        at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:429)
        at org.apache.jasper.compiler.Compiler.compile(Compiler.java:297)
        at org.apache.jasper.compiler.Compiler.compile(Compiler.java:276)
        at org.apache.jasper.compiler.Compiler.compile(Compiler.java:264)
        at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:563)
        at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:305)
        at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
        at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)

Dopo alcuni tentativi (dove pochi: 0 ~ 7), la pagina diventa alla fine compilato e rende OK.

Piattaforma è Windows 7 Pro 64 bit, la versione di Java è

c:\ATG\ATG2007.1>java -version
java version "1.5.0_21"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_21-b01)
Java HotSpot(TM) Client VM (build 1.5.0_21-b01, mixed mode)

JBoss versione:

16:49:51,384 INFO  [Server] Release ID: JBoss [Zion] 4.0.5.GA (build: CVSTag=Branch_4_0 date=200610162339)

Tomcat versione 5.5 (quello incluso con JBoss).

Grazie.

InformationsquelleAutor Miro A. | 2010-09-10



3 Replies
  1. 4

    Questo è legato alla Tomcat 5.5 bug 38713. Sembra essere fissato in Tomcat 5.5.25 in poi.

    • Questo sembra essere piuttosto vecchio bug. La teoria di gara condizione può essere di destra, come ci sono altre persone che la squadra di utilizzo di Windows 7 (anche se non a 64 bit Pro) con la stessa JBoss / Tomcat che non hanno problemi.
    • Ho provato l’aggiornamento all’interno di Tomcat JBoss 4.0.5 per 5.5.30 – le istruzioni sono qui: itapproaches.blogspot.com/2010/08/… – purtroppo, vedo ancora l’errore, anche se molto molto meno.
    • Questo accade ancora oggi quando Tomcat 6 è distribuito all’interno di M 3.3
    • Semplicemente che sto usando Windows 8.1 e Tomcat 7 e sto ottenendo questo errore
    • Sto usando tomcat-7.0.42 e stato sempre che di errore in modo intermittente. E ‘ stato dopo che ho letto il commento di stackoverflow.com/a/14361529/1565521 mi sono reso conto che alcuni cartella all’interno della directory di tomcat è stato di sola lettura. Ho cliccato sul diritto tomcat-7.0.42 directory e deselezionate la casella di sola lettura. Le cose sembrano che. Così non è sicuramente qualcosa legato solo Tomcat 5.5 e colpisce le versioni successive troppo.
  2. 8

    Avanti veloce di quattro anni per il 2014. Tomcat 8, Java 8, Windows 8, stesso errore. Dopo mezza giornata di frustrazione si scopre essere causato dal mio software antivirus, che nel mio caso è McAfee. Sono andato estrema e disinstallato il tutto. Ma probabilmente c’era qualche impostazione avrei potuto escludere il Tomcat directory vivere la scansione.

    • Anno 2015, stessa cosa, grazie mille, non mi sarei mai stato in grado di prendere il mio. Penso che la causa era che per sbaglio ho attivato qualcosa su uno dei mille windows McAfee ti mostra in una sola volta o in un altro durante l’uso del PC, ma di procedere a disinstallare tutto, come hai fatto tu, perché, si sa, all’inferno con i produttori di PC e la loro inclusione di alcune inutile un software antivirus che è già scaduto, quando si avvia il computer per la prima volta.
  3. 5

    La cartella che sta gettando IOException in realtà è di sola lettura, dopo la modifica è scrivibile, le cose stanno funzionando bene.

    • Come si può dire dalla domanda originale della cartella?
    • Che era esattamente ciò che era sbagliato. Ho effettuato il root del mio applicazione scrivibile con tutte le sottocartelle e questo problema è andato via. Grazie.

Lascia un commento