Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Вопрос по рефлексии / 6 сообщений из 6, страница 1 из 1
08.01.2012, 21:58:11
    #37605958
amigaboy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по рефлексии
Предположим я получил сериализованный метод, который у меня при десериализации получается класса Object.

Я не могу импортировать интерфейс принятого объекта по некоторым причинам, но я знаю, какой метод есть в этом объекте и его входные параметры. Существует в этом случае способ вызова метода из объекта?
...
Рейтинг: 0 / 0
08.01.2012, 21:59:25
    #37605959
amigaboy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по рефлексии
Разобрался сам, всем спасибо :)
...
Рейтинг: 0 / 0
08.01.2012, 22:00:11
    #37605963
svenom
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по рефлексии
Если соответствующий класс загружен, то да.
...
Рейтинг: 0 / 0
08.01.2012, 23:09:08
    #37606042
amigaboy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по рефлексии
svenomЕсли соответствующий класс загружен, то да.Не обязательно:

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
try {
	InitialContext ctx = new InitialContext();
	Object common = ctx.lookup("ejb/LogicCommonEJB");
			
	Method method = common.getClass().getMethod("select", Class.class, String.class);
			
	List<CommonDTO> result = (List<CommonDTO>) method.invoke(common, cl, filter);
			
	return result;
} catch (NamingException e) {
	e.printStackTrace();
} catch (IllegalArgumentException e) {
	e.printStackTrace();
} catch (IllegalAccessException e) {
	e.printStackTrace();
} catch (InvocationTargetException e) {
	e.printStackTrace();
} catch (SecurityException e) {
	e.printStackTrace();
} catch (NoSuchMethodException e) {
	e.printStackTrace();
}



Здесь я об объекте знаю только то, что он Object. Но метод из него вызвать могу.
...
Рейтинг: 0 / 0
08.01.2012, 23:22:20
    #37606051
svenom
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по рефлексии
amigaboy ,
Можно всегда, с учетом ограничений метода Method.getMethod.
Что в вашем случае происходит?
...
Рейтинг: 0 / 0
08.01.2012, 23:26:07
    #37606057
svenom
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по рефлексии
Тьфу.
Во-первых, никаких ограничений нет, это я спутал getMethod с getDeclaredMethod.
Во-вторых, ваш класс загружен в JVM, поэтому вы по сути подтвердили мои слова.
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Вопрос по рефлексии / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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