<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Pustefix Framework Blog</title>
	<atom:link href="http://blog.pustefix-framework.org/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://blog.pustefix-framework.org</link>
	<description>Blog about the Pustefix framework and related technologies (Java, XSLT, web frameworks)</description>
	<lastBuildDate>Wed, 29 Feb 2012 17:16:16 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Where the deuce is this template?</title>
		<link>http://blog.pustefix-framework.org/?p=30</link>
		<comments>http://blog.pustefix-framework.org/?p=30#comments</comments>
		<pubDate>Wed, 29 Feb 2012 13:54:56 +0000</pubDate>
		<dc:creator>mtld</dc:creator>
				<category><![CDATA[Announcements]]></category>
		<category><![CDATA[Pustefix]]></category>
		<category><![CDATA[Tips & tricks]]></category>

		<guid isPermaLink="false">http://blog.pustefix-framework.org/?p=30</guid>
		<description><![CDATA[Having highly modularized applications together with Pustefix&#8217;s multi-level XSL transformations sometimes can be a little bit annoying, e.g. if you want to reproduce a view bug and you don&#8217;t have a clue how the HTML output is produced and where the involved XSL templates come from.
Therefor Pustefix (since 0.18.10) can visualize the so-called target dependency [...]]]></description>
			<content:encoded><![CDATA[<p>Having highly modularized applications together with Pustefix&#8217;s multi-level XSL transformations sometimes can be a little bit annoying, e.g. if you want to reproduce a view bug and you don&#8217;t have a clue how the HTML output is produced and where the involved XSL templates come from.</p>
<p>Therefor Pustefix (since 0.18.10) can visualize the so-called target dependency model, showing you how the XSL stylesheets on each transformation level are composed, which XSL transforms which XML, what XML parts and images are included, etc.</p>
<p>Besides showing the dependency model Pustefix also lists the XSL templates available on the selected transformation level. All XML/XSL files can be directly viewed/downloaded (even if coming from a module archive).</p>
<p>This view is generated as part of the pfxinternals page (e.g. locally accessible in development mode under http://localhost:8080/pfxinternals/targets).</p>
<p><a href="http://blog.pustefix-framework.org/wp-content/uploads/2012/02/pfxinternals1.png"><img src="http://blog.pustefix-framework.org/wp-content/uploads/2012/02/pfxinternals1.png" alt="" title="pfxinternals1" width="1024" height="587" class="alignnone size-full wp-image-50" /></a></p>
<p><a href="http://blog.pustefix-framework.org/wp-content/uploads/2012/02/pfxinternals2.png"><img src="http://blog.pustefix-framework.org/wp-content/uploads/2012/02/pfxinternals2.png" alt="" title="pfxinternals2" width="1024" height="703" class="alignnone size-full wp-image-51" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.pustefix-framework.org/?feed=rss2&amp;p=30</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Pustefix discontinues OSGi work</title>
		<link>http://blog.pustefix-framework.org/?p=21</link>
		<comments>http://blog.pustefix-framework.org/?p=21#comments</comments>
		<pubDate>Fri, 16 Sep 2011 11:50:00 +0000</pubDate>
		<dc:creator>mtld</dc:creator>
				<category><![CDATA[Announcements]]></category>
		<category><![CDATA[Pustefix]]></category>

		<guid isPermaLink="false">http://blog.pustefix-framework.org/?p=21</guid>
		<description><![CDATA[More than 2 years ago we started to add OSGi-support to Pustefix. In September 2009 we officially released Pustefix 1.0.0, see an excerpt of the annonuncement:
Pustefix 1.0.0 has been released. This groundbreaking new release offers full OSGi support, i.e. Pustefix not just can be run inside an OSGi runtime, but Pustefix itself is built on [...]]]></description>
			<content:encoded><![CDATA[<p>More than 2 years ago we started to add OSGi-support to Pustefix. In September 2009 we officially released Pustefix 1.0.0, see an excerpt of the annonuncement:</p>
<blockquote><p>Pustefix 1.0.0 has been released. This groundbreaking new release offers full OSGi support, i.e. Pustefix not just can be run inside an OSGi runtime, but Pustefix itself is built on the principles of OSGi, empowering you to modularize all aspects of a webapplication (business logic, view components, etc.) using an OSGi service based extension point mechanism.</p></blockquote>
<p>Today we officially postpone OSGi support. Actually development stood still for more than a year because of the lack of adoption by our user community. To be honest we have to state that our OSGi experiment has failed and there are evident reasons.</p>
<p>I still think OSGi is a great technology and I&#8217;m sure there are a lot of use cases where OSGi already works very well, but the web application development scenarios targeted by Pustefix do not fit (yet).</p>
<p>In a way OSGi offers much more than we need, and at the same time not enough to make it worth paying the price for the effort of introducing a new programming model, a more complex development process and managing the various pitfalls when developing within an environment which itself is not yet ready for OSGi (infrastructure, tools, third party libraries, etc.).</p>
<p>But postponed is not abandoned and we&#8217;re looking forward to the modularization support coming with JDK 8, Project Jigsaw and JSR 294.</p>
<p>Starting from today the Pustefix main development will take place in the SVN trunk again. The OSGi implementation was moved to a branch and will be further available for backreference.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.pustefix-framework.org/?feed=rss2&amp;p=21</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Pustefix ready for Java SE 7 and dropping support for Java 1.5</title>
		<link>http://blog.pustefix-framework.org/?p=15</link>
		<comments>http://blog.pustefix-framework.org/?p=15#comments</comments>
		<pubDate>Thu, 15 Sep 2011 15:59:53 +0000</pubDate>
		<dc:creator>mtld</dc:creator>
				<category><![CDATA[Announcements]]></category>
		<category><![CDATA[Pustefix]]></category>
		<category><![CDATA[Tips & tricks]]></category>

		<guid isPermaLink="false">http://blog.pustefix-framework.org/?p=15</guid>
		<description><![CDATA[Starting with version 0.18 Pustefix will no longer officially support Java SE 1.5 or older (nearly 5 years public availability of Java SE 1.6 should have been enough time for upgrading existing applications).
One reason for dropping support is the proprietary annotation processing in 1.5 (Sun&#8217;s deprecated apt tool) and the new standardized way in 1.6 [...]]]></description>
			<content:encoded><![CDATA[<p>Starting with version 0.18 Pustefix will no longer officially support Java SE 1.5 or older (nearly 5 years public availability of Java SE 1.6 should have been enough time for upgrading existing applications).</p>
<p>One reason for dropping support is the proprietary annotation processing in 1.5 (Sun&#8217;s deprecated apt tool) and the new standardized way in 1.6 (JSR269 Pluggable Annotation Processing API and JSR199 Java Compiler API), which will replace the apt tool in upcoming Pustefix releases.</p>
<p>Switching to the new annotation processing standard Pustefix now is also ready for upcoming Java releases. In general Java SE 7 can be already used with older Pustefix versions. I have only encountered a problem with Pustefix&#8217;s JAXWS/AJAX services, which will be fixed in the next 0.18 release (whereas it&#8217;s recommended to use the lightweight JSON services instead anyway).</p>
<p>If you still want to use JAXWS/AJAX services with older Pustefix versions and Java 1.7, you will have to upgrade to a newer JAXWS version, because the used JAXWS version stumbles accross the new getSuppressed() property in java.lang.Throwable when generating Exception beans. Additionally you will have to adapt the tools.jar Maven dependency because the java.vendor property used to activate the dependency profile changed from &#8220;Sun Microsystems Inc.&#8221; to &#8220;Oracle Corporation&#8221;.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.pustefix-framework.org/?feed=rss2&amp;p=15</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Using the Live-JAR mechanism with mvn tomcat:run-war</title>
		<link>http://blog.pustefix-framework.org/?p=7</link>
		<comments>http://blog.pustefix-framework.org/?p=7#comments</comments>
		<pubDate>Mon, 08 Aug 2011 16:30:01 +0000</pubDate>
		<dc:creator>mtld</dc:creator>
				<category><![CDATA[Pustefix]]></category>
		<category><![CDATA[Tips & tricks]]></category>

		<guid isPermaLink="false">http://blog.pustefix-framework.org/?p=7</guid>
		<description><![CDATA[If you&#8217;re running a modularized Pustefix application using mvn tomcat:run-war, you can enable the Live-JAR mechanism to load resources from the module/Maven projects&#8217; source folder instead of the JAR files from the classpath.
Thus you don&#8217;t have to rebuild your modules when you modify a resource. Modified static resources and view parts (XML, XSLT) are automatically [...]]]></description>
			<content:encoded><![CDATA[<p>If you&#8217;re running a modularized Pustefix application using <code>mvn tomcat:run-war</code>, you can enable the Live-JAR mechanism to load resources from the module/Maven projects&#8217; source folder instead of the JAR files from the classpath.</p>
<p>Thus you don&#8217;t have to rebuild your modules when you modify a resource. Modified static resources and view parts (XML, XSLT) are automatically reloaded by Pustefix, modified configuration files (Pustefix, Spring) only will require a Webapp reload or Tomcat restart (but no build).</p>
<p>Since Pustefix 0.16 the most simple way to enable the Live-JAR mechanism is by specifying the <code>pustefix.liveroot</code> system property. Its value is the root directory where Pustefix will look for the backing Maven projects. Pustefix will also search sub directories, but for performance reasons the default depth is limited to 4 (it can be changed using the <code>pustefix.liveroot.maxdepth</code> property).</p>
<p>Here&#8217;s the example commandline for a Maven multi project with a webapp subproject from which you start Tomcat, whereas the other subprojects are found by using the main project as root using the relative path <code>..</code>:</p>
<p><code>[/tmp/mainproject/webapp]$ mvn tomcat:run-war -Dpustefix.liveroot=..</code></p>
<p>Alternatively you can specify an absolute path:</p>
<p><code>[/tmp/mainproject/webapp]$ mvn tomcat:run-war -Dpustefix.liveroot=/tmp/mainproject</code></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.pustefix-framework.org/?feed=rss2&amp;p=7</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

