Ver Mensaje Individual
  #3 (permalink)  
Antiguo 24/05/2010, 00:32
sekante66
 
Fecha de Ingreso: mayo-2010
Mensajes: 6
Antigüedad: 14 años
Puntos: 0
De acuerdo Respuesta: Problema introspeccion java

Si tengo claro que algo estoy haciendo mal seguro. Os pongo el codigo que utilizo a ver si alguien me puede echar una mano:

Por un lado tengo la clase Mms:

package org.mms.implementacion;

public class Mms implements Imms {

public void sendMessage(Photo photo) {
// TODO Auto-generated method stub

System.out.println("sendMessage invoked");

}
}

que como veis tiene un metodo que se llama sendMessage que recibe como argumento un objeto de tipo Photo.

Por otro lado esta la clase Photo

package org.mms.implementacion;
public class Photo {

public Photo(){

}
}

que esta vacia y con un constructor por defecto nada mas.
Y este es el codigo donde intento invocar a sendMessage:


System.out.println("inicio de la prueba");
// cargaClaseClassPath me carga la clase que le indico en el claspath

Class claseCargada= lector.cargaClaseClassPath("org.mms.implementacion .Mms");
Class clasePhoto=lector.cargaClaseClassPath("org.mms.imp lementacion.Photo");
Object objetoPhoto=clasePhoto.newInstance();
Class cArgsSendMessage[]=new Class[]{clasePhoto};


Object objPhotoArray[]=new Object[]{objetoPhoto};

Method mtd1 = claseCargada.getMethod("sendMessage",cArgsSendMess age);

Y esto me da una NoSuchMethodException porque me dice que los parametros que yo le paso no coinciden con los parametros del metodo.
En cambio si sendMessage usara un String como parametro en lugar de un objeto Photo le pasaria como tipo de parametros esto cArgsSendMessage[]=new Class[]{String.class} y con esto me devolveria el metodo perfectamente.

¿Que es lo que puedo estar haciendo mal?