Si pretendes tenerlo en un applet, que yo sepa, el único modo es usando javascript. Lo más comodo sería hacer el boton en HTML y darle acción con javascript. Pero si por cualquier motivo tiene que estar dentro del applet también puedes hacerlo, llamando una función de javascript desde el applet, esto yo lo sé hacer con el netscape, pero no sé si funciona con el explorer (aunque supongo que sí).
Para poder utilizar funciones de javascript haz de hacer un import en el applet de netscape.javascript.JSObject por otro lado cuando se llame al applet desde HTML ha de tener el tag mayscript, sería así:
<applet code="myapplet.class" width=200 height=150 mayscript></applet>
el código para saber si hay alguna página en el historial sería:
//crear un objeto de la ventana en la que está el applet
JSObject mi_ventana = JSObject.getWindow(this);
//llamar a javascript para saber si hay otras páginas en el historial
int num_paginas = (int)mi_ventana.eval("window.history.length;");//length es una propiedad, por tanto no debes poner ()
if(num_paginas > 0) my_button.setEnabled(true);
else my_button.setEnabled(false);
//si luego quieres hacer que el botón reaccione navegando hasta la página anterior solo tienes que poner.
mi_ventana.eval("window.history.back();");
Si puedes hacerlo todo desde HTML será más facil ya que solo tendrás que incluir directamente el código javascript.
Espero que te ayude, si quieres escribeme y te enviaré algunos documentos que tratan sobre la comunicación Java -> JavaScript y JavaScript -> Java.
Saludos