Autor Tema: Pasar variable de tipo string desde java hasta html.  (Leído 14288 veces)

cardiobeta

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 39
    • Ver Perfil
Pasar variable de tipo string desde java hasta html.
« en: 13 de Abril 2013, 00:54 »
Hola a todos. Tengo un codigo java en el cual hay una variable de tipo string llamada a11, variable que por supuesto toma distintos valores concretos. Adicionalmente tengo un JEditorPane el cual se encuentra dentro de un Jform. El JEditorPane se lena con codigo HTML. El asunto es que no se como mostrar en el JEditorPane la variable a11. Espero haberme explicado. Graccias de antemano.

César Krall

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2078
  • No vales por lo que dices, sino por lo que haces
    • Ver Perfil
    • aprenderaprogramar.com
Re:Pasar variable de tipo string desde java hasta html.
« Respuesta #1 en: 13 de Abril 2013, 19:27 »
¿El código HTML con que se llena el JEditorPane desde donde sale? ¿Lo tomas de una base de datos, lo defines a mano, lo tienes en una variable ... ? ¿Puedes poner un ejemplo de cómo llenas el JEditorPane en código y dónde te interesaría que se mostrara la variable?
Responsable de departamento de producción aprenderaprogramar.com

cardiobeta

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 39
    • Ver Perfil
Re:Pasar variable de tipo string desde java hasta html.
« Respuesta #2 en: 14 de Abril 2013, 15:50 »
Tengo una variable a11 la cual es un string aportado por un resulset. Por supuesto, ese string puede ser cualquier texto. Ahora bien tengo un JEditorPane el cual lleno con un codigo html. En la primera linea va centrado esa variable. En concreto el codigo es este:

 cargarencabezado();
                try{
          // Preparamos la ventana de ejemplo
            JFrame v = new JFrame("Recipe");
            v.setBounds(500, 300, 200, 400);
           
            JButton boton1 = new JButton();
            JEditorPane editor = new JEditorPane();
            v.setUndecorated(false);
            JScrollPane scroll = new JScrollPane(editor);
           
            v.getContentPane().add(scroll);
            v.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
           
            // Marcamos el editor para que use HTML
            editor.setContentType("text/html");
           
            // Insertamos un texto
              String xxa11 = a11;
            editor.setText(
              "<head><base href=\"file:d:/\"></head>"+
                 "<P><font size=\"24\"><b><CENTER>a11</CENTER></b><br>" + "<i>adios</i><br>" +             <font color=\"red\">color rojo</font><br>" +
                "<img src=\"viejo.gif\"></img>");
           
            // Se visualiza la ventana
            v.pack();
            v.setVisible(true);
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }     
               
  }           
           });
          
        panel2.add(jButton2);
    }
 El JEditorPane es llamado con un jButton. La funcion cargarencabezado() produce la variable a11. Gracias

javi in the sky

  • Avanzado
  • ****
  • Mensajes: 393
    • Ver Perfil
Re:Pasar variable de tipo string desde java hasta html.
« Respuesta #3 en: 15 de Abril 2013, 12:47 »
¿Escribiendo lo siguiente no te funciona:?

editor.setText(
              "<head><base href=\"file:d:/\"></head>"+
                 "<P><font size=\"24\"><b><CENTER>"+a11.toString()+"</CENTER></b><br>" + "<i>adios</i><br>" +             <font color=\"red\">color rojo</font><br>" +
                "<img src=\"viejo.gif\"></img>");

Aparte parece que te faltaran comillas para que los cierres estén bien:

editor.setText(
              "<head><base href=\"file:d:/\"></head>"+
                 "<P><font size=\"24\"><b><CENTER>a11</CENTER></b><br>" + "<i>adios</i><br>" +    AQUÍ PARECE QUE FALTAN COMILLAS         <font color=\"red\">color rojo</font><br>" +
                "<img src=\"viejo.gif\"></img>");


cardiobeta

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 39
    • Ver Perfil
Re:Pasar variable de tipo string desde java hasta html.
« Respuesta #4 en: 15 de Abril 2013, 20:19 »
No resulta a11.toString(). Aparece "a11.toString()".

javi in the sky

  • Avanzado
  • ****
  • Mensajes: 393
    • Ver Perfil
Re:Pasar variable de tipo string desde java hasta html.
« Respuesta #5 en: 15 de Abril 2013, 21:42 »
He creado este código de prueba a partir del que tú pasaste:

Código: [Seleccionar]
import javax.swing.*;

public class probandoSetTextHtml{
   

    public probandoSetTextHtml() {
    try{
JFrame v = new JFrame("Recipe");
            v.setBounds(500, 300, 200, 400);
           
            JButton boton1 = new JButton();
            JEditorPane editor = new JEditorPane();
            v.setUndecorated(false);
            JScrollPane scroll = new JScrollPane(editor);
           
            v.getContentPane().add(scroll);
            v.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
           
            // Marcamos el editor para que use HTML
            editor.setContentType("text/html");
           
            // Insertamos un texto
              String a11 = "Texto recuperado desde String";
            editor.setText(
              "<P><font size=\"24\"><b><CENTER>"+a11.toString()+"</CENTER></p>" + "<p><i>adios</i><br/></p>");
           
            // Se visualiza la ventana
            v.pack();
            v.setVisible(true);
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }     
    }
}

Si lo ejecutas debería mostrarse correctamente, al menos yo lo veo correctamente y estoy insertando un string dentro del código html lo cual quiere decir que poderse se puede. El problema pienso que lo puedes tener por dos motivos:

- El código html lo tienes mal construido (te faltan etiquetas de apertura o cierre, cuestiones de sintaxis...)

- O bien no tienes la variable que quieres recuperar disponible. Por ejemplo si la variable está en otra clase no tiene visibilidad desde la clase en que tratas de utilizarla y no puedes recuperarla.


cardiobeta

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 39
    • Ver Perfil
Re:Pasar variable de tipo string desde java hasta html.
« Respuesta #6 en: 15 de Abril 2013, 22:28 »
Gracias. Funcionó perfecto.

javi in the sky

  • Avanzado
  • ****
  • Mensajes: 393
    • Ver Perfil
Re:Pasar variable de tipo string desde java hasta html.
« Respuesta #7 en: 16 de Abril 2013, 10:57 »
¿dónde tenías el fallo?

cardiobeta

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 39
    • Ver Perfil
Re:Pasar variable de tipo string desde java hasta html.
« Respuesta #8 en: 18 de Abril 2013, 03:18 »
La variable a11 debe escribirse "+a11+" . No es necesario convertirla a string porque ya lo es. Saludos y gracias.

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".