2012-03-15 5 views
2

Возможно ли интегрировать aspectj с java ee 6? Я хочу сделать это, потому что у меня есть некоторые сущности (которые я переношу на автономный клиент затмения), и я хотел бы написать один раз и использовать везде ... используя перехватчики из EE, он не работает на клиенте. (Я просто хочу предупредить слушателей каждый раз, когда я доступ к методу set)java ee 6 aop aspectj

Я использую

  • glassfish 3 в AS
  • java ee 6

Спасибо заранее

ответ

2

Это возможно.

Простейший вариант - использовать ткачество во время компиляции. Eclipse AJDT plugin может компилироваться для вас во время разработки. Ant и Maven 2 также поддерживают компиляцию с AspectJ. Here Я написал ответ о том, как скомпилировать с Ant.

Это также возможно для загрузки во времени аспектов в ваш код. Это немного сложнее, так как это разные способы сделать это на разных контейнерах приложений. В автономном режиме вы должны использовать аргумент JVM для включения плетения. Пример:

-javaagent:pathto/aspectjweaver.jar 

я написал больше о время загрузки ткачество here.

С укладкой во время компиляции у меня есть хороший опыт работы с отдельными клиентами, IBM Websphere, Jetty, Tomcat и JBoss. Тот же код работает на всех платформах и дает тот же результат. У меня нет плохих впечатлений от других платформ, касающихся AspectJ, я просто не пробовал их.