ArrayList vData;
UrlConnection vUc;
...網絡連接代碼得到 vUc實例....
...設置vUc屬性。。。
vUc.setRequestProperty("Content-Type","application/x-www-form-urlencoded");//設置server處理流方式
ObjectOutputStream vObjOut=new ObjectOutputStream(vUc.getOutputStream());
vObjOut.writeObject(vData); //傳送ArrayList對象到服務器
......
vObjOut.flush();
vObjeOut.close();
修改:
在設置server處理流方式中,應該這么寫:vUc.setRequestProperty("Content-Type","application/octet-stream").
這在本質上是一個與對象的序列化相分離的發送、接收附加信息的非正式途徑。將“Content-Type”類型設置為“application”可通知系統,流有意讓傳輸的數據由安裝在本地的程序來解釋.
server代碼:
ObjectInputStream vObject=new ObjectInputStream(request.getInputStream()); //出先前面我說到的錯誤。
ArrayList vData=(ArrayList)vObject.readObject();
順利通過。
如果你的client是jsp,就沒必要這么處理了,直接用session或rquest.setAttribute("")來處理了。
項目移植中幾個問題都基本解決了,最后還有一個session在application傳遞問題,下周沒解決再來問。
文章來源于領測軟件測試網 http://www.kjueaiud.com/