I am developing a java applet. I want it to be closed by the code. I have used System.Exit(0)
but it is not working. Is there any other method to achieve this?
applet.getAppletContext().showDocument("ThanksForUsingOurApplet.html");
As to the comment that a signed applet can call System.exit(n)
.
It can in some browser/JRE combos., it can't in others. In the ones that it can, it shouldn't since an applet may share a VM with other applets (less common these days), and even if not, it is the user's responsibility to close an applet by closing the page.
An applet is a guest in a web page. Calling System.exit(n)
is like burning down the guest house.
As said above,exiting applet is simple by adding System.exit(0) in if(condition) for which you want to close the applet.Though I am describing of applet viewer.But,it certainly works fine.
An applet cannot call System.exit(int);
. Security permissions don't let an applet do this.
And if you are trying to close the browser window, even if you signed the code and the browser/user trusted you, the browser wouldn't let you shutdown/close the browser window.
If all you want to do is close a Window/Frame created from the applet, this is no different than closing a window outside of an applet.
Try to remove java applet code by javascript. Example your html:
<button onclick="clickButton()">Click me</button>
<div id="appletCode">
<applet width="200" height="200" archive="ImageIconApplet.jar"
code="com.whitefang34.ImageIconApplet" name="test"/>
</div>
your javascript code:
function clickButton(){
var SS = document.getElementById("appletCode");
SS.innerHTML = "";
}