3
私はSWTブラウザウィジェットを使ってJavaプロセス内にMozillaブラウザを埋め込みました。実行時にブラウザのabout:configプリファレンスをプログラム的にJavaから変更したいと思います。これは可能ですか?そしてもしそうなら、どうですか?SWTブラウザウィジェットを使用するときにMozilla環境設定をJavaから設定するにはどうすればいいですか?
私はSWTブラウザウィジェットを使ってJavaプロセス内にMozillaブラウザを埋め込みました。実行時にブラウザのabout:configプリファレンスをプログラム的にJavaから変更したいと思います。これは可能ですか?そしてもしそうなら、どうですか?SWTブラウザウィジェットを使用するときにMozilla環境設定をJavaから設定するにはどうすればいいですか?
これはおそらくJavaXPCOMです。このような何か作業をする必要があります:
import org.mozilla.xpcom.Mozilla;
import org.mozilla.interfaces.nsIServiceManager;
import org.mozilla.interfaces.nsIPrefBranch;
...
Mozilla mozilla = Mozilla.getInstance();
nsIServiceManager serviceManager = mozilla.getServiceManager();
nsIPrefBranch prefs = (nsIPrefBranch)serviceManager
.getServiceByContractID("@mozilla.org/preferences-service;1",
nsIPrefBranch.NS_IPREFBRANCH_IID);
prefs.setBoolPref("javascript.enabled", false);
あなたは、これはおそらくなんとかではない、その後JavaXPCOMをアクセスすることができない場合。
私が知る限り、SWTが直接アクセスできるXPCOMオブジェクトは、あなたの 'Browser'ウィジェット用の' nsIWebBrowser'です。 'nsIWebBrowser'だけをベースとしてこれを実装する方法はありますか? –
試しましたか? SWTが 'nsIWebBrowser'を公開すると、JavaXPCOMが存在することを意味し、グローバルサービスに直接アクセスすることができます。そのためには' nsIWebBrowser'を経由する必要はありません。この設定は、この特定のブラウザインスタンスのプロパティではありません。 –