我想知道是否有方法讓Java類找出它是否在applet中使用?檢測Applet上下文(我是在一個applet中嗎?)
也就是說,我有一個庫(一個.jar文件),可以由第三方應用程序和小程序使用。它可以在小應用程序中工作,但是我希望做一些不同的處理,具體取決於庫是否用於applet中 - 比如show applet-可用的錯誤,避免本地文件I/O等。
如果,比如說,Applet.getAppletContext()是靜態的,這樣我就可以調用它(並且獲得NULL或者不爲NULL),即使我沒有applet實例也是很好的,但是,事實並非如此。有沒有其他方法?
有各種理由設置在非小應用程序安全管理......,這樣不會遺憾的是工作得很好。 – TofuBeer 2010-03-18 16:57:17
不過,這是一個開始。也許我可以得到SeurityManager,如果它是null,那麼它絕對不是一個applet,如果它不爲null,我會用checkAccept(「example.com」,80)或類似的東西來舉例說明。 com是真正的example.com,所以applet不能從那裏來,並且將被禁止與該服務器進行通信。 – 7macaw 2010-03-18 17:09:33
仍然不是一個可靠的方法來做到這一點。例如,當我標記學生作業時,我將他們的應用程序鎖定得很緊密,以免他們弄亂打標機。安裝自己的安全管理器有很多原因(我的另一個例子是確保應用程序無法調用System.exit)。 – TofuBeer 2010-03-18 20:16:41