<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>
<channel>
	<title>Comments on: Simplifying Enterprise Applications with Spring 2.0 and AspectJ</title>
	<atom:link href="http://blog.springsource.com/2006/08/10/simplifying-enterprise-applications-with-spring-20-and-aspectj/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.springsource.com/2006/08/10/simplifying-enterprise-applications-with-spring-20-and-aspectj/</link>
	<description>The voice of SpringSource</description>
	<pubDate>Sun, 12 Oct 2008 08:31:51 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.2</generator>
		<item>
		<title>By: Schmutz Guido</title>
		<link>http://blog.springsource.com/2006/08/10/simplifying-enterprise-applications-with-spring-20-and-aspectj/#comment-246</link>
		<dc:creator>Schmutz Guido</dc:creator>
		<pubDate>Sun, 17 Sep 2006 17:35:01 +0000</pubDate>
		<guid isPermaLink="false">http://blog.interface21.com/main/2006/08/10/simplifying-enterprise-applications-with-spring-20-and-aspectj/#comment-246</guid>
		<description>Hi Adrian

Thanks for the very interesting article!

Was just trying the LostUpdateDetector aspect. I had a problem with it, because I declared the @Transactional annotations on the interface instead of class. Therefore the readOnlyTransaction Pointcut did not work, because SystemArchitecture.businessService() is an execution join point and it can't find the @Transactional annotations. I had to switch to call join points to make it work. Wouldn't it be better do declare it both on execution() or call() ?

pointcut readOnlyTransaction(Transactional txAnn) :
   (call(* com.trivadis.eurojourney.application..*.*(..)) &#124;&#124;
        execution(* com.trivadis.eurojourney.application..*.*(..))) &#38;&#38;
   @annotation(txAnn) &#38;&#38; if(txAnn.readOnly()) ;

Are there any side-effects doing that ?

Thanks
Guido</description>
		<content:encoded><![CDATA[<p>Hi Adrian</p>
<p>Thanks for the very interesting article!</p>
<p>Was just trying the LostUpdateDetector aspect. I had a problem with it, because I declared the @Transactional annotations on the interface instead of class. Therefore the readOnlyTransaction Pointcut did not work, because SystemArchitecture.businessService() is an execution join point and it can&#039;t find the @Transactional annotations. I had to switch to call join points to make it work. Wouldn&#039;t it be better do declare it both on execution() or call() ?</p>
<p>pointcut readOnlyTransaction(Transactional txAnn) :<br />
   (call(* com.trivadis.eurojourney.application..*.*(..)) ||<br />
        execution(* com.trivadis.eurojourney.application..*.*(..))) &amp;&amp;<br />
   @annotation(txAnn) &amp;&amp; if(txAnn.readOnly()) ;</p>
<p>Are there any side-effects doing that ?</p>
<p>Thanks<br />
Guido</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Twice</title>
		<link>http://blog.springsource.com/2006/08/10/simplifying-enterprise-applications-with-spring-20-and-aspectj/#comment-61</link>
		<dc:creator>Twice</dc:creator>
		<pubDate>Fri, 18 Aug 2006 14:09:08 +0000</pubDate>
		<guid isPermaLink="false">http://blog.interface21.com/main/2006/08/10/simplifying-enterprise-applications-with-spring-20-and-aspectj/#comment-61</guid>
		<description>The article is very well written but the problem is the lack of source code. Is there any possibility of getting the code for the refactored petclinic.</description>
		<content:encoded><![CDATA[<p>The article is very well written but the problem is the lack of source code. Is there any possibility of getting the code for the refactored petclinic.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
