# Tomcat Verzeichnis Problem



## waxalot (7. Feb 2006)

Hallo zusammen,

ich blicke nicht mehr durch.  :cry: 
In meiner Anwendung nutzt die JSP Page eine Bean, die wiederrum einen Prozess bei mir auf dem Rechner startet. Nun blicke ich allerdings nicht durch das Verzeichnis Gewurschtel von tomcat durch. 
In meinem Programm nutzt die Bean eine Datei (count.txt) um sich dort einen aktuellen Zählerstand herzuholen.
eshalb finde ich nach dem Aufruf meiner JSP plötzlich im $TOMCAT\bin Verzeichnis MEINE count.txt Datei wieder??  ???:L 
Nutzt Tomcat das \bin Verzeichnis als temporäres Verzeichnis?
Kann ich nicht irgendwie festlegen welche Verzeichnisse meine Umgebung darstellen sollen?


----------



## waxalot (7. Feb 2006)

Oder mal etwas konkreter gefragt   ,

in welchem Verzeichniss müsste ein Programm (*.exe) liegen, wenn es von einer Bean aufgerufen wird. Imselben wie die Bean oder im root Verzeichniss meiner JSP Anwendung?

Mal etwas zu meinem Programm:

Die JSP Page:

```
<%-- XPath Visualisierungs Tool / JSP Modul --%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">


<jsp:useBean id="xpathBeanobj" class="test.XPathBean"/>
<jsp:setProperty name="xpathBeanobj" property="*"/>
<html>

    <head>
        <title> Test </title>
  
    </head>
    <body>
    <% 
        xpathBeanobj.serviceBean();
        xpathBeanobj.writeFile();
    %>

    </body>

</html>
```

Wie man sieht liegt meine Bean im Paket "test".

Nun meine Bean:


```
package test;
import java.io.*;
        
public class XPathBean {
    
    String countfilename = new String("count.txt");
    String currentDir = new File("").getPath();    

    String tempDir = new String("\\temphtml");
    int count;
    String qry;
    
    /** Creates a new instance of XPathBean */
    public XPathBean(){ 

        try{
    		
            BufferedReader readIn = new BufferedReader(new FileReader(countfilename));
            String tempIn = readIn.readLine();
            this.count = Integer.parseInt(tempIn);
            readIn.close();    
        }catch(IOException e){ System.err.println(e); }
    } // Ende des Konstruktors
    
    public void setQry(String newqry){
        
        this.qry = newqry;
        
    } // Ende der Methode setQry
    
    public String getQry(){
        
        return this.qry;
        
    } // Ende der Methode setQry


    public void writeFile(){
        
        try{
            this.count++;
            BufferedWriter writeOut = new BufferedWriter(new FileWriter(countfilename));
            String tempString = new String();
            tempString = Integer.toString(this.count);
            Byte tempOut = new Byte(tempString);
            writeOut.write(tempString);
            writeOut.close();
        }catch(IOException e){System.err.println(e);}
    }

    public void serviceBean(){
        
        Runtime runtimeobj = Runtime.getRuntime();  //Aktuelle Umgebung laden
        Process proc;                               // Neues Prozessobjekt
        
        String execString = new String("msxsl.exe lit.xml style.xsl -o "+currentDir+tempDir+"\\out"+count+".html"+"    selectedNodes='"+qry+"'");
        try{

        proc = runtimeobj.exec(execString);
	
        }catch(IOException e){System.err.println(e);}
  
    } // Ende der Methode serviceBean
    
} // Ende der Klasse XPathBean
```

So, in welchem Verzeichnis arbeitet Tomcat dann? Sprich müsste die .exe Datei im Verzeichnis der Bean liegen (\WEB-INF\classes\test) oder im root Verzeichnis oder wo?  
Ich verstehe einfach nicht warum plötzlich im \bin Verzeichnis meine "count.txt" Datei steht. Tomcat hat einfach eine Kopie dieser Datei gemacht und dort hinterlegt und am Zählstand kann ich erkennen, dass die Bean auf DIESE \bin\count.txt Datei zugreift und nicht auf die gewünschte.


----------



## bronks (7. Feb 2006)

In der TomcatDoku gibt es ein extra Kapitel dazu.


----------



## waxalot (8. Feb 2006)

Hallo bronks,

ich weiß das hört sich jetzt seltsam und faul an   , doch könntest Du mir vielleicht einen Link auf DIESES Dokument geben? Wenn ich nach Dokus zum Tomcat suche, finde ich nur jede Menge kleine Dokus aber wahrscheinlich nicht DIE Doku.

Vielen Dank schonmal....

MfG Markus


----------



## bronks (8. Feb 2006)

Siehe da, im zweiten Post: http://www.java-forum.org/de/viewtopic.php?t=26041


----------

