Saludos hugo777, chispas me temia eso.....
ahora bien, si los paso a esa tecnologia JSF o ADF como se aria??
Me podrias enseñar o explicar a detalle, esq no tengo idea de como hacerlo......
Ahorita estoy tratando de hacer desde un servlet todo lo q hace un jframe el que es para el usuario (acceder a la base de datos y generar la estructura de datos para el jtree), guardarlo en un jtree y posteriormente pasarselo a un applet..... pero no se como hacerlo.....
De esta manera el applet recibira el jtree y lo mostrara sin necesidad de consultar la base de datos y otras cosas que esta liminado a hacer....
Despues de seleccionar desde el applet un elemento del jTree, lo debo de pasar al servlet para obtener algun dato seleccionado y posteriormente efectuar desdel el servlet operaciones a la base de datos... Por ejemplo: supongamos que selecciono desde el applet el nodo subele4. Este valor entre otras cosas modifico tablas pertenecientes a lo seleccionado "select * from tabla1, tabla2 where tabla1 = subele4", etc, etc......
-arbol
-ele1
-subele1
-ele2
-subele2
-ele3
-subele4
Si sabes como mandar como parametro desde un servlet a un applet un JTree, te pido que me ayudes.....
te paso las pruebas q en este momento llevo......
El servlet es: Servlet1
el applet es: Applet1
Código PHP:
package sistema;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
import javax.swing.JTree;
//import javax.swing.tree.*;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.DefaultTreeModel;
import javax.swing.tree.DefaultTreeCellRenderer;//para asignarle imagenes
import javax.swing.tree.MutableTreeNode;
import javax.swing.tree.TreePath;
import javax.swing.tree.TreeNode;
import javax.swing.tree.TreeModel;
import javax.swing.tree.TreeSelectionModel;
import javax.swing.event.TreeSelectionEvent;
import javax.swing.event.TreeSelectionListener;
import javax.swing.event.TreeModelListener;
import javax.swing.event.TreeModelEvent;
public class Servlet1 extends HttpServlet {
JTree jtreex;
private static final String CONTENT_TYPE = "text/html";
//Inicializar variables globales
public void init() throws ServletException {
}
//Procesar una petición HTTP Get
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType(CONTENT_TYPE);
PrintWriter out = response.getWriter();
clsConstructorArbol clsjtree = new clsConstructorArbol("tempo");
jtreex = clsjtree.tree;
out.println("<html>");
out.println("<head><title>Servlet1</title></head>");
out.println("<body bgcolor=\"#ffffff\">");
out.println("<p>El servlet ha recibido un " + request.getMethod() + ". Esta es la respuesta.</p>");
out.println(" <form name='frmapplet' action='classes/Applet3.html?jarbol="+jtreex+"' method='post'>");
out.println(" <table width='755' border='0' align='center'>");
out.println(" <tr>");
out.println(" <td align='center'>");
out.println(" <input name='btnAutoroa' type='submit' value='Ir al applet'>");
out.println(" </td>");
out.println(" </tr>");
out.println(" </table>");
out.println(" </form>");
Applet3 aptx = new Applet3(jtreex);
System.out.println ("sales"+aptx.getClass().getName());
aptx.jtreexsel = jtreex;
out.println(" <applet");
out.println(" codebase = \"classes/\"");
out.println(" code = \"stigoarta.Applet3.class\"");
// out.println(" code = \"stigoarta.Applet3.class\"");
out.println(" name = \"TestApplet\"");
out.println(" width = \"1000\"");
out.println(" height = \"1000\"");
out.println(" hspace = \"0\"");
out.println(" vspace = \"0\"");
out.println(" align = \"middle\"");
out.println(" >");
out.println(" </applet>");
out.println("</body></html>");
}
//Procesar una petición HTTP Post
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
//Limpiar recursos
public void destroy() {
}
}
el Applet1 tiene el siguiente codigo:::
Código PHP:
package sistema;
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
import javax.swing.*;
import java.net.*;
import java.sql.*;
import java.util.*;
public class Applet1 extends JApplet implements ActionListener {
private boolean isStandalone = false;
//declaracion de variables
JButton btnprocesar;
JTextArea txts;
JLabel lblhoras;
JLabel lbltarifa;
JTextField txthoras;
JTextField txttarifa;
JScrollPane scpscroll;
public JTree jtreexsel;
//Obtener el valor de un parámetro
public String getParameter(String key, String def, JTree treex) {
jtreexsel = treex;
return isStandalone ? System.getProperty(key, def) :
(getParameter(key) != null ? getParameter(key) : def);
}
//Construir el applet
public Applet1(JTree jtreex) {
jtreexsel = (JTree)jtreex;
}
//Inicializar el applet
public void init() {
try {
jbInit();
}
catch(Exception e) {
e.printStackTrace();
}
}
//Inicialización de componentes
private void jbInit() throws Exception {
getContentPane().setLayout(null);
this.getContentPane().add(this.jtreexsel);
this.setSize(new Dimension(1000,1000));
}
//Obtener información del applet
public String getAppletInfo() {
return "Información del applet";
}
//Obtener información del parámetro
public String[][] getParameterInfo() {
return null;
}
//inicializador estático definir el aspecto
static {
try {
//UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
//UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName());
}
catch(Exception e) {
}
}
//procesa eventes de tipo action event
public void actionPerformed(ActionEvent e)
{
}
}