Mostrar Mensajes

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - calimero_78

Pages: [1] 2
1
Java J2EE y JSP / Re: Servlets para un novato
« on: Marzo 26, 2015, 04:43:04 pm »
Hola:

Ya está solucionado.

Probablemente lo StackOverflowError se debiera a un error en el descriptor, originado porque no estaba bien definido <url-pattern>.

Ahora ya funciona todo con normalidad sin necesidad de un index.jsp.

Gracias.

2
Java J2EE y JSP / Re: Servlets para un novato
« on: Marzo 25, 2015, 04:52:50 pm »
Hola:

No se bien por qué, pero la aplicación funciona ya. Lo que he hecho es crear un index.jsp y a partir de ahí he ido llamando a las vistas. Sabrías decirme si esto es por imperativo legal o se puede hacer de tal forma que se pueda prescindir de un index.jsp?

Gracias.

3
Java J2EE y JSP / Re: Servlets para un novato
« on: Marzo 24, 2015, 08:57:38 pm »
Hola:

Ante todo gracias por responder.

Lo de los 404 era culpa mía, por poner rutas que no existían, pero corregido esto me salen otros errores.

Concretamente me sale una reatila de errores importante, pero vamos, por lo que observo se trata de un bucle, porque son iguales todos. Así, seguro seguro el fallo es mío, pero no sé donde lo cometo.

Si te parece te pongo algo de código haber si fuera por ahí el fallo.

El servlet que pretendo sea el controlador:

Code: [Select]
package controlador;

import java.io.IOException;
import java.util.HashMap;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class Controlador extends HttpServlet {
   
    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8");
        //response.getWriter().write("HOLA");
        HashMap<String, String> mapa = new HashMap<>();
        mapa.put("uno", "uno.jsp");
        mapa.put("dos", "dos.jsp");
        mapa.put("tres", "tres.jsp");
        String ruta = "";
        if(request.getParameter("ctl") == null || request.getParameter("ctl").isEmpty()){
            ruta = "uno";
        } else {
            if(mapa.containsKey(request.getParameter("ctl"))){
                ruta = mapa.get(request.getParameter("ctl"));
            } else {
                //ERROR
            }
        }
        request.getRequestDispatcher(ruta).forward(request, response);
    }
   
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        processRequest(request, response);
    }
   
    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        processRequest(request, response);
    }

    @Override
    public String getServletInfo() {
        return "Short description";
    }

}
Cada una de las páginas JSP tiene un texto muy sencillo como "Hola desde la página tal". Posteriormente querré meterle enlaces que ser dirijan al controlador etc. pero por el momento es esto simplemente.

El contenido del descriptor:

Code: [Select]
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
    <servlet>
        <servlet-name>Controlador</servlet-name>
        <servlet-class>controlador.Controlador</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>Controlador</servlet-name>
        <url-pattern>/*</url-pattern>
    </servlet-mapping>
    <session-config>
        <session-timeout>
            30
        </session-timeout>
    </session-config>
</web-app>

y eso es todo. Aun no me he conectado a la BBDD, ni he procesado las sesiones ni nada de nada. Es esto y al probar la aplicación falla.

La salida desde el explorador es:

Code: [Select]
type Informe de Excepción

mensaje La ejecución del Servlet lanzó una excepción

descripción El servidor encontró un error interno que hizo que no pudiera rellenar este requerimiento.

excepción

javax.servlet.ServletException: La ejecución del Servlet lanzó una excepción
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
controlador.Controlador.processRequest(Controlador.java:30)
controlador.Controlador.doGet(Controlador.java:36)
javax.servlet.http.HttpServlet.service(HttpServlet.java:620)
javax.servlet.http.HttpServlet.service(HttpServlet.java:727) ... y se repite hasta casi el infinito

Y debajo de esta salida pone:

Code: [Select]
causa raíz

java.lang.StackOverflowError
org.apache.catalina.connector.Request.isAsyncStarted(Request.java:1676)
org.apache.catalina.connector.RequestFacade.isAsyncStarted(RequestFacade.java:1035)
javax.servlet.ServletRequestWrapper.isAsyncStarted(ServletRequestWrapper.java:396)

No comprendo que falla. Llevo poco tiempo con esto y es frustrante no poder hacer ni una aplicación sencilla.

Se te ocurre algo? Muchas gracias.

4
Java J2EE y JSP / Servlets para un novato
« on: Marzo 24, 2015, 03:41:37 pm »
Wenas:

Tengo un problema, creo que bastante simple, pero que no acabo de ver la solución.

Tengo que hacer una aplicación con Servlets y JSP, sin frameworks. Lo que quiero hacer es que mi Servlet controlador, sólo tengo ese Servlet, centralice todas las llamadas del cliente, para que éste lo mapee.

¿Cómo puedo hacer esto?, poruqe estoy poniendo en el descriptor :

Code: [Select]
<servlet-mapping>
        <servlet-name>Controlador</servlet-name>
        <url-pattern>/*</url-pattern>
</servlet-mapping>

.. pero no hace otra cosa que lanzar 404. Dónde está el error? Debo hacerlo con filtros? que parece que sé de lo que hablo cuando digo filtros, pero tampoco me quedan muy claros.

Cualquier ayuda será bienvenida. Gracias.

5
Java JSE / Re: Problemas al ejecutar un exe con Java
« on: Abril 01, 2010, 10:34:31 pm »
Hola:

Gracias de verdad. Otra vez demostraste cuanto conocimiento tienes. Muchas gracias. Funciona perfectamente.

6
Java JSE / Re: Problemas al ejecutar un exe con Java
« on: Abril 01, 2010, 08:48:48 pm »
Hola:

No, yo escribo en DOS "C:\Program Files (x86)\Activision\Call of Duty 4 - Modern Warfare\iw3mp.exe" y el programa se ejecuta a la perfección, y ejecuto el jar, tanto en DOS como en entorno gráfico y es cuando aparecen el fallo del exe.

Code: [Select]
public class Ejecutar extends Thread {

    private Servidor s = null;

    public Ejecutar(Servidor s){
        this.s = s;
        this.start();
    }

    @Override
    public void run(){
        try {
            Process p = Runtime.getRuntime().exec(Cargador.rutaJuego.getAbsolutePath().concat(" +connect ").concat(s.getIp()).concat(":").concat(s.getPuerto()));
        } catch (IOException ex) {
            Log.añadirLog(ex.getMessage());
        }
    }

}

Esta es la clase original, esta incompleta por el momento. Aqui se ve que Cargador.rutaJuego.getAbsolutePath() es la ubicación del iw3mp.exe y s(Servidor) es nada más una clase contenedora, que almacena String como la ip, el puerto y el nombre del servidor. En la parte de concat(" +connect") son parámetros opcionales del exe, pero lo he probado con parámtros y sin ellos y el exe nofunciona.

7
Java JSE / Re: Problemas al ejecutar un exe con Java
« on: Abril 01, 2010, 02:13:26 am »
Hola:

Lo ejecuta pero no en su carpeta, es decir que realiza una especie de copia temoral del .exe en el lugar donde se encuentra el .jar.

Para simplificar:

Ejecuto el jar y lo que aparece es un error del iw3mp.exe diciendo que no encuentra los archivos que necesita.

Vale, esto es debido, a que en la misma carpeta del .jar aparece un _iw3mp de 1 KB de tamaño, y creo que es una copia temporal del exe original.

Claro, este exe es es una aplicación compleja que necesita de recursos externos al propio archivo.

Este mismo comando lo ejecuto desde el DOS, y no aparece ningun error, el programa se ejecuta con normalidad.

Espero que ahora haya podido explicarme bien. De todas formas si necesitas mas datos por favor pidemelos.

8
Java JSE / Problemas al ejecutar un exe con Java
« on: Marzo 31, 2010, 11:55:26 pm »
Hola:
Tengo problemas al ejecutar un exe con Java.

Ya mire la forma de hacerlo y el caso es que cuando escribolo siguiente.....
Code: [Select]
Process p = Runtime.getRuntime().exec("C:".concat(File.separator).concat("Windows").concat(File.separator).concat("System32").concat(File.separator).concat("notepad.exe"));... se ejecuta a la perfección.

Por el contrario, si ejecuto esto otro...
Code: [Select]
Process p = Runtime.getRuntime().exec(fila.getAbsolutePath());... no lo hace correctamente. Decir que fila.getAbsolutePath() es "C:\Program Files (x86)\Activision\Call of Duty 4 - Modern Warfare\iw3mp.exe".

El problema es que lo ejecuta pero no lo hace correctamente. Sin embargo, eso mismo lo pongo desde el DOS y el programa se ejecuta perfectamente.

Me gustaria saber si hay algo que estoy haciendo mal, o falta alguna cosa.

Gracias.

9
Java JSE / Re: Insertar JProgressBar en JTable
« on: Septiembre 04, 2009, 01:34:20 am »
Hola:

Nada, el resultado es el mismo. No te preocupes mas. Yo queria tabla, porque me parecia mas sencillo de usar, peroigualmente puedo usar otro componentes.

Gracias por prestarme tu tiempo, de verdad. Mas adelante con un poco mas de tiempo y calma intentare resolver el enigma.

Gracias otra vez.

10
Java JSE / Re: Insertar JProgressBar en JTable
« on: Septiembre 04, 2009, 12:48:58 am »
Hola:

Nada que no hay manera.

La clase completa seria la siguiente, y efectivamente "modeloT" extiende de DefaultTableModel:
Code: [Select]
public class Frame extends javax.swing.JFrame {

    private DefaultTableModel modeloT = new MiTableModel();

    public Frame() {
        try {
            UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
        } catch (ClassNotFoundException ex) {
            Logger.getLogger(Frame.class.getName()).log(Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            Logger.getLogger(Frame.class.getName()).log(Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            Logger.getLogger(Frame.class.getName()).log(Level.SEVERE, null, ex);
        } catch (UnsupportedLookAndFeelException ex) {
            Logger.getLogger(Frame.class.getName()).log(Level.SEVERE, null, ex);
        } finally {
            initComponents();
            this.jTable1.setDefaultRenderer(JProgressBar.class, new MiRenderCell());
            Vector<Vector<JProgressBar>> vector = new Vector<Vector<JProgressBar>>();
            modeloT.setColumnIdentifiers(new Object[]{"A","B","C","D","E"});
            for(int i=0; i< 10; i++){
                Vector<JProgressBar> v = crearVector();
                for(int j=0; j<5; j++){
                    v.add(crearProgressBar());
                }
                modeloT.addRow(v);
            }
            this.jTable1.setModel(modeloT);
        }
    }

    public Vector<JProgressBar> crearVector(){
        Vector<JProgressBar> v = new Vector<JProgressBar>();
        return v;
    }

    public JProgressBar crearProgressBar(){
        JProgressBar barra = new JProgressBar();
        return barra;
    }

Además de la Clase MiRenderCell he creado una nueva que se llama "MiTableModel":

Code: [Select]
public class MiTableModel extends DefaultTableModel {

    public MiTableModel(){}

    @Override
    public Class getColumnClass(int n){
        //super.getColumnClass(n);
        return JProgressBar.class;
    }

}

El resultado es el mismo. De verdad que no lo entiendo, porque ademas me parece que no me salto ningun paso.

Gracias por leerme.

11
Java JSE / Insertar JProgressBar en JTable
« on: Septiembre 03, 2009, 10:58:42 pm »
Hola:

He leido los ejemplos de como insertar componentes en tablas pero no lo debo de entender del todo, porque no sale lo que quiero.

Code: [Select]
            [color=red]this.jTable1.setDefaultRenderer(JProgressBar.class, new MiRenderCell());[/color]
            Vector<Vector<JProgressBar>> vector = new Vector<Vector<JProgressBar>>();
            modeloT.setColumnIdentifiers(new Object[]{"A","B","C","D","E"});
            for(int i=0; i< 10; i++){
                Vector<JProgressBar> v = crearVector();
                for(int j=0; j<5; j++){
                    v.add(crearProgressBar());
                }
                modeloT.addRow(v);
            }
            this.jTable1.setModel(modeloT);

    public Vector<JProgressBar> crearVector(){
        return new Vector<JProgressBar>();
    }

    public JProgressBar crearProgressBar(){
        return new JProgressBar();
    }

Como se ve aqui cargo los datos a la tabla y le procuro el metodo que aparece en los ejemplos.
Por otro lado la Clase "MiRenderCell" es la siguiente:

Code: [Select]
public class MiRenderCell extends DefaultTableCellRenderer {

    public MiRenderCell(){}

    public Component getTableCellRendererComponet(JTable tabla, Object value, boolean isSelected, boolean hasFocus, int row, int column){
        JProgressBar barra = new JProgressBar();
        barra.setMaximum(new Random().nextInt()*1000);
        barra.setMinimum(0);
        barra.setValue(0);
        super.getTableCellRendererComponent(tabla, value, isSelected, hasFocus, row, column);
        return barra;
    }

}

Cuando compilo y ejecuto lo que aparece en cada una de las celdas es algo similar a esto:

javax.swing.JProgressBar[,0,0,0x0,invalid,alignmentX=0.0,alignmentY=0.0,border=javax.swing.plaf.BorderUIResource$CompoundBorderUIResource@5bcdbf6,flags=8,maximumSize=,minimumSize=,preferredSize=,orientation=HORIZONTAL,paintBorder=true,paintString=false,progressString=,indeterminateString=false]

Estoy seguro de que se trata de una tonteria pero haber si me pueden echar una mano.

Gracias.

12
Java JSE / Re: Servet, Applet y JSP
« on: Febrero 14, 2009, 11:21:03 pm »
Hola:

Tengo que mirar la configuracion de los servlets que genera NetBeans, no se poruqe me da que la clave esta en algun parametro de los xml que genera.

Pero por el momento me doy con un canto en los dientes con lo conseguido.

Gracias por todo.

13
Java JSE / Re: Servet, Applet y JSP
« on: Febrero 14, 2009, 10:51:38 pm »
Hola:

Gracias gracias. Ya lo consegui.

Pero es una cosas extraña, por lo meos para mi.

Si lo hago como predeterminadamente lo quiere NetBeans no funciona. En cambio, si yo abro manualmente el war, y lo manipulo colocando como me decias funciona perfectamente.

Es un problema de configuracion del servidor, o un bug de NetBeans o que será esto?

En cualquier caso ya se que puedo manipular manualmente el war y colocarlo para que funcione.

Me estaba volviendo loco. Ya no sabia como colocarlo. Eres un genio, gracias otra vez.

14
Java JSE / Re: Servet, Applet y JSP
« on: Febrero 14, 2009, 10:11:11 pm »
Hola:

Gracias por responder.

Estas en lo cierto que son programas que se ejecutaran en el cliente, pero como inserto ese jar en la carpeta /lib?

Actualmente estoy utilizando Netbeans y como servidor de aplicaciones Sun Application Server. En la carpeta de instalacion  del servidor si aparece una carpeta lib, pero poniendo ahi el jar sigue reportando el mismo error.

Si por el contrario intento hacer un paquete dentro de la carpeta WEB-INF del proyecto war, automaticamente lo crea en la carpeta Source Packages del proyecto, con lo que estoy en la misma situacion que al principio.

Perdon por mi desconocimiento, y gracias por tu paciencia.

15
Java JSE / Servet, Applet y JSP
« on: Febrero 13, 2009, 02:53:18 pm »
Hola:

Estoy intentando hacer un formulario de introduccion de datos en un Applet. Cuando lanzo el applet solo, funciona perfectamente. El problema viene cuando este applet lo incorporo al index.jsp de mi .war.

Code: [Select]
<applet height="200" width="230" align="center" code="MiJar.MiClass.class" archive="MiWar.war"></applet>
La excepcion que lanza es: java.lang.ClassNotFoundException

¿Se puede cargar un Applet en un JSP desde un Sevlet? y de ser afirmativo
¿Como tengo que hacer para que se cargue el applet correctamente?
 
Gracias.

Pages: [1] 2
ey