Rekl bych, ze problem je prave v tom, ze je to jinej partition. renameTo to
podle meho nazoru neumi - viz. javadoc:
Many aspects of the behavior of this method are inherently
platform-dependent: The rename operation might not be able to move a file
from one filesystem to another, it might not be atomic, and it might not
succeed if a file with the destination abstract pathname already exists.
The return value should always be checked to make sure that the rename
operation was successful.
Dan.
tomasjur...@email
.cz
Sent by: To
konference-bounce [email protected]
[email protected] cc
Subject
02/01/2009 16:45 Tomcat55 fileupload
Please respond to
Java
<konfere...@java.
cz>
Dobrý den
už několikátý den řeším problém s uploadem obrázků na nově instalovaný
Tomcat55 na Linux(CentOS5, Java6Sun).
Uživatel vybere na svém disku soubor a odešle formulář.
Soubor se uloží do /tmp na serveru.
Aplikace si soubor přesune do své složky
<catalinaHome>/webapps/knihovna/images
Problém:
Soubor se uloží do /tmp, ale aplikace soubor nepřesune. Žádná exception.
Jen success = false;
boolean success =myFile.renameTo(destination);
Myslel jsem špatná práva - zkontrolováno
Myslel jsem na catalina.policy , ale Tomcat se nespoští s policy restrikcí.
Aplikace na jiných strojích funguje správně, dokonce jsem připravil stejné
prostředí OS i Java i Tomcat na zvláštním stroji - naprosto stejné.
Knihovny Tomcatu jsou přes linky pospojován do /usr/share/tomcat5, myslel
jsem tedy, že by mohl být problém v odkazech, do contextu jsem přidal
allowLinking="true".
Tomcat se spouští jako služba pod uživatelem tomcat.
Rozdíly mezi nefunkční aplikací na vzdáleném stroji a funkční aplikací na
testovacím stroji jsou:
Na vzdáleném stroji je /tmp samostatný oddíl (LVM).
Funkční aplikaci spouštím na localhostu.
Děkuji za radu, chápu, že tento typ pproblém se přes email těžko řeší. Ale
třeba se někdo s něčím podobným už setkal.
Přeji mnoho radosti s Javou v novém roce
Tomáš Jurman