Capturar diretorio da pasta temp no TomCat [Resolvido]

Bom dia amigos.

Estou aqui com um codígo de um Servlet que tem como função fazer Upload de arquivos.

import java.io.DataInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


public class FileUpload extends HttpServlet {

	private static final long serialVersionUID = 1L;

	public FileUpload() {
	}

	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		doGet(request, response);
	}

	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {

		String contentType = request.getContentType();
		String diretorio = new String("C:\\Arquivos\\");
		String nomeArquivo = request.getParameter("nomeArquivo");

		try {
			if ((contentType != null) && (contentType.indexOf("multipart/form-data") >= 0)) 
			{
				DataInputStream in = new DataInputStream(request.getInputStream());
				int formDataLength = request.getContentLength();
				byte dataBytes[] = new byte[formDataLength];
				int byteRead = 0;
				int totalBytesRead = 0;

				while (totalBytesRead < formDataLength) 
				{
					byteRead = in.read(dataBytes, totalBytesRead,formDataLength);
					totalBytesRead += byteRead;
				}

				String file = new String(dataBytes);
				
				int lastIndex = contentType.lastIndexOf("=");
				String boundary = contentType.substring(lastIndex + 1,contentType.length());

				int pos;
				pos = file.indexOf("filename=\"");
				pos = file.indexOf("\n", pos) + 1;
				pos = file.indexOf("\n", pos) + 1;
				pos = file.indexOf("\n", pos) + 1;

				int boundaryLocation = file.indexOf(boundary, pos) - 4;
				int startPos = ((file.substring(0, pos)).getBytes()).length;
				int endPos = ((file.substring(0, boundaryLocation)).getBytes()).length;

				// Salva no diretorio especificado
				FileOutputStream fileOut = new FileOutputStream(diretorio + nomeArquivo);

				fileOut.write(dataBytes, startPos, (endPos - startPos));
				fileOut.flush();
				fileOut.close();
				
			}
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
}

Gostaria de Mudar isso

String diretorio = new String("C:\\Arquivos\\");

Preciso que meu arquivo seja salvo na pasta temp do tomcat, como faço para pegar
o caminho da temp dinamicamente.

Grato
Caio Oliveira

File.createTempFile cria um arquivo vazio no diretório temporário do Tomcat, e retorna o nome desse File para você poder usá-lo para criar seu arquivo.

Amigo usei a classe File e realmente com esse método ela cria um arquivo temporario.
Mais ela cria na Temp do meu usuário no windows.

Não no meu tomcat, será que quando eu colocar lá na localweb ele vai criar na temp do tomcat?

vai colocar onde o temp estiver configurado…

cuidado com o temp pois por incrível que pareça ele não é temporário tem que deletá-lo

e se for ler tem que usar o getAbsoluteFile()

Eu sei que o script de inicialização do Tomcat muda o diretório temporário (aquele onde File.createTempFile cria os arquivos) para o temp do Tomcat, mas é sempre bom verificar isso.