Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Javassist - call Method??? / 1 сообщений из 1, страница 1 из 1
26.02.2012, 19:17:52
    #37678754
_webdev_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Javassist - call Method???
Значит, мучаюсь я с Javassist. Помаленьку начинаю понимать, что и к чему..

Вот.. сейчас застрял, и что-то никак не могу найти как вызвать метод из существующего(созданного) класса с помощью Javassist.

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
import javassist.CannotCompileException;
import javassist.ClassPool;
import javassist.CtClass;
import javassist.CtMethod;
import javassist.CtNewMethod;
import javassist.NotFoundException;

public class JavassistCode {
	private ClassPool pool;
	private CtClass ctClass;
	private CtMethod javassitMethod;
	private String expression = "x*x+x/2";
	private String method ="public double eval(double x){return{"+ expression +"};}";
	private MyFrame myframe;

	public JavassistCode(MyFrame myFrame) throws CannotCompileException, NotFoundException, SecurityException, NoSuchMethodException, InstantiationException, IllegalAccessException {

		this.myframe=myFrame;

		pool = ClassPool.getDefault();
		ctClass = pool.makeClass("javassistClass");
		
		javassitMethod = CtNewMethod.make(method, ctClass);
		ctClass.addMethod(javassitMethod);

		Class clazz = ctClass.toClass();
		
	}

}



Вот похожая статья на хабре, но я что-то не могу догнать, как там запускается метод и выдает результат.. :(
http://habrahabr.ru/blogs/java/69728/

Подскажите, что не так? Спасибо!


И еще вопросик, читаю по данной теме, одни пишут одно, а другие показывают совершенно другие примеры.

Мне нужно создать класс с помощью Javassist, потом связать его с другими объектами приложения...
Как показывает офф мануал - это возможно, а в одной статье читал, что это не возможно. :(
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Javassist - call Method??? / 1 сообщений из 1, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]