Вопросы по теме 'javassist'

Прокси-объект Hibernate не работает для методов суперкласса
У нас есть веб-приложение, которое использует Hibernate. После обновления кодовой базы до Hibernate 3.6 (с 3.3.2) я обнаружил, что прокси-объекты данных, сгенерированные Hibernate, возвращают правильное значение только для некоторых методов....
1942 просмотров

Почему я должен вызывать .toClass() после изменения тела метода с помощью Javassist?
Я изменяю тело метода getMessage() моего TestClass с помощью Javassist следующим образом: ClassPool cp = new ClassPool(true); CtClass ctClass = cp.get("my.test.javassist.TestClass"); CtMethod ctMethod =...
5834 просмотров
schedule 19.11.2022

вызвать метод с помощью Javassist
Я новичок в Javassist и пробую несколько руководств. Я понимаю, что Javassist помогает манипулировать байт-кодом и помогает добиться структурного отражения. Как упоминалось в вики ( http://en.wikipedia.org/wiki/Javassist ), я считаю, что у него...
2505 просмотров
schedule 24.06.2022

Добавление поля в класс Java
Посмотрел использование CGLib, ASM, BCEL (аспект) и Javassist для добавления поля в класс во время выполнения.... Просто чтобы понять, похоже, что эти манипуляторы байт-кода не обновляют фактический класс, а позволяют пользователю только сбрасывать...
1587 просмотров
schedule 12.05.2023

В Javassist в Android отсутствуют методы класса, найденные путем отражения
Я пытаюсь использовать javassist для проверки содержимого класса Android. Цель, почему я это делаю, не имеет значения, пожалуйста, объясните мне, почему происходит следующее: Когда я исследую класс com.android.Intent с отражением, я получаю...
1407 просмотров
schedule 01.02.2023

Создание Invokedynamic с помощью Javassist
Думаю, я пытаюсь сделать что-то относительно простое. Возьмем, к примеру, следующий байт-код Java для метода doSomething(int): public java.lang.String doSomething(int i); 0 iload_1 [i] 1 invokestatic MyHelper.doSomething(int) : Java.lang.String 4...
1122 просмотров

Javassist's CtMethod.insertAt(line,src) код инструментов в неправильной позиции байт-кода
Моя цель — вставить немного инструментального кода в начало каждого базового блока кода. Это кажется довольно простой задачей с помощью ControlFlow.Block и CtMethod.insertAt() Javaassist. Вот соответствующий фрагмент кода (он находится в функции...
1906 просмотров

Есть ли инструмент для работы с байтовым кодом высокого уровня, поддерживающий Scala, такой как Javassist?
Я ищу инструмент для работы с байт-кодом высокого уровня, такой как Javassist, но он понимает некоторые особенности Scala. Инструменты манипулирования байт-кодом нижнего уровня должны быть относительно агностическими, но для моих случаев...
857 просмотров

Проблема с анонимным внутренним классом в сгенерированном Javassist классе
Я использую Javassist для создания некоторых классов во время выполнения, и когда я создаю анонимные внутренние классы в этих классах, они падают при попытке создать экземпляр окружающего объекта (насколько я могу судить) Я попытался реализовать...
1937 просмотров
schedule 15.10.2022

javassist получить CtClass из сторонней библиотеки/jar
Я хочу добавить с помощью javassist регистратор SLF4J в свой класс. Итак, сначала я пытаюсь получить его CtClass, например, я могу построить поле после: CtClass loggerClass = pool.get(org.slf4j.Logger.class.getName()); Но я никогда не...
1386 просмотров
schedule 07.04.2024

Создайте динамический прокси для класса без конструктора без аргументов
Я хочу создать прокси для класса вместо интерфейса. Есть ответы, описывающие использование cglib или Javassist для этой цели (например, https://stackoverflow.com/a/4449998/ ) , но я столкнулся с проблемой, так как класс, в котором я заинтересован в...
1006 просмотров

Измените метод, объявленный в суперклассе, с помощью Javassist
Я пытаюсь изменить метод с CtMethod#insertBefore , который объявлен в суперклассе. Однако с Javassist это невозможно. private class AbstractTestDataSource { public Connection getConnection() throws SQLException { return connection;...
2317 просмотров
schedule 17.06.2022

Как удалить метод с помощью Javassist?
Я пытаюсь удалить метод из файла класса с помощью Javassist. Целевой класс: "RemoveMethod" . Целевой метод: "DoubleCheck" . Мои коды: package javassist; import java.io.IOException; import java.lang.reflect.Method;...
1347 просмотров
schedule 19.04.2022

IllegalAccessError при использовании Javassist для редактирования класса JFrame
Я использую Javassist для редактирования класса JFrame во время выполнения (добавление нового конструктора) ClassPool pool = ClassPool.getDefault(); pool.importPackage("javax.swing.TransferHandler$HasGetTransferHandler"); CtClass jFrameClass=...
569 просмотров
schedule 20.08.2023

javassist: невозможно проанализировать тело метода с параметризованными картами/списками
Я пытаюсь динамически генерировать классы в своем приложении и столкнулся с этим ограничением/ошибкой? с явасистом. Кажется, javassist не может разобрать исходное тело, если оно имеет карты/список с параметризованными типами. eg : public...
339 просмотров

разница между javaassist и cglib
Я изучаю спящий режим и понял, что спящий режим перестал использовать cglib и переключился на javaassist. Еще я понял, что для генерации прокси используются javaassist и cglib. поэтому мне было интересно, как эти два работают и какой из них...
3294 просмотров
schedule 08.03.2023

Javassist: создайте класс, который реализует общий интерфейс
Я пытаюсь создать класс с javassit, который реализует универсальный интерфейс, передавая общий аргумент, но пока безуспешно. Мне известен ответ Javassist: создание интерфейса который расширяет другой интерфейс с помощью шаблонов и руководство...
2319 просмотров

Hibernate возвращает прокси для объекта, установленного в EAGER
Мы работаем с набором веб-сервисов, которые мы разрабатываем. Один из сервисов извлекает информацию из некоторых таблиц с помощью отображений JPA. Hibernate возвращает объект, и он работает так, как ожидалось. Другая служба извлекает очень...
613 просмотров

Hibernate java.lang.ClassCastException: _$$_javassist_856 нельзя преобразовать в javassist.util.proxy.Proxy при использовании общей библиотеки Websphere
Вебсфера 8.0.0.11 Спящий режим 4.2.21.Final Я нашел много вопросов об этой же проблеме, но ни один из них не помог мне. Если я развертываю приложение в Websphere, оно работает нормально. Однако мы определили общую библиотеку, которая...
1641 просмотров

Изменение класса с помощью javassist (рефлексия Java)
У меня есть следующий код. Я хочу изменить метод say класса hello. Я использую джавасист. У меня следующая ошибка. public class TestJavasisit { /** * @param args the command line arguments * @throws java.lang.Exception */ public static void...
4602 просмотров
schedule 26.05.2023