推 timmy852111:感謝Tony大 這篇我需要好好消化一下QQ 09/27 02:34
※ 引述《timmy852111 (光⊙﹏⊙)》之銘言:
: 問題描述:
: 使用了JAVA撰寫了一隻擷取GPS訊號的程式
: 但是想要送給網頁使用(google map)
: 因為由於是要讓使用者取得目前所在位置之經緯度座標因此必須在client端執行
: 流程如下:
: (一)
: 使用者於client端上執行JAVA程式讀取硬體(GPS接收器)的訊號取得定位資訊
: 然後程式(自動?)開啟瀏覽器進入網頁
: 並將取得的參數傳遞給網頁(javascript)使用
你目標的網頁是別人的服務還是你自己的 web server ?
如果是別人的服務,你要先知道對方有沒有提供對應的 service,
舉例來講 google map 有提供 q 這個param 可以搜尋地址
http://maps.google.com/maps?q=test
假設你要搜 test 就用 Runtime.exec() 去執行browser path。
(如果你限定windows的話,可以簡單一點直接執行
[iexplorer.exe "網址"]
總之你要先找到對方服務有提供給你的api的形式,才能夠往下做。
: (二)
: 使用者開啟網頁 網頁內鑲有抓取GPS訊號之applet程式
: applet操作硬體取得資訊後將參數回傳給網頁(javascript)使用
: 應該是一比較對啦= = 但是二操作感覺比較好QQ 我也不清楚能用哪種囧
其實一跟二的差別在於,使用者可以直接用網頁打開,
或者是使用者要下載你的application,在本地打開。
這要看你的使用者比較喜歡那種
如果你的使用者也是開發者等級,前者比較理想,
不然的話後者也是個選項,可以省安裝這個步驟。
至於後續javascript處理的話,一樣是回到上面我的解說,
方法二並沒有解決 js 處理的問題。
: 問題一:
: 請問如果直接運行java程式 如何將參數傳送給網頁?
: ex:取得座標後 直接開啟目標網頁將參數順便丟過去
: 有點像是php的get/post方式這樣可行嗎@@?
: 我有查到取得網頁參數的方法~"~ 好像是param
幾種方式,以你的意思是想開browser的話,
當然是直接呼叫browser 起來執行比較快。
如果你要用 socket 對那個頁面存取,
那你也沒辦法用瀏覽器呈現給使用者看。
而只能單純做資料的操作。
: 問題二:
: 如果是掛applet的方式將class檔掛上去
: 但是使用者端的lib跟bin資料夾有另外安裝函式庫
: 可以使用applet的方式嗎?還是需要使用jar打包?
: 如果不行的話應該是用第一種方法就好了QQ
: 另外如果這樣做 傳送參數給網頁的方式與問題一一樣嗎@@?
: 目前作法是在命令提示字元直接下指令運行 加上-classpath 指定一個jar檔
: 麻煩各位大大了<(_ _)>
applet 有classpath 的話簡單一點是打顆big jar ,只是下載會很久。
詳情參考:
http://mindprod.com/jgloss/applet.html#APPLETCLASSPATH
不過我是覺得 applet 要拉很多jar是很累的事情,
或許再抽一層遠端的 service server,applet不放太多東西可以單純一點。QQ
你的需求來講,不是很建議用applet做,
寧可以自己架個 web server 用 jsp/servlet 處理。
--
我:一半的日子讓你說,我聽你說你的所有______________________________________
______________________________________一半的日子我想說,對你說過去的所有:我
_______________________________________________________
在討論中妥善扮演兼具聆聽與分享的角色,是我們一生的課題。
_______________________________________________________
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 198.203.175.175