# Tomcat6/axis1.4 kann nicht auf Dateien zugreifen



## boorad (15. Jun 2011)

Hallo,

ich brauche mal einen Rat von euch. auf einem Windows2003 Server habe ich Tomcat6 und Axis1.4 laufen und mit dem Adminclient eine Javaclasse deployed. Die Klasse soll ein File erzeugen mit:

```
... new RandomAccessFile( "bla.txt", "rw" );
```
Wenn ich die Klasse als Webservice aufrufe klappt alles nur es wird nirgendwo ein File erzeugt. (Im Unix macht er das, die Datei landet dann im bin vom Tomcat)
Es gibt weder Meldungen die einen Hinweis auf eine mögliche Zugriffsverletzung geben noch andere Fehlermeldungen.
Gebe ich einen kompletten Pfadnamen im Dateinamen an klappt es auch.

Im META-INF Verzeichniss vom Axis habe ich eine context.xml mit folgendem Inhalt:
[XML]<Context workDir="${catalina.home}/webapps/axis" >

</Context>[/XML]
Habt ihr irgendeine Idee?

Grüße
Matt


----------



## fastjack (15. Jun 2011)

Tomcat wird user.home als Standard nutzen, das ist unter Linux/Win unterschiedlich. Du kannst aber die Methode 


```
myServlet.getServletContext().getRealPath("myFile.txt"))
```

nutzen, die geht von Deiner Webapplikation aus.


----------



## boorad (15. Jun 2011)

soo, habe die Lösung gefunden: die Datei wurde in c:\windows\system32 geschrieben ! Also musst es ein Pfadproblem sein ... wahrscheinlich CATALINA_HOME nicht gesetzt oder sowas - habe ich mir gedacht.
Da Tomcat als Windows Service eingerichtet wurde, habe ich mit *tomcat6w.exe //US//Servicename* die GUI zum Anpassen aufgerufen und dort unter Arbeitspfad (war leer) einen Pfad innerhalb des Tomcats angegeben. Nach einem Restart des Services hat er die Datei dann dorthin geschrieben!

Was etwas doof ist, beim Installieren als Service über service.bat nützt auch ein richtig gesetztes CATALINA_HOME nichts - der Service hat damit trotzdem erst mal kein richtig definiertes Arbeitsverzeichniss.

@fastjack : mit der Servlet Klasse muss man gar nicht arbeiten wenn man eine Javaklasse über Axis deployed (wei schreibt man das eigentlich richtig?).


----------



## fastjack (16. Jun 2011)

sry, hab mich verlesen.


----------

