2010-11-11 38 views
9

Estoy creando un navegador web en Java. En este navegador estoy usando JEditorPane para la ventana del navegador. Estoy usando el método "setPage (String url)" para mostrar la página. El navegador puede mostrar la página pero hay algunos problemas que se mencionan como ::jEditorPane como navegador web

  1. el navegador no muestra el java script.
  2. No muestra el Applet.
  3. Los datos de las cejas no se muestran correctamente (como en el navegador (Mostrar en la imagen alt text)).

Mi código es-

JEditorPane editorPane = new JEditorPane(); 
String url="http://google.co.in";  
editorPane.setEditable(false); 
    try { 
     editorPane.setPage(url); 
    } catch (IOException e) { 
     System.err.println("Attempted to read a bad URL: " + url); 
    } 
} 
+0

Realmente no entiendo el tercer problema que tienes. Quizás podrías reformularlo. – lucasrizoli

+0

@lucasrizoli: Creo que quiso decir que la representación dista mucho de ser perfecta. –

Respuesta

7

JEditorPane tiene soporte limitado para html y css. No es compatible con javascript ni con los applets. No está destinado a ser utilizado como un navegador web. Sun prometió un JWebPane que estaría más cerca de un navegador, pero nunca se ha lanzado.

Si realmente desea implementar un navegador en Java, únase a un proyecto de navegador de código abierto como Lobo browser. De esta forma puedes aplicar tus conocimientos en la dirección correcta. No tiene sentido hacerlo desde cero.

2

El JEditorPane sólo puede representar HTML muy básico. (Incluso a partir de SE6, solo comprende HTML 3.2, ¡un estándar de 1997!) JEditorPane no puede incrustar applets o Flash, ni puede interpretar JavaScript.

De hecho, JEditorPane fue escrito para ser un artilugio para editar texto enriquecido (es decir, texto de diferentes tamaños con un formato simple como negrita y cursiva), no algo para renderizar HTML, CSS, etc.

En su lugar, puede probar JDIC's embeddable browser.

1

¿Has probado SWT? Utiliza el navegador predeterminado del sistema o creo que puedes especificar el navegador de Mozilla o Apple (no soy fan de Apple y no puedo pensar en el nombre en este momento). No está codificando desde cero y deben tener otro navegador instalado pero en Java creo que esa es tu mejor opción. Puede encontrar varias bibliotecas que incorporan Swing y SWT con una simple búsqueda en Google, por lo que no tiene que elegir entre las dos.

1

JavaFX parece manejar esto. Ha sido esto probado?

+0

el estado de compatibilidad actual del navegador en JavaFX es comparable con todos los demás navegadores. – Panayotis

Cuestiones relacionadas