<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>KnobsLeversButtons &#187; ATG</title>
	<atom:link href="http://blog.pulleman.com/category/atg/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.pulleman.com</link>
	<description>Software thingabees. Little things</description>
	<lastBuildDate>Sun, 13 Nov 2011 08:42:09 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='blog.pulleman.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>KnobsLeversButtons &#187; ATG</title>
		<link>http://blog.pulleman.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://blog.pulleman.com/osd.xml" title="KnobsLeversButtons" />
	<atom:link rel='hub' href='http://blog.pulleman.com/?pushpress=hub'/>
		<item>
		<title>Bol.com, all the taste with twice the cafeine. Bol.com test run?</title>
		<link>http://blog.pulleman.com/2008/09/19/bolcom-tastes-better/</link>
		<comments>http://blog.pulleman.com/2008/09/19/bolcom-tastes-better/#comments</comments>
		<pubDate>Fri, 19 Sep 2008 20:27:43 +0000</pubDate>
		<dc:creator>Ronald Pulleman</dc:creator>
				<category><![CDATA[ATG]]></category>
		<category><![CDATA[bol.com]]></category>
		<category><![CDATA[Digital world]]></category>
		<category><![CDATA[Endeca]]></category>

		<guid isPermaLink="false">http://blog.pulleman.com/?p=104</guid>
		<description><![CDATA[Sunday morning 21/9/2008, the new bol.com store was temporarily online. It is definitely an improvement to the old site. Previously when searching for the band daryllann, there were no results whatsoever. The new site now changes the incorrectly spelled band name to the correct spelling. This means that the site is more forgiving to spelling [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.pulleman.com&amp;blog=913562&amp;post=104&amp;subd=pulleman&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Sunday morning  21/9/2008,  the new <a href="http://wwww.bol.com">bol.com</a> store was temporarily online.</p>
<p><a href="http://pulleman.files.wordpress.com/2008/09/ernie.png"><img class="size-full wp-image-112" title="bol" src="http://pulleman.files.wordpress.com/2008/09/ernie.png?w=450" alt="bol"   /></a></p>
<p>It is definitely an improvement to the old site. Previously when searching for the band <em>daryllann</em>, there were no results whatsoever. The new site now changes the incorrectly spelled band name to the correct spelling. This means that the site is more forgiving to spelling mistakes. This should help conversion rates. Although&#8230;.. the album Renko found on Bol.com is not the correct album: <a href="http://www.last.fm/music/Daryll-Ann/Renko">Renko</a>&#8230;..bol.com still have to sort out some data issues.</p>
<p><a href="http://pulleman.files.wordpress.com/2008/09/bolmusic1.jpg"><strong></strong><br />
<img src="http://pulleman.files.wordpress.com/2008/09/bolmusic1.jpg?w=350&#038;h=285" alt="Bolmusic" width="350" height="285" /></a></p>
<p><strong>Revamped product sections<br />
</strong></p>
<p>All product pages are revamped, but especially the games, DVD and music sections look hugely different. The site looks and behaves the same across the different product groups now.</p>
<p>I love the feature that you now can search for children games or hardcore games. Ordering a PEGI 3+ game for a four year old is not what PEGI is about.<a href="http://www.pegi.info/en/"> PEGI rating</a> just sucks™</p>
<p><a href="http://pulleman.files.wordpress.com/2008/09/bol-games1.jpg"><img src="http://pulleman.files.wordpress.com/2008/09/bol-games1.jpg?w=350&#038;h=285" alt="Bol Games" width="350" height="285" /></a></p>
<p><strong>Shopping basket</strong></p>
<p>
The shopping basket and checkout has pretty pictures.<br />
Nice eye candy.</p>
<a href="http://pulleman.files.wordpress.com/2008/09/picture-3.png"><img src="http://pulleman.files.wordpress.com/2008/09/picture-3.png?w=450&#038;h=467" alt="Basket" title="picture-3" width="450" height="467" class="size-full wp-image-131" /></a>
<p><strong>Pretty urls</strong><br />
<code>http://www.bol.com/nl/p/games/metal-gear-solid-4-guns-of-the-patriots/1004004006052238/index.html</code><br />
Bol.com has got rid of all the ugly urls they used to have. SEO to the max.</p>
<p><strong>Payments</strong><br />
Unfortunately the <a href="http://www.postbank.nl">Postbank</a> was experiencing problems which caused problems with my Postbank credit card or iDEAL payments. This killed some of the experience, but this is not something Bol.com can help. It was handled gracefully on the bol.com site. My Visa card had no problems whatsoever&#8230; Good&#8230; good..</p>
<p><strong>Next steps?</strong><br />
<a href="www.atg.com">ATG</a> and <a href="www.endeca.com">Endeca</a> transformation almost done.  Time for the next phase&#8230;.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pulleman.wordpress.com/104/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pulleman.wordpress.com/104/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/pulleman.wordpress.com/104/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/pulleman.wordpress.com/104/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/pulleman.wordpress.com/104/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/pulleman.wordpress.com/104/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/pulleman.wordpress.com/104/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/pulleman.wordpress.com/104/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/pulleman.wordpress.com/104/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/pulleman.wordpress.com/104/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/pulleman.wordpress.com/104/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/pulleman.wordpress.com/104/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/pulleman.wordpress.com/104/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/pulleman.wordpress.com/104/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.pulleman.com&amp;blog=913562&amp;post=104&amp;subd=pulleman&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.pulleman.com/2008/09/19/bolcom-tastes-better/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/561387d0c0c3fc3d68c109499fa468e6?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Ronald Pulleman</media:title>
		</media:content>

		<media:content url="http://pulleman.files.wordpress.com/2008/09/ernie.png" medium="image">
			<media:title type="html">bol</media:title>
		</media:content>

		<media:content url="http://pulleman.files.wordpress.com/2008/09/bolmusic1.jpg" medium="image">
			<media:title type="html">Bolmusic</media:title>
		</media:content>

		<media:content url="http://pulleman.files.wordpress.com/2008/09/bol-games1.jpg" medium="image">
			<media:title type="html">Bol Games</media:title>
		</media:content>

		<media:content url="http://pulleman.files.wordpress.com/2008/09/picture-3.png" medium="image">
			<media:title type="html">picture-3</media:title>
		</media:content>
	</item>
		<item>
		<title>SelfDiagnose and OGNL and check your deployment</title>
		<link>http://blog.pulleman.com/2008/06/16/selfdiagnose-and-ognl-and-check-your-deployment/</link>
		<comments>http://blog.pulleman.com/2008/06/16/selfdiagnose-and-ognl-and-check-your-deployment/#comments</comments>
		<pubDate>Mon, 16 Jun 2008 19:50:15 +0000</pubDate>
		<dc:creator>Ronald Pulleman</dc:creator>
				<category><![CDATA[ATG]]></category>
		<category><![CDATA[Endeca]]></category>
		<category><![CDATA[OGNL]]></category>
		<category><![CDATA[SelfDiagnose]]></category>

		<guid isPermaLink="false">http://blog.pulleman.com/?p=89</guid>
		<description><![CDATA[Some time ago I wrote about selfdiagnose-the-world-according-to-my-atg-application. Since then SelfDiagnose has added some nifty features. The latest release of SelfDiagnose now adds support for OGNL. This gives SelfDiagnose some extra punch. I can now use constructions like: &#60;checkvaluematches value="${@java.lang.Integer@parseInt(configList.length)}" comment="Number of configured Endeca instances" pattern=".*" /&#62; or constructions like &#60;checkendecaservice host="${configList[0].host}" port="${configList[0].port}" query="N=0" comment="Endeca instance [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.pulleman.com&amp;blog=913562&amp;post=89&amp;subd=pulleman&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Some time ago I wrote about <a href="http://blog.pulleman.com/2008/04/17/selfdiagnose-the-world-according-to-my-atg-application">selfdiagnose-the-world-according-to-my-atg-application</a>.<br />
Since then SelfDiagnose has added some nifty features. The latest release of  <a href="http://selfdiagnose.sourceforge.net/">SelfDiagnose</a> now adds support for <a href="http://www.ognl.org/">OGNL</a>. This gives SelfDiagnose some extra punch. I can now use constructions like:</p>
<pre><span class="text text_blog text_blog_html"><span class="text text_html"><span class="meta meta_tag meta_tag_other meta_tag_other_html"><span class="punctuation punctuation_definition punctuation_definition_tag punctuation_definition_tag_html">&lt;</span><span class="entity entity_name entity_name_tag entity_name_tag_other entity_name_tag_other_html">checkvaluematches</span>
    <span class="entity entity_other entity_other_attribute-name entity_other_attribute-name_html">value</span>=<span class="string string_quoted string_quoted_double string_quoted_double_html"><span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_begin punctuation_definition_string_begin_html">"</span>${@java.lang.Integer@parseInt(configList.length)}<span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_end punctuation_definition_string_end_html">"</span></span>
    <span class="entity entity_other entity_other_attribute-name entity_other_attribute-name_html">comment</span>=<span class="string string_quoted string_quoted_double string_quoted_double_html"><span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_begin punctuation_definition_string_begin_html">"</span>Number of configured Endeca instances<span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_end punctuation_definition_string_end_html">"</span></span>
    <span class="entity entity_other entity_other_attribute-name entity_other_attribute-name_html">pattern</span>=<span class="string string_quoted string_quoted_double string_quoted_double_html"><span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_begin punctuation_definition_string_begin_html">"</span>.*<span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_end punctuation_definition_string_end_html">"</span></span> /<span class="punctuation punctuation_definition punctuation_definition_tag punctuation_definition_tag_html">&gt;</span></span>
</span></span></pre>
<p>or constructions like</p>
<pre> <span class="text text_blog text_blog_html"><span class="text text_html"><span class="meta meta_tag meta_tag_other meta_tag_other_html"><span class="punctuation punctuation_definition punctuation_definition_tag punctuation_definition_tag_html">&lt;</span><span class="entity entity_name entity_name_tag entity_name_tag_other entity_name_tag_other_html">checkendecaservice</span> <span class="entity entity_other entity_other_attribute-name entity_other_attribute-name_html">host</span>=<span class="string string_quoted string_quoted_double string_quoted_double_html"><span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_begin punctuation_definition_string_begin_html">"</span>${configList[0].host}<span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_end punctuation_definition_string_end_html">"</span></span> <BR><span class="entity entity_other entity_other_attribute-name entity_other_attribute-name_html">   port</span>=<span class="string string_quoted string_quoted_double string_quoted_double_html"><span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_begin punctuation_definition_string_begin_html">"</span>${configList[0].port}<span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_end punctuation_definition_string_end_html">"</span></span> <span class="entity entity_other entity_other_attribute-name entity_other_attribute-name_html">query</span>=<span class="string string_quoted string_quoted_double string_quoted_double_html"><span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_begin punctuation_definition_string_begin_html">"</span>N=0<span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_end punctuation_definition_string_end_html">"</span></span>  <span class="entity entity_other entity_other_attribute-name entity_other_attribute-name_html"> comment</span>=<span class="string string_quoted string_quoted_double string_quoted_double_html"><span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_begin punctuation_definition_string_begin_html">"</span>Endeca instance 1 connection test<span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_end punctuation_definition_string_end_html">"</span></span>/<span class="punctuation punctuation_definition punctuation_definition_tag punctuation_definition_tag_html">&gt;</span></span></span></span></pre>
<p>The <code>${configList[0].port}</code> is a typical OGNL construction.</p>
<p>The CheckEndecaService can also return the Endeca <code>com.endeca.navigation.ENEQueryResults</code> response.<br />
With OGNL you can easily dissect this Endeca response.</p>
<p>
This can be extremely handy to query for the latest Forge or pipeline version of an <a href="http://www.endeca.com">Endeca</a> build in the different ATG environments were you cannot directly access those services!	For instance in production.</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/pulleman.wordpress.com/89/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/pulleman.wordpress.com/89/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pulleman.wordpress.com/89/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pulleman.wordpress.com/89/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/pulleman.wordpress.com/89/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/pulleman.wordpress.com/89/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/pulleman.wordpress.com/89/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/pulleman.wordpress.com/89/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/pulleman.wordpress.com/89/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/pulleman.wordpress.com/89/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/pulleman.wordpress.com/89/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/pulleman.wordpress.com/89/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/pulleman.wordpress.com/89/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/pulleman.wordpress.com/89/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/pulleman.wordpress.com/89/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/pulleman.wordpress.com/89/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.pulleman.com&amp;blog=913562&amp;post=89&amp;subd=pulleman&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.pulleman.com/2008/06/16/selfdiagnose-and-ognl-and-check-your-deployment/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/561387d0c0c3fc3d68c109499fa468e6?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Ronald Pulleman</media:title>
		</media:content>
	</item>
		<item>
		<title>SelfDiagnose, the world according to my (ATG) application</title>
		<link>http://blog.pulleman.com/2008/04/17/selfdiagnose-the-world-according-to-my-atg-application/</link>
		<comments>http://blog.pulleman.com/2008/04/17/selfdiagnose-the-world-according-to-my-atg-application/#comments</comments>
		<pubDate>Thu, 17 Apr 2008 21:15:34 +0000</pubDate>
		<dc:creator>Ronald Pulleman</dc:creator>
				<category><![CDATA[ATG]]></category>
		<category><![CDATA[Endeca]]></category>
		<category><![CDATA[SelfDiagnose]]></category>

		<guid isPermaLink="false">http://blog.pulleman.com/?p=80</guid>
		<description><![CDATA[We have all been there, when developing a J2EE application, the environment nightmares. When your stuff goes through the different stages of integration, acceptance, production etc. Stuff just breaksTM, because of misconfiguration. Configuration which you have no control over. Missing a database table here, a JNDI binding forgotten, a URL not reachable, weird classloading nightmares, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.pulleman.com&amp;blog=913562&amp;post=80&amp;subd=pulleman&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>We have all been there, when developing a J2EE application, the environment nightmares. When your stuff goes through the different stages of integration, acceptance, production etc. Stuff just breaks<sup>TM</sup>, because of misconfiguration. Configuration which you have no control over.</p>
<p>Missing a database table here, a JNDI binding forgotten,  a URL not reachable, weird classloading nightmares, because another jar is being used in acceptance.</p>
<p>Here is where <a href="http://selfdiagnose.sourceforge.net">SelfDiagnose</a> comes to the rescue. Somehow this little gem gets no press whatsoever. Lately some new tasks have been added to the mix. This <a href="http://philemonworks.wordpress.com/2008/04/11/foreign-compile-time-dependencies-in-selfdiagnose/">blog</a> by Ernest explains something about compile-time dependencies. But more interestingly (to me), SelfDiagnose now contains an <code>CheckAtgComponentProperty</code> task and a <code>CheckEndecaService</code>.<br />
The <code>CheckAtgComponentProperty</code> lets you check an ATG property. I know this can be done with ATG&#8217;s component browser as well, but hold on.<br />
The <code>CheckEndecaService</code> will check the availability of the Endeca service.</p>
<p>The combination of these tasks and the chaining of these creates a powerful diagnosis. See the following snippet of code, where first an ATG property is queried which then is chained to the Endeca task. Another nifty SelfDiagnose feature.<br />
This code is heavily customer oriented, but you will get the idea.</p>
<pre><span class="linenum">    1</span> <span class="text text_blog text_blog_html"><span class="text text_html"><span class="meta meta_tag meta_tag_other meta_tag_other_html"><span class="punctuation punctuation_definition punctuation_definition_tag punctuation_definition_tag_html">&lt;</span><span class="entity entity_name entity_name_tag entity_name_tag_other entity_name_tag_other_html">checkatgcomponentproperty</span>
<span class="linenum">    2</span>     <span class="entity entity_other entity_other_attribute-name entity_other_attribute-name_html">component</span>=<span class="string string_quoted string_quoted_double string_quoted_double_html"><span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_begin punctuation_definition_string_begin_html">"</span>/wsp/common/services/search/balancer/connections/EndecaConnection<span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_end punctuation_definition_string_end_html">"</span></span>
<span class="linenum">    3</span>     <span class="entity entity_other entity_other_attribute-name entity_other_attribute-name_html">property</span>=<span class="string string_quoted string_quoted_double string_quoted_double_html"><span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_begin punctuation_definition_string_begin_html">"</span>host<span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_end punctuation_definition_string_end_html">"</span></span>
<span class="linenum">    4</span>     <span class="entity entity_other entity_other_attribute-name entity_other_attribute-name_html">comment</span>=<span class="string string_quoted string_quoted_double string_quoted_double_html"><span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_begin punctuation_definition_string_begin_html">"</span>Endeca Host<span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_end punctuation_definition_string_end_html">"</span></span>
<span class="linenum">    5</span>     <span class="entity entity_other entity_other_attribute-name entity_other_attribute-name_html">var</span>=<span class="string string_quoted string_quoted_double string_quoted_double_html"><span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_begin punctuation_definition_string_begin_html">"</span>eneHost<span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_end punctuation_definition_string_end_html">"</span></span>/<span class="punctuation punctuation_definition punctuation_definition_tag punctuation_definition_tag_html">&gt;</span></span>
<span class="linenum">    6</span> <span class="meta meta_tag meta_tag_other meta_tag_other_html"><span class="punctuation punctuation_definition punctuation_definition_tag punctuation_definition_tag_html">&lt;</span><span class="entity entity_name entity_name_tag entity_name_tag_other entity_name_tag_other_html">checkatgcomponentproperty</span>
<span class="linenum">    7</span>     <span class="entity entity_other entity_other_attribute-name entity_other_attribute-name_html">component</span>=<span class="string string_quoted string_quoted_double string_quoted_double_html"><span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_begin punctuation_definition_string_begin_html">"</span>/wsp/common/services/search/balancer/connections/EndecaConnection<span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_end punctuation_definition_string_end_html">"</span></span>
<span class="linenum">    8</span>     <span class="entity entity_other entity_other_attribute-name entity_other_attribute-name_html">property</span>=<span class="string string_quoted string_quoted_double string_quoted_double_html"><span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_begin punctuation_definition_string_begin_html">"</span>port<span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_end punctuation_definition_string_end_html">"</span></span>
<span class="linenum">    9</span>     <span class="entity entity_other entity_other_attribute-name entity_other_attribute-name_html">comment</span>=<span class="string string_quoted string_quoted_double string_quoted_double_html"><span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_begin punctuation_definition_string_begin_html">"</span>Endeca Port<span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_end punctuation_definition_string_end_html">"</span></span>
<span class="linenum">   10</span>     <span class="entity entity_other entity_other_attribute-name entity_other_attribute-name_html">var</span>=<span class="string string_quoted string_quoted_double string_quoted_double_html"><span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_begin punctuation_definition_string_begin_html">"</span>enePort<span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_end punctuation_definition_string_end_html">"</span></span>/<span class="punctuation punctuation_definition punctuation_definition_tag punctuation_definition_tag_html">&gt;</span></span>
<span class="linenum">   11</span> <span class="meta meta_tag meta_tag_other meta_tag_other_html"><span class="punctuation punctuation_definition punctuation_definition_tag punctuation_definition_tag_html">&lt;</span><span class="entity entity_name entity_name_tag entity_name_tag_other entity_name_tag_other_html">checkendecaservice</span> <span class="entity entity_other entity_other_attribute-name entity_other_attribute-name_html">host</span>=<span class="string string_quoted string_quoted_double string_quoted_double_html"><span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_begin punctuation_definition_string_begin_html">"</span>${eneHost}<span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_end punctuation_definition_string_end_html">"</span></span> <span class="entity entity_other entity_other_attribute-name entity_other_attribute-name_html">port</span>=<span class="string string_quoted string_quoted_double string_quoted_double_html"><span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_begin punctuation_definition_string_begin_html">"</span>${enePort}<span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_end punctuation_definition_string_end_html">"</span></span> <span class="entity entity_other entity_other_attribute-name entity_other_attribute-name_html">query</span>=<span class="string string_quoted string_quoted_double string_quoted_double_html"><span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_begin punctuation_definition_string_begin_html">"</span>N=0<span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_end punctuation_definition_string_end_html">"</span></span>/<span class="punctuation punctuation_definition punctuation_definition_tag punctuation_definition_tag_html">&gt;</span></span></span></span></pre>
<p>The real cool and not so well understood part about SelfDiagnose in my opinion, is that it will check a bunch of tasks from inside the environment you are executing. This means that the above example will output the ATG configuration and check the configured Endeca instance of the actual environment.<br />
Hitting the selfdiagnose.html url will show:</p>
<p><img src="http://pulleman.files.wordpress.com/2008/04/endeca-diagnose.png?w=520&#038;h=330" alt="Endeca Diagnose" height="330" width="520"></p>
<p>I just mentioned the ATG and Endeca tasks, but there is a lot more which can be extremely helpful.<br />
This nifty feature can save some energy when something is misconfigured. Checking the selfdiagnose URL can save a lot of time.</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/pulleman.wordpress.com/80/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/pulleman.wordpress.com/80/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pulleman.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pulleman.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/pulleman.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/pulleman.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/pulleman.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/pulleman.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/pulleman.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/pulleman.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/pulleman.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/pulleman.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/pulleman.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/pulleman.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/pulleman.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/pulleman.wordpress.com/80/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.pulleman.com&amp;blog=913562&amp;post=80&amp;subd=pulleman&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.pulleman.com/2008/04/17/selfdiagnose-the-world-according-to-my-atg-application/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/561387d0c0c3fc3d68c109499fa468e6?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Ronald Pulleman</media:title>
		</media:content>

		<media:content url="http://pulleman.files.wordpress.com/2008/04/endeca-diagnose.png" medium="image">
			<media:title type="html">Endeca Diagnose</media:title>
		</media:content>
	</item>
		<item>
		<title>Daring Devious Darryl Dude Needs Feedback and a bit of money along the way</title>
		<link>http://blog.pulleman.com/2008/01/17/daring-devious-darryl-dude-needs-feedback-and-a-bit-of-money-along-the-way/</link>
		<comments>http://blog.pulleman.com/2008/01/17/daring-devious-darryl-dude-needs-feedback-and-a-bit-of-money-along-the-way/#comments</comments>
		<pubDate>Thu, 17 Jan 2008 22:25:40 +0000</pubDate>
		<dc:creator>Ronald Pulleman</dc:creator>
				<category><![CDATA[ATG]]></category>
		<category><![CDATA[Endeca]]></category>

		<guid isPermaLink="false">http://blog.pulleman.com/2008/01/17/daring-devious-darryl-dude-needs-feedback-and-a-bit-of-money-along-the-way/</guid>
		<description><![CDATA[Are you living in the Netherlands and need a book, a nice Cd, perhaps a Dvd, the latest Wii game or what have you, use the this affiliate thingabee. You will make Darryl happy. I know I will use it. Darryl&#8217;s commuting habits need a faster car.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.pulleman.com&amp;blog=913562&amp;post=71&amp;subd=pulleman&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Are you living in the Netherlands and need a book, a nice Cd, perhaps a Dvd,  the latest Wii game or what have you, use the this affiliate thingabee. You will make Darryl happy.</p>
<p>I know I will use it.</p>
<p><a href="http://www.pulleman.com/geekstuff.html">Darryl&#8217;s commuting habits need a faster car.</a></p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/pulleman.wordpress.com/71/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/pulleman.wordpress.com/71/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pulleman.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pulleman.wordpress.com/71/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/pulleman.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/pulleman.wordpress.com/71/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/pulleman.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/pulleman.wordpress.com/71/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/pulleman.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/pulleman.wordpress.com/71/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/pulleman.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/pulleman.wordpress.com/71/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/pulleman.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/pulleman.wordpress.com/71/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/pulleman.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/pulleman.wordpress.com/71/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.pulleman.com&amp;blog=913562&amp;post=71&amp;subd=pulleman&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.pulleman.com/2008/01/17/daring-devious-darryl-dude-needs-feedback-and-a-bit-of-money-along-the-way/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/561387d0c0c3fc3d68c109499fa468e6?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Ronald Pulleman</media:title>
		</media:content>
	</item>
		<item>
		<title>Do not use the ATG ApplicationLogging API</title>
		<link>http://blog.pulleman.com/2007/11/04/do-not-use-the-atg-applicationlogging-api/</link>
		<comments>http://blog.pulleman.com/2007/11/04/do-not-use-the-atg-applicationlogging-api/#comments</comments>
		<pubDate>Sun, 04 Nov 2007 14:06:28 +0000</pubDate>
		<dc:creator>Ronald Pulleman</dc:creator>
				<category><![CDATA[ATG]]></category>
		<category><![CDATA[JBoss]]></category>
		<category><![CDATA[Log4j]]></category>

		<guid isPermaLink="false">http://blog.pulleman.com/2007/11/04/do-not-use-the-atg-applicationlogging-api/</guid>
		<description><![CDATA[In my current project we use atg.nucleus.logging.ApplicationLogging. This is with ATG 2007 on JBoss. At the start it was decided to use the ATG logging API in stead of Log4J (or any other Java logging framework). ATG and ApplicationLogging was common practice, why not use it I was told. Later when I saw the code [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.pulleman.com&amp;blog=913562&amp;post=62&amp;subd=pulleman&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p> In my current project we use <code>atg.nucleus.logging.ApplicationLogging</code>. This is with ATG 2007 on JBoss.<br />
At the start it was decided to use the ATG logging API in stead of Log4J (or<br />
any other Java logging framework). ATG and <code>ApplicationLogging</code> was common practice, why not use it I was told.<br />
Later when I saw the code littered with complicated logging statements where the programmer had to include the method from which the Logging statement was executed I was not so sure.</p>
<h4>1 Log4J ConversionPattern</h4>
<p>Adding the containing method to your logging statement is not necessary. You can use the Log4J ConversionPattern %M in the PatternLayout.<br />
which is used to output the method name where the logging request was issued.<br />
It should be used with care of course since it is a performance drain. But we can alter this at runtime so that&#8217;s no biggie (see 2). But&#8230;<br />
ATG logging attaches to JBoss logging, however the %M is lost since the ATG logging method is considered as the issuing method. So the<br />
<code>logDebug logInfo, LogError</code> etc, are reported to be the issuing method, in stead of the actual method. Pretty useless.<br />
This would not have happened if ATG <code>ApplicationLogging</code> was not used, but plain Log4J.</p>
<h4>2 Different logging level</h4>
<p>A used argument is that you can alter the logging level of the individual components in the ATG admin console.<br />
This is trivial. You can also do this in Log4J.xml with the Log4J categories.</p>
<h4>3 Dynamic Logging Level</h4>
<p>Another argument: You can change the logging level in ATG without restarting the server.<br />
Look at <a href="http://www.jdocs.com/jboss/4.0.4/org/jboss/logging/Log4jService.html">JBoss Log4JService</a>. This automatically picks up changes to Log4J.</p>
<h3>Moral</h3>
<ul>
<li>Don&#8217;t use <code>atg.nucleus.logging.ApplicationLogging</code> you butcher Log4J features.</li>
<li>Don&#8217;t think, because you have some patterns which used to work, that that is the best pattern in the future.<br />
What worked with DAS does not necessarily work with JBOSS.</li>
<li>Think.</li>
</ul>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/pulleman.wordpress.com/62/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/pulleman.wordpress.com/62/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pulleman.wordpress.com/62/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pulleman.wordpress.com/62/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/pulleman.wordpress.com/62/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/pulleman.wordpress.com/62/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/pulleman.wordpress.com/62/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/pulleman.wordpress.com/62/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/pulleman.wordpress.com/62/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/pulleman.wordpress.com/62/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/pulleman.wordpress.com/62/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/pulleman.wordpress.com/62/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/pulleman.wordpress.com/62/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/pulleman.wordpress.com/62/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/pulleman.wordpress.com/62/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/pulleman.wordpress.com/62/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.pulleman.com&amp;blog=913562&amp;post=62&amp;subd=pulleman&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.pulleman.com/2007/11/04/do-not-use-the-atg-applicationlogging-api/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/561387d0c0c3fc3d68c109499fa468e6?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Ronald Pulleman</media:title>
		</media:content>
	</item>
	</channel>
</rss>
