我有一個使用本地主機在本地windows機器上運行的servlet。我們已經成功地抓住了我們在美國的一位現在將其託管在Linux機器上的同事,因此我們現在可以在一個模擬的真實世界環境中測試該程序。Servlet,寫數據
但是,我似乎得到一個錯誤,我現在不能調試寫,因爲我的主管已經去了一天,我沒有訪問。我們在理解時會留下來做一些調查。
就在他離開之前我把範圍縮小到這些代碼行
file = File.createTempFile("temp", Long.toString(System.nanoTime()));
out.print("Managed to make temp file in trst_servlet");
FileWriter writer = new FileWriter(file);
ObjectOutputStream oos = xstream.createObjectOutputStream(writer, "ProcessedInformation");
oos.writeObject(returnedSearchData);
oos.flush();
oos.close();
out.print("object Persisted"); //PROGRAMME MAKES IT TO HERE
response.setContentLength((int)(file.length()));
FileInputStream in = new FileInputStream(file);
OutputStream ops = response.getOutputStream();
byte[]buf = new byte[1024];
int count = 0;
while((count = in.read(buf)) >= 0)
{
ops.write(buf, 0, count);
}
in.close();
ops.close();
}
catch(IOException ex)
//EXCEPTION CAUGHT HERE
我想知道,沒有任何人有任何想法,如果這是一個問題可能與在Linux中的緩衝區大小,或寫大例如文件大小,然後嘗試將其發送回線路。
基本上這個基於Java的servlet將xml寫入我的c#程序。
謝謝
你能提供一些關於錯誤的細節嗎? – biziclop 2011-02-24 16:30:56
我沒有時間在我的老闆離開前打印出錯誤,所有我新的是它是這些行中的一個,導致異常,因爲我在那裏卡住了一個快速println,並且在這組代碼執行前的println也 – tom 2011-02-24 16:32:32
@tom當然,你不能期望在沒有訪問的情況下調查任何事情,或者至少是異常的堆棧跟蹤。沒有看到任何東西,我可能會猜測文件的路徑包含\而不是/,這就是爲什麼你會得到一個異常。但這只是一個瘋狂的猜測。 – biziclop 2011-02-24 16:38:31