Ver Mensaje Individual
  #1 (permalink)  
Antiguo 09/07/2008, 12:49
Avatar de dackiller
dackiller
 
Fecha de Ingreso: septiembre-2003
Ubicación: The Matrix
Mensajes: 341
Antigüedad: 21 años, 4 meses
Puntos: 4
Problema con Herencia + Servlets

Que tal amigos:

Tengo un problema que quisiera resolver pronto..

Tengo un Servlet que al Ejecutar Crea una instancia de una clase, la cual almacena gran parte del request entre otras cosas..

Código PHP:
package site.catalog;

import java.io.*;
import java.net.*;

import javax.servlet.*;
import javax.servlet.http.*;

import BASE.app;

public class 
catalog extends HttpServlet {

    public static 
app APPLICATION;

    protected 
void processRequest(HttpServletRequest requestHttpServletResponse response)
    
throws ServletExceptionIOException {
        
response.setContentType("text/html;charset=ISO-8859-1");
        
PrintWriter out response.getWriter();
        try {
            
APPLICATION = new app(request);
}catch(
Exception ex){
            
out.println("ERROR:"+ex.getMessage());
        }
    } 
La clase app recibe el request y carga una clase dinamicamente llamada "CORE"

Código PHP:
package core;

import java.io.*;
import java.net.*;
import java.util.*;
import java.util.regex.*;

import javax.servlet.*;
import javax.servlet.http.*;

public class 
app {

public 
Object MODULE;
public 
String Str "CARGADA...";
public 
HttpServletRequest REQUEST;
public 
HttpSession SESS;

   public 
app(HttpServletRequest requestthrows Exception{
      
REQUEST request;
      
SESS request.REQUEST.getSession(true);
   }
   
    public 
getModulo(){
   
    try{
          Class 
clase = Class.forName("site.modulo.core");
          
MODULE clase.newInstance();
       }catch (
Exception ex){
          
System.out.println("Exception in: [core]"+ex.getMessage());
       }
    
     return 
MODULE;
    
   }


Todo Bien hasta el momento, todo va de maravillas, la clase app crea la instancia de site.modulo.core perfecto, pero yo quiero que la clase site.modulo.core sea extendida de app, para poder tener acceso a sus metodos y propiedades.

Código PHP:
package site.modulo;

import BASE.app;


public class 
core extends app{
    
    public 
core(){}
    
    public 
String getMe(){
        return 
this.Str;
    }
    

Esto me da error, incluso no lo puedo ni compilar ya que NetBeans no me lo permite.

EL problema proviene cuando intento heredar una clase con un constructor que necesita un parametro.

Según lei que los contructores no se pueden heredar en JAVA pero no he conseguido como solventar este problema. Se que algo tiene que ver la instrucción super();, pero tampoco he conseguido entender bien su funcionamiento en la herencia de objetos.

Si me pueden ayudar seria de gran ayuda.

Gracias...
__________________
--
NOTA: Si haz conseguido la solución a tu problema, por favor edita el titulo del tema colocando el prefijo [SOLUCIONADO], para que otros usuarios puedan encontrar soluciones más rápido.