#nomenubar *2006年度第22回ゼミ(2006年11月09日)資料 [#ec9090be] CENTER:[[10月26日(ゼミ#21)>Lab/2006/1026]] << 11月09日(ゼミ#22) >> [[11月23日(ゼミ#23)>Lab/2006/1124]] CENTER:[[10月26日(ゼミ#21)>Lab/2006/1026]] << 11月09日(ゼミ#22) >> [[11月22日(ゼミ#23)>Lab/2006/1122]] CENTER:[[研究関係Wikiトップへ戻る>Lab]] #contents ※前週、および次週はゼミ休み(メールで進捗状況を報告) **11/09 [#r736d649] -PICNICの発掘・動作テストに成功 --http://192.168.5.228/ --AccessServletからは、電源が切れてると以下のように表示。 Error!!! No actual reply data found which written in Data Section. -Armadilloへのインストール --マニュアル類のうち、StartupGuideは本当に接続や設定のみが記載(ファームの更新方法止まり) --SoftwareManualに書き換え方法・開発環境等が記載 ---7. atmark-distでイメージを作成←これを試す ***現在のところの感想 [#g91f2257] -もっといろんな機器が操作できるようになれば面白い -アクセスしてくる端末に合わせてUIが変われば良い -エラーメッセージが不親切 -誰でもさわり放題はマズい?(認証機構) ***ToDo [#kc16b1be] -Dynamic Drawで出力したEPSファイルがDVIで見ると文字化けする問題の解決 -データベースのインストール -(時間があるときに)Linuxマシンのアップデート(というか再インストール) **11/08 [#q803d1ed] ***ToDo [#q53ad984] -Picnicとの接続テスト→通信テストはOK・温度センサーはNullPointer -Event Listが表示されない原因→データベースが未インストール -Webカメラからのレスポンスがおかしい理由→元々か?要調査 -アルマジロへの移植→11/9開始 **11/07 [#y1e3fd80] -Webカメラからの画像取得に成功・Webカメラの操作にも成功 --画像はサーバーに保存されるだけでブラウザに出ない --操作も成功はするが表示される画面が変(HTMLの冒頭数バイトが切れてる?) DeviceController内でよく例外エラーが発生する部分(640行付近)→try〜catchを挿入 attrs.put("Attr",params.get(0).toString()); attrs.put("Name",params.get(1).toString()); attrs.put("Dest",params.get(2).toString()); attrs.put("Port",Integer.decode(params.get(3).toString())); AccessServlet内でWebカメラ情報取得時に例外エラーが発生する部分(301行付近)→try〜catchを挿入 File dataout = new File("/usr/local/tomcat/webapps/ROOT/servlet/data/" + res_from_dc.attr + ".xml"); (中略) dataout.createNewFile(); **11/1 [#uc242bd8] -AccessServletのdoGet内ではreturnすればすぐプログラムが終了する --return直前にout.printlnでエラー内容を出力すれば読むことができる! --DeviceControllerのReadData内でrtn.return_strにエラー内容を出力する **10/29 [#s85e51dc] -500エラーでAccessServletが動作しなかったのはjavaのバージョンが古かったため --.zshrcでjavaおよびjavacを最新のJDKのalias指定してコンパイルし直し --500エラーの画面で「サーブレットインスタンスを割り当て中のエラー」と出る時は環境を確認 --tomcat起動時に実行されるsetclasspath.shに正しいclasspathが設定されていなかったのが原因。http://d.hatena.ne.jp/karia/20061029#1162113331 -out.println("なんとか");でHTMLに文字が出力される模様 --getListメソッド内ではダメらしい(コンパイルの段階でエラー扱い) ---return kekkaとして文字列を返しているのでkekka = kekka + "なんとか";として対処 -文字のエンコード関係で警告が大量発生 --動作には影響しないのでjavac時に-nowarnで抑制 --"-encoding EUC-JP"でも抑制されるが、どちらにしろ日本の出力は全部???になる --"PrintWriter out = res.getWriter();"より前にsetContentTypeが無かったのが原因だった http://www.ingrid.org/java/jserv/i18n/corruptedchar.html#location-1 ***AccessServletに直接アクセス [#a0eb7bdd] -Translation error - javax.xml.transform.TransformerConfigurationExceptionという表示はXmlTrans.class内のエラー表示 -「スタイルシートをコンパイルできませんでした」はXML・XSLのファイル名をわざと間違ったものにしても変化なかった→ファイルの置き場所が悪いor何故かちゃんと読めてない -''サーバー上のフルパスでxml、xslを指定するとちゃんと動作''→以降はDevice.xml直の時と同じ ***Device.xml上で「クエリ送信」ボタンを押した場合 [#sd501012] -ArrayList関連のエラーが出る→DeviceController.java内のDevice.xmlの位置を修正すればOK java.lang.NumberFormatException: For input string: "" java.lang.NumberFormatException.forInputString(NumberFormatException.java:48) java.lang.Integer.parseInt(Integer.java:468) java.lang.Integer.valueOf(Integer.java:526) java.lang.Integer.decode(Integer.java:919) DeviceController.ReadData(DeviceController.java:643) AccessServlet.doGet(AccessServlet.java:184) javax.servlet.http.HttpServlet.service(HttpServlet.java:689) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) -DeviceController内643行目 --ポート番号と思われる数字の取得に失敗(おそらく空文字が帰って来てる) →DeviceControllerの643行目をtry〜catchで囲んだ java.lang.NullPointerException java.util.StringTokenizer.<init>(StringTokenizer.java:182) java.util.StringTokenizer.<init>(StringTokenizer.java:204) AccessServlet.doGet(AccessServlet.java:200) javax.servlet.http.HttpServlet.service(HttpServlet.java:689) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) AccessServletの200行目:''aSt = new StringTokenizer(res_from_dc.html_source, "%" );'' ***Device.xml上でEvent Listをクリックした場合 [#a4acb4f1] java.net.ConnectException: Connection refused java.net.PlainSocketImpl.socketConnect(Native Method) java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333) java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) java.net.Socket.connect(Socket.java:516) java.net.Socket.connect(Socket.java:466) java.net.Socket.<init>(Socket.java:366) java.net.Socket.<init>(Socket.java:179) AccessServlet.doGet(AccessServlet.java:109) javax.servlet.http.HttpServlet.service(HttpServlet.java:689) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) -AccessServletの109行目→"Socket socket = new Socket( "localhost", 5001 );" ***Device.xml上でData Exportをクリックした場合 [#k65dadb2] -"ERR - Save exception java.io.FileNotFoundException: /servlet/_tmp_ (No such file or directory)"と表示される --表示してる場所はDeviceController経由・External.class内の''return "ERR - Save exception " + e;''の部分 --実際にhttp://192.168.5.227:8080/servlet/_tmp_が存在しても同じエラー **関連ページ [#b369fb9e] -[[Lab]]