センサーからのデータを表示する GUI をプログラミングしています。
この GUI には、マーカー付きのデータを表示する Google マップ ビジュアライザーが含まれています (GPS 測定値を介して)。
「?」を使用して、URL を介して測定値を渡していました。と '&':
String url = this.getClass().getResource("/resources/map.html").toExternalForm();
url +="?";
for (GPSReading r : data) {
// remove all aplhabetic characters, except for S and E (for lon
// lat) then trim the white spaces
// pass it into the url to be processed by js
url += r.toString().trim().replaceAll("[^\\d.ES ]", "").replaceFirst("S", "");
url += '&';
}
そしてそれをWebEngineにロードします
webEngine.load(url);
これは、Eclipse で実行すると正常に動作しますが、コードを実行可能 jar にパックすると、リンクが壊れて webEngine に何も表示されません。
これは、URL からパラメーターを取得する js コードです。
var parameters = window.location.href;
parameters= decodeURI(parameters.split("?")[1]);
var paramArray = parameters.split('&');
[...]
var field = paramArray[reading].split(" ").filter(Boolean);
そして、問題なく動作する文字列の解析を行います。
URLを介してパラメーターを渡すことがJarからではなくEclipseから機能する理由を誰かが知っていますか?とにかくこれを機能させる方法はありますか?
編集
jar を確認したところ、使用した唯一の外部ライブラリ (RxTx) が含まれています。残りは Java 標準ライブラリで行いました。