<?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:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>TechnoBuzz</title>
	<atom:link href="http://technobuzz.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://technobuzz.wordpress.com</link>
	<description>A Techno Blog, mainly about Java</description>
	<lastBuildDate>Sat, 13 Sep 2008 22:20:49 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<image>
		<url>http://www.gravatar.com/blavatar/c81eb455e4953b85c9002ffecf528bbe?s=96&#038;d=http://s.wordpress.com/i/buttonw-com.png</url>
		<title>TechnoBuzz</title>
		<link>http://technobuzz.wordpress.com</link>
	</image>
			<item>
		<title>Exception Scenarios</title>
		<link>http://technobuzz.wordpress.com/2008/09/13/exception-scenarios/</link>
		<comments>http://technobuzz.wordpress.com/2008/09/13/exception-scenarios/#comments</comments>
		<pubDate>Sat, 13 Sep 2008 22:20:49 +0000</pubDate>
		<dc:creator>davidbloom</dc:creator>
				<category><![CDATA[Hibernate & ORM]]></category>
		<category><![CDATA[J2EE]]></category>
		<category><![CDATA[Open Source]]></category>

		<guid isPermaLink="false">http://technobuzz.wordpress.com/?p=556</guid>
		<description><![CDATA[Its been a while since I chimed in on the topic of Exceptions:
Checked : (java.lang.Exception). This type of exception represents useful information about the operation of a legally specified request that the caller may have had no control over and that the caller needs to be informed about. With checked exceptions, Java language forces us [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=556&subd=technobuzz&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Its been a while since I chimed in on the topic of <a href="http://technobuzz.wordpress.com/2004/12/18/exception-fever/">Exceptions</a>:</p>
<blockquote><p><strong>Checked</strong> : (java.lang.Exception). This type of exception represents useful information about the operation of a legally specified request that the caller may have had no control over and that the caller needs to be informed about. With checked exceptions, Java language forces us to document all the anticipated ways in which control might exit a method:</p>
<p><strong>Unchecked</strong> : (java.lang.RuntimeException). These are exceptions that occur as a result of programming errors that the program could not be expected to catch.</p></blockquote>
<p>Now, it is time to <a href="http://www.alameda-tech-lab.com/portfolio/samples/befores/otn_persistence_article_v3.doc">talk</a> about the <a href="http://www.callistaenterprise.se/download/18.5a1758e1117d436eebd80001371/spring_dao.pdf">Exception Handling capabilities with DAOs in the Spring Framework</a></p>
<p>(<a href="http://assets.en.oreilly.com/1/event/12/SimpleJDBC%20Development%20with%20Spring%202_5%20and%20MySQL%20Presentation.pdf">2.5</a>)</p>
<p><a href="http://static.springframework.org/spring/docs/2.0.x/reference/jdbc.html#jdbc-SQLExceptionTranslator">SQL Exception Translator</a> &#8211; <a href="http://java.sun.com/javase/6/docs/api/java/sql/SQLException.html?is-external=true">sql exception</a> can be <a href="http://www.javapractices.com/topic/TopicAction.do?Id=120">translated</a> to a DataAccessException using the <a href="http://static.springframework.org/spring/docs/2.5.x/api/org/springframework/jdbc/support/SQLExceptionTranslator.html#translate(java.lang.String,%20java.lang.String,%20java.sql.SQLException)">translate</a> method</p>
<p>- <a href="http://www.agitar.com/openquality/spring/org/springframework/jdbc/support/SQLErrorCodeSQLExceptionTranslator.java.html">ex1</a>, <a href="http://www.devdaily.com/java/jwarehouse/spring-framework-2.5.3/test/org/springframework/jdbc/support/SQLErrorCodeSQLExceptionTranslatorTests.java.shtml">ex2</a>, <a href="http://www.koders.com/java/fid57640944B2F93EACCB3DC0BD33D50C9BE00335D4.aspx">ex3</a> , <a href="http://book.javanb.com/Professional-Java-Development-with-the-Spring-Framework/BBL0049.html">ex4</a></p>
<p>The method <a href="http://www.javatx.cn/spring/api/org/springframework/orm/hibernate3/support/HibernateDaoSupport.html">HibernateDaoSupport</a> <strong>::</strong> <a href="http://static.springframework.org/spring/docs/2.5.x/api/org/springframework/orm/hibernate3/SessionFactoryUtils.html#convertHibernateAccessException(org.hibernate.HibernateException)">convertHibernateAccessException</a> &#8211; convert the given HibernateException to an appropriate exception from the org.springframework.dao hierarchy.</p>
<pre><a href="http://www.devdaily.com/java/jwarehouse/spring-framework-2.5.3/src/org/springframework/orm/hibernate3/SessionFactoryUtils.java.shtml">SessionFactoryUtils</a> :
public static DataAccessException convertHibernateAccessException(HibernateException ex) {
		if (ex instanceof JDBCConnectionException) {
			return new DataAccessResourceFailureException(ex.getMessage(), ex);
		}
		if (ex instanceof SQLGrammarException) {
			return new InvalidDataAccessResourceUsageException(ex.getMessage(), ex);
		}
		if (ex instanceof DataException) {
			return new InvalidDataAccessResourceUsageException(ex.getMessage(), ex);
		}
		if (ex instanceof LockAcquisitionException) {
			return new CannotAcquireLockException(ex.getMessage(), ex);
		}
		if (ex instanceof ConstraintViolationException) {
			return new DataIntegrityViolationException(ex.getMessage(), ex);
		}
		if (ex instanceof JDBCException) {
			return new HibernateJdbcException((JDBCException) ex);
		}
		if (ex instanceof PropertyValueException) {
			return new DataIntegrityViolationException(ex.getMessage(), ex);
		}
		if (ex instanceof PersistentObjectException) {
			return new InvalidDataAccessApiUsageException(ex.getMessage(), ex);
		}
		if (ex instanceof TransientObjectException) {
			return new InvalidDataAccessApiUsageException(ex.getMessage(), ex);
		}
		if (ex instanceof ObjectDeletedException) {
			return new InvalidDataAccessApiUsageException(ex.getMessage(), ex);
		}
		if (ex instanceof QueryException) {
			return new HibernateQueryException((QueryException) ex);
		}
		if (ex instanceof UnresolvableObjectException) {
			return new HibernateObjectRetrievalFailureException((UnresolvableObjectException) ex);
		}
		if (ex instanceof WrongClassException) {
			return new HibernateObjectRetrievalFailureException((WrongClassException) ex);
		}
		if (ex instanceof NonUniqueResultException) {
			return new IncorrectResultSizeDataAccessException(ex.getMessage(), 1);
		}
		if (ex instanceof StaleObjectStateException) {
			return new HibernateOptimisticLockingFailureException((StaleObjectStateException) ex);
		}
		if (ex instanceof StaleStateException) {
			return new HibernateOptimisticLockingFailureException((StaleStateException) ex);
		}

		// fallback
		return new HibernateSystemException(ex);
	}</pre>
<p><a href="http://swik.net/Spring/Interface21+Team+Blog/So+should+you+still+use+Spring%27s+HibernateTemplate+and%2For+JpaTemplate%3F%3F/bcw59">Hibernate Template</a></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/technobuzz.wordpress.com/556/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/technobuzz.wordpress.com/556/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/technobuzz.wordpress.com/556/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/technobuzz.wordpress.com/556/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/technobuzz.wordpress.com/556/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/technobuzz.wordpress.com/556/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/technobuzz.wordpress.com/556/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/technobuzz.wordpress.com/556/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/technobuzz.wordpress.com/556/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/technobuzz.wordpress.com/556/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/technobuzz.wordpress.com/556/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/technobuzz.wordpress.com/556/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=556&subd=technobuzz&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://technobuzz.wordpress.com/2008/09/13/exception-scenarios/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/04b4144caae1c494d0f63aa7d3d1a7d5?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">davidbloom</media:title>
		</media:content>
	</item>
		<item>
		<title>Testing through Spring with rollbacks</title>
		<link>http://technobuzz.wordpress.com/2008/08/24/testing-through-spring-with-rollbacks/</link>
		<comments>http://technobuzz.wordpress.com/2008/08/24/testing-through-spring-with-rollbacks/#comments</comments>
		<pubDate>Sun, 24 Aug 2008 14:37:44 +0000</pubDate>
		<dc:creator>davidbloom</dc:creator>
				<category><![CDATA[IoC]]></category>
		<category><![CDATA[J2EE]]></category>

		<guid isPermaLink="false">http://technobuzz.wordpress.com/?p=541</guid>
		<description><![CDATA[If you download the spring framework with dependencies, one of the modules included is the spring-test. 
spring
- Convenient jar file combining all standard modules (except for the test module and the Spring MVC support)
- Also includes the AOP Alliance interfaces (as a convenience)!
- Does not include contents of spring-aspects.jar, spring-test.jar and spring-webmvc*.jar!
spring-test
- Contents: test context [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=541&subd=technobuzz&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>If you download the spring framework with dependencies, one of the modules included is the spring-test. <a href="http://www.infoq.com/articles/testing-in-spring"></a></p>
<p><strong>spring</strong><br />
- Convenient jar file combining all standard modules (except for the test module and the Spring MVC support)<br />
- Also includes the AOP Alliance interfaces (as a convenience)!<br />
- Does not include contents of spring-aspects.jar, <strong>spring-test.jar</strong> and spring-webmvc*.jar!</p>
<p><strong>spring-test</strong><br />
- Contents: test context framework, JUnit support, JNDI mocks, Servlet API mocks, Portlet API mocks<br />
- Dependencies: spring-core, (spring-context, spring-jdbc, spring-web, JUnit, Servlet API, Portlet API)</p>
<p>As the spring documentation <a href="http://static.springframework.org/spring/docs/2.5.x/reference/testing.html#junit38-legacy-tx">mentions</a>, for <span class="FrameItemFont">unit testing transactional systems </span>you can achieve rollback of your tests pretty easily:</p>
<blockquote><p>Typically you will extend the subclass, AbstractTransactionalDataSourceSpringContextTests. This class also requires that a DataSource bean definition &#8211; again, with any name &#8211; be present in the application context. It creates a JdbcTemplate instance variable, that is useful for convenient querying, and provides handy methods to delete the contents of selected tables (remember that the transaction will roll back by default, so this is safe to do).</p></blockquote>
<p>This <a href="http://forum.springframework.org/archive/index.php/t-22837.html">problem</a> was identified with MySql.</p>
<p>Nice article here on <a href="http://www.infoq.com/articles/testing-in-spring">spring test</a></p>
<p>This link tells us about the spring testing <a href="http://www.trailsframework.org/Testing">method calls</a></p>
<pre>AbstractTransactionalDataSourceSpringContextTests superclass
provides the following services:

Injects test dependencies, meaning that we don't need to
perform application context lookups. Injection uses
autowiring by type.

Executes each test method in its own transaction, which is
automatically rolled back by <span class="code-keyword">default</span>. This means that even <span class="code-keyword">
if</span> tests insert or otherwise change database state, there
is no need <span class="code-keyword">for</span> a teardown or cleanup script.

If you want a transaction to commit--unusual, but useful <span class="code-keyword">
if</span> you want a particular test to populate the database,
<span class="code-keyword">for</span> example--you can call the setComplete() method inherited
from AbstractTransactionalSpringContextTests. This will cause
the transaction to commit instead of roll back.

There is also convenient ability to end a transaction before
the test <span class="code-keyword">case</span> ends, through calling the endTransaction() method.
This will roll back the transaction by <span class="code-keyword">default</span>, and commit it
only <span class="code-keyword">if</span> setComplete() had previously been called.

Provides useful inherited <span class="code-keyword">protected</span> fields, such as a JdbcTemplate
that can be used to verify database state after test operations,
or verify the results of queries performed by application code.
An ApplicationContext is also inherited, and can be used <span class="code-keyword">for</span>
explicit lookup <span class="code-keyword">if</span> necessary.</pre>
<p><a href="http://francisoud.blogspot.com/2006_04_01_archive.html">All the Spring Test Life Cycle Methods</a></p>
<p><a href="http://static.springframework.org/spring/docs/2.5.x/api/org/springframework/test/AbstractTransactionalDataSourceSpringContextTests.html">API</a></p>
<ul>
<li>getConfigLocations</li>
<li>setDataSource</li>
<li>setTransactionManager</li>
<li>onSetUpBeforeTransaction</li>
<li>onSetUpInTransaction</li>
<li>onTearDownInTransaction</li>
<li>endTransaction</li>
<li>onTearDownAfterTransaction</li>
</ul>
<p><a href="http://forum.springframework.org/showthread.php?t=26588">example scenario</a>:</p>
<p>Now onto the <a href="http://www.mularien.com/blog/2007/11/07/spring-25-makes-unit-testing-easy-with-annotations/">2.5 way of testing:</a></p>
<p><a href="http://static.springframework.org/spring/docs/2.5.x/api/org/springframework/test/context/package-summary.html">org.springframework.test.context</a><em> &#8211; Spring TestContext Framework</em> which provides annotation-driven unit and integration testing support that is agnostic of the actual testing framework in use.</p>
<p>Spring 2.5 continues this rich and convenient testing framework, while now removing the requirement that your unit tests extend Spring framework tests. Instead of subclassing, it uses java annotations.</p>
<p>Related links:</p>
<ul>
<li><a href="http://www.famille-chartier.com/?p=13">Spring 2.5</a></li>
<li><a href="http://www.ociweb.com/mark/programming/SpringTransactions.html">Spring Transactions</a></li>
<li><a href="http://cse-mjmcl.cse.bris.ac.uk/blog/2005/12/20/1135076527290.html">Transaction Management with IBatis and Spring</a></li>
<li><a href="http://www.famvdploeg.com/guides/index.php/Spring">Spring Guide</a> wiki</li>
<li><a href="http://opensource.atlassian.com/confluence/oss/display/IBATIS/Converting+iBATIS+DAO+to+Spring+DAO">Converting iBATIS DAO to Spring DAO</a></li>
<li><a href="http://cwiki.apache.org/WICKET/ibatis.html">Ibatis Configuration example</a></li>
<li><a href="http://www.nljug.org/pages/events/content/jspring_2008/sessions/00041/slides/">IBatis and Spring Slides</a></li>
</ul>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/technobuzz.wordpress.com/541/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/technobuzz.wordpress.com/541/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/technobuzz.wordpress.com/541/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/technobuzz.wordpress.com/541/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/technobuzz.wordpress.com/541/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/technobuzz.wordpress.com/541/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/technobuzz.wordpress.com/541/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/technobuzz.wordpress.com/541/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/technobuzz.wordpress.com/541/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/technobuzz.wordpress.com/541/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/technobuzz.wordpress.com/541/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/technobuzz.wordpress.com/541/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=541&subd=technobuzz&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://technobuzz.wordpress.com/2008/08/24/testing-through-spring-with-rollbacks/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/04b4144caae1c494d0f63aa7d3d1a7d5?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">davidbloom</media:title>
		</media:content>
	</item>
		<item>
		<title>The IBatis Model</title>
		<link>http://technobuzz.wordpress.com/2008/08/17/the-ibatis-model/</link>
		<comments>http://technobuzz.wordpress.com/2008/08/17/the-ibatis-model/#comments</comments>
		<pubDate>Sun, 17 Aug 2008 12:51:05 +0000</pubDate>
		<dc:creator>davidbloom</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://technobuzz.wordpress.com/?p=529</guid>
		<description><![CDATA[Been a while since I started first looking at IBatis.   The Spring Framework has a sample application  named JPetstore (available in the core download) that gives you an example of IBatis, Spring, and  Struts 1.x .
Different Spring Ibatis SQLMaps approaches:
Use Of Annotations
Implementing DAOs based on plain iBATIS API
&#60;bean
id=&#8221;dataSource&#8221;
class=&#8221;org.springframework.jdbc.datasource.SingleConnectionDataSource&#8221;
destroy-method=&#8221;destroy&#8221;
&#62;
&#60;bean id=&#8221;transactionManager&#8221;
class=&#8221;org.springframework.jdbc.datasource.DataSourceTransactionManager&#8221;&#62;
&#60;property name=&#8221;dataSource&#8221; ref=&#8221;dataSource&#8221;/&#62;
&#60;/bean&#62;
&#60;bean [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=529&subd=technobuzz&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Been a while since I <a href="http://technobuzz.wordpress.com/2005/07/15/apache-ibatis/">started first looking at IBatis</a>.   The Spring Framework has a sample application  named JPetstore (available in the core download) that gives you an example of IBatis, Spring, and  Struts 1.x .</p>
<p>Different <a href="http://static.springframework.org/spring/docs/2.5.x/reference/orm.html#orm-ibatis">Spring Ibatis SQLMaps</a> approaches:</p>
<p><span style="text-decoration:underline;">Use Of Annotations</span></p>
<p><a href="http://static.springframework.org/spring/docs/2.5.x/reference/orm.html#orm-ibatis-straight">Implementing DAOs based on plain iBATIS API</a></p>
<p>&lt;bean<br />
id=&#8221;dataSource&#8221;<br />
class=&#8221;org.springframework.jdbc.datasource.SingleConnectionDataSource&#8221;<br />
destroy-method=&#8221;destroy&#8221;<br />
&gt;</p>
<p>&lt;bean id=&#8221;transactionManager&#8221;<br />
class=&#8221;org.springframework.jdbc.datasource.DataSourceTransactionManager&#8221;&gt;<br />
&lt;property name=&#8221;dataSource&#8221; ref=&#8221;dataSource&#8221;/&gt;<br />
&lt;/bean&gt;</p>
<p>&lt;bean id=&#8221;sqlMapClient&#8221; class=&#8221;org.springframework.orm.ibatis.SqlMapClientFactoryBean&#8221;&gt;<br />
&lt;property name=&#8221;configLocation&#8221; value=&#8221;classpath:/sqlmap-config.xml&#8221;/&gt;<br />
&lt;property name=&#8221;dataSource&#8221; ref=&#8221;dataSource&#8221;/&gt;</p>
<p>&lt;/bean&gt;</p>
<p>&lt;?xml version=&#8221;1.0&#8243; encoding=&#8221;UTF-8&#8243;?&gt;<br />
&lt;!DOCTYPE sqlMapConfig PUBLIC<br />
&#8220;-//ibatis.apache.org//DTD SQL Map Config 2.0//EN&#8221;<br />
&#8220;http://ibatis.apache.org/dtd/sql-map-config-2.dtd&#8221;&gt;<br />
&lt;sqlMapConfig&gt;<br />
&lt;settings defaultStatementTimeout=&#8221;5&#8243; /&gt;<br />
&lt;sqlMap resource=&#8221;MyType.xml&#8221; /&gt;<br />
&lt;/sqlMapConfig&gt;</p>
<p>You can actually omit the ‘transaction-manager’ attribute in the &lt;tx:annotation-driven/&gt; tag if the bean name of the PlatformTransactionManager that you want to wire in has the name ‘transactionManager’.</p>
<p>&lt;!– Instructs Spring to perfrom declarative transaction managemenet on annotated classes –&gt;<br />
&lt;tx:annotation-driven/&gt;</p>
<p>@Autowired<br />
public void setSqlMapClient(<a href="http://static.springframework.org/spring/docs/2.5.x/reference/orm.html#orm-ibatis-setup">SqlMapClient</a> sqlMapClient) {<br />
iBatisTemplate = new SqlMapClientTemplate(sqlMapClient);<br />
}</p>
<p>@<em><a class="external text" title="http://static.springframework.org/spring/docs/2.5.x/reference/transaction.html#transaction-declarative-annotations" rel="nofollow" href="http://static.springframework.org/spring/docs/2.5.x/reference/transaction.html#transaction-declarative-annotations">@Transactional</a></em>(readOnly = false, propagation = Propagation.REQUIRES_NEW)</p>
<p><em>- The @Transactional annotation may be placed before an interface definition, a method on an interface, a class definition, or a public method on a class. However, please note that the mere presence of the @Transactional annotation is not enough to actually turn on the transactional behavior.</em><br />
public MyType insertMyType(MyType myType) {<br />
MyType myType = null;<br />
myType= (MyType) iBatisTemplate.insert(&#8221;insertIntoMyType&#8221;, MyType;<br />
return myType;<br />
}</p>
<p><em> </em></p>
<p><span style="text-decoration:underline;">Use Of Spring&#8217;s DaoSupport Class</span></p>
<p>&lt;bean<br />
id=&#8221;dataSource&#8221;<br />
class=&#8221;org.apache.commons.dbcp.BasicDataSource&#8221;<br />
destroy-method=&#8221;close&#8221;<br />
&gt;</p>
<p>&lt;bean id=&#8221;sqlMapClient&#8221; class=&#8221;org.springframework.orm.ibatis.SqlMapClientFactoryBean&#8221;&gt;<br />
&lt;property name=&#8221;configLocation&#8221; value=&#8221;classpath:/sqlmap-config.xml&#8221;/&gt;<br />
&lt;property name=&#8221;dataSource&#8221; ref=&#8221;dataSource&#8221;/&gt;<br />
&lt;/bean&gt;</p>
<p>&lt;?xml version=&#8221;1.0&#8243; encoding=&#8221;UTF-8&#8243;?&gt;<br />
&lt;!DOCTYPE sqlMapConfig PUBLIC &#8220;-//iBATIS.com//DTD SQL Map Config 2.0//EN&#8221;<br />
&#8220;http://www.ibatis.com/dtd/sql-map-config-2.dtd&#8221;&gt;<br />
&lt;sqlMapConfig&gt;<br />
&lt;settings useStatementNamespaces=&#8221;true&#8221; /&gt;<br />
&lt;sqlMap resource=&#8221;person.xml&#8221; /&gt;<br />
&lt;/sqlMapConfig&gt;</p>
<p>PersonDaoIbatisImpl extends <a href="http://static.springframework.org/spring/docs/2.5.x/reference/orm.html#orm-ibatis-template">SqlMapClientDaoSupport</a></p>
<p>public void addPerson(Person person) {<br />
Long id = (Long) this.getSqlMapClientTemplate().insert(&#8221;person.insert&#8221;,<br />
person);<br />
person.setId(id);<br />
}</p>
<ul>
<li><a href="http://static.springframework.org/spring/docs/2.0.x/api/org/springframework/orm/ibatis/support/SqlMapClientDaoSupport.html">org.springframework.orm.ibatis.support.SqlMapClientDaoSupport</a> &#8211; Instead of a plain SqlMapClient, you can also pass a preconfigured  SqlMapClientTemplate instance in. This allows you to share your  SqlMapClientTemplate configuration for all your DAOs</li>
</ul>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/technobuzz.wordpress.com/529/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/technobuzz.wordpress.com/529/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/technobuzz.wordpress.com/529/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/technobuzz.wordpress.com/529/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/technobuzz.wordpress.com/529/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/technobuzz.wordpress.com/529/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/technobuzz.wordpress.com/529/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/technobuzz.wordpress.com/529/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/technobuzz.wordpress.com/529/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/technobuzz.wordpress.com/529/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/technobuzz.wordpress.com/529/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/technobuzz.wordpress.com/529/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=529&subd=technobuzz&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://technobuzz.wordpress.com/2008/08/17/the-ibatis-model/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/04b4144caae1c494d0f63aa7d3d1a7d5?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">davidbloom</media:title>
		</media:content>
	</item>
		<item>
		<title>Spring Web Flow Beginner &#8211; Part Two</title>
		<link>http://technobuzz.wordpress.com/2008/07/19/spring-web-flow-beginner-part-two/</link>
		<comments>http://technobuzz.wordpress.com/2008/07/19/spring-web-flow-beginner-part-two/#comments</comments>
		<pubDate>Sat, 19 Jul 2008 13:44:34 +0000</pubDate>
		<dc:creator>davidbloom</dc:creator>
				<category><![CDATA[J2EE]]></category>

		<guid isPermaLink="false">http://technobuzz.wordpress.com/?p=504</guid>
		<description><![CDATA[As a total beginner to Spring Web Flow, the main thing I have noticed in going through the material is that there is quite a difference between the 1.x and the new release 2.0.
Web Flow &#124; Spring Web Flow Forum


Spring WF 1.X API &#124;  Spring WF 1.X Reference Guide &#124; Spring WF Practical Intro [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=504&subd=technobuzz&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>As a total <a href="http://technobuzz.wordpress.com/2008/07/13/">beginner to Spring Web Flow</a>, the main thing I have noticed in going through the material is that there is quite a <a href="http://static.springframework.org/spring-webflow/docs/2.0.x/changelog.txt">difference</a> between the 1.x and the <a href="http://www.springframework.org/documentation#webflow">new release 2.0</a>.</p>
<p><a href="http://www.springframework.org/webflow">Web Flow</a> | <a href="http://forum.springframework.org/forumdisplay.php?f=36">Spring Web Flow Forum<br />
</a></p>
<ul>
<li><a href="http://static.springframework.org/spring-webflow/docs/1.0.x/api/index.html">Spring WF 1.X API</a> |  <a href="http://static.springframework.org/spring-webflow/docs/1.0.x/reference/index.html">Spring WF 1.X Reference Guide</a> | <a href="http://www.ervacon.com/products/swf/intro/index.html">Spring WF Practical Intro</a> | <a href="http://www.javapassion.com/handsonlabs/springwebflow/">Spring WF 1.X Reference Apps</a> | <a href="http://blog.springsource.com/main/2007/05/18/spring-web-flow-java-one-2007-demo/">Spring 1.X WF YouTube</a> | <a href="http://firstpartners.net/kb/index.php/Spring_Webflow">Spring WF1 Wiki Article</a> |  <a href="http://jspgeek.com/18816">Spring WF 1 Examined</a> | <a href="http://darcia.org/2008/05/19/build-on-spring-web-flow/">Spring WF 1 Starter</a></li>
<li><a href="http://www.rimple.com/tech/2008/04/11/grails-and-spring-webflow/">Spring WF 1 with Grails</a></li>
<li><a href="https://issues.apache.org/struts/browse/WW-1525">Spring WF 1 &#8211; Struts2</a></li>
</ul>
<p>There seems to be in package  org.springframework.webflow.action a  <a href="http://static.springframework.org/spring-webflow/docs/1.0.x/api/org/springframework/webflow/executor/struts/FlowAction.html">FlowAction</a> and a <a href="http://static.springframework.org/spring-webflow/docs/1.0.x/api/org/springframework/webflow/executor/FlowExecutor.html">FlowExecutor</a> class. As well, the <a href="http://newbebweb.blogspot.com/2006/12/getting-into-spring-web-flow.html">ExternalContext class which is credited to allowing WF to be  decoupled from Servlet API</a> .</p>
<ul>
<li><a href="http://static.springframework.org/spring-webflow/docs/2.0.x/javadoc-api/index.html">Spring WF 2.0.X API</a> | <a href="http://static.springframework.org/spring-webflow/docs/2.0.x/reference/html/index.html">Spring WF 2.0.X Reference Guide</a> | <a href="http://www.springframework.org/webflow-samples">Spring WF 2.0.X Reference Apps</a> | <a href="http://wheelersoftware.com/articles/spring-web-flow-2.0.html">Spring 2 WF Example</a></li>
</ul>
<p>I do not see a FlowAction or FlowExecutor in <a href="http://static.springframework.org/spring-webflow/docs/2.0.x/javadoc-api/org/springframework/webflow/action/package-summary.html">org.spring.webflow.action</a> package like in webflow 1.</p>
<p>Instead, lets look at what we have from the example <a href="http://java.dzone.com/articles/spring-web-flow-crud-tutorial">Spring Flow 2.0 Example</a> application.</p>
<p>To use annotations for the transactions within the example, we  do the following:</p>
<ol>
<li>Put an tag tx:annotation-driven in the spring config file</li>
<li>Put @Transactional annotation in the services classes</li>
</ol>
<p><em><a class="external text" title="http://static.springframework.org/spring/docs/2.5.x/reference/transaction.html#transaction-declarative-annotations" rel="nofollow" href="http://static.springframework.org/spring/docs/2.5.x/reference/transaction.html#transaction-declarative-annotations">@Transactional</a> &#8211; The @Transactional annotation may be placed  before an interface definition, a method on an interface, a class definition, or  a public method on a class. However, please note that the mere presence of the  @Transactional annotation is not enough to actually turn on the transactional  behavior.</em></p>
<p>You can actually omit the &#8216;transaction-manager&#8217; attribute in the  &lt;tx:annotation-driven/&gt; tag if the bean name of the  PlatformTransactionManager that you want to wire in has the name  &#8216;transactionManager&#8217;.</p>
<blockquote><p>&lt;!&#8211; Instructs Spring to perfrom declarative transaction managemenet on annotated classes &#8211;&gt;<br />
&lt;tx:annotation-driven/&gt;</p>
<p>&lt;!&#8211; Drives transactions using local JPA APIs &#8211;&gt;<br />
&lt;bean id=&#8221;transactionManager&#8221; class=&#8221;org.springframework.orm.jpa.JpaTransactionManager&#8221;/&gt;</p></blockquote>
<p>The LocalContainerEntityManagerFactoryBean can be configured with all Persistent  Unit information like is done here.</p>
<p><a class="external text" title="http://static.springframework.org/spring/docs/2.5.x/reference/orm.html#orm-jpa-straight" rel="nofollow" href="http://static.springframework.org/spring/docs/2.5.x/reference/orm.html#orm-jpa-straight"><br />
</a> <em><br />
<a class="external text" title="http://static.springframework.org/spring/docs/2.5.x/reference/orm.html#orm-jpa-straight" rel="nofollow" href="http://static.springframework.org/spring/docs/2.5.x/reference/orm.html#orm-jpa-straight">@PersistenceUnit</a> &#8211; annotated on EntityManagerFactory instances  are thread-safe</em></p>
<blockquote><p>&lt;!&#8211; Creates a EntityManagerFactory for use with the Hibernate JPA provider and a simple in-memory data source populated with test data &#8211;&gt;<br />
&lt;bean id=&#8221;entityManagerFactory&#8221; class=&#8221;org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean&#8221;&gt;<br />
&lt;property name=&#8221;jpaVendorAdapter&#8221;&gt;<br />
&lt;bean class=&#8221;org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter&#8221;/&gt;<br />
&lt;/property&gt;<br />
&lt;/bean&gt;</p>
<p>&lt;!&#8211; Deploys a in-memory datasource &#8211;&gt;<br />
&lt;bean id=&#8221;dataSource&#8221; class=&#8221;org.springframework.jdbc.datasource.DriverManagerDataSource&#8221;&gt;<br />
&lt;property name=&#8221;driverClassName&#8221; value=&#8221;org.hsqldb.jdbcDriver&#8221;/&gt;<br />
&lt;property name=&#8221;url&#8221; value=&#8221;jdbc:hsqldb:mem:tutorialSwf&#8221;/&gt;<br />
&lt;property name=&#8221;username&#8221; value=&#8221;sa&#8221;/&gt;<br />
&lt;property name=&#8221;password&#8221; value=&#8221;"/&gt;<br />
&lt;/bean&gt;</p>
<p>&lt;!&#8211; Activates annotation-based bean configuration &#8211;&gt;<br />
&lt;context:annotation-config/&gt;</p></blockquote>
<p><a href="http://static.springframework.org/spring-webflow/docs/2.0.x/reference/htmlsingle/spring-webflow-reference.html#spring-mvc-config-spring-url-mapping">Mapping URLs to Handlers</a> &#8211;  maps request URLs to handlers. 			A simple way to create URL mapping rules is to define one as follows:</p>
<blockquote><p>&lt;!&#8211; Maps request URIs to controllers &#8211;&gt;<br />
&lt;bean class=&#8221;org.springframework.web.servlet.handler.SimpleUrlHandlerMapping&#8221;&gt;<br />
&lt;property name=&#8221;mappings&#8221;&gt;<br />
&lt;props&gt;<br />
&lt;prop key=&#8221;/f/*&#8221;&gt;flowController&lt;/prop&gt;<br />
&lt;/props&gt;<br />
&lt;/property&gt;<br />
&lt;property name=&#8221;defaultHandler&#8221;&gt;<br />
&lt;!&#8211; Selects view names to render based on the request URI: e.g. /main selects &#8220;main&#8221; &#8211;&gt;<br />
&lt;bean class=&#8221;org.springframework.web.servlet.mvc.UrlFilenameViewController&#8221;/&gt;<br />
&lt;/property&gt;<br />
&lt;/bean&gt;</p></blockquote>
<p>The <a href="http://static.springframework.org/spring-webflow/docs/2.0.x/reference/htmlsingle/spring-webflow-reference.html#spring-mvc-config-flow-handlers">Flow Handler</a> manages executions of a single flow definition. Above the handler selects view based on the URI in a default handler.  To Implement one, extend <code class="code">AbstractFlowHandler.</code></p>
<p><a href="http://static.springframework.org/spring-webflow/docs/2.0.x/reference/htmlsingle/spring-webflow-reference.html#spring-mvc-config-spring-flow-controllers">Flow Controller</a> &#8211; The FlowHandler MVC integration approach, you define one handler per flow. 			This is overkill in the cases where default flow handling rules are sufficient.  Web controller for the Spring web MVC framework that routes incoming requests to one  or more managed web flows. Requests into the web flow system are managed using a  configurable <a title="class in org.springframework.webflow.execution.servlet" href="http://static.springframework.org/spring-webflow/docs/pr5/api/org/springframework/webflow/execution/servlet/ServletFlowExecutionManager.html"><code>ServletFlowExecutionManager</code></a>.</p>
<blockquote><p>&lt;!&#8211; Handles requests mapped to the Spring Web Flow system &#8211;&gt;<br />
&lt;bean id=&#8221;flowController&#8221; class=&#8221;<a href="http://static.springframework.org/spring-webflow/docs/pr5/api/org/springframework/webflow/mvc/FlowController.html">org.springframework.webflow.mvc.servlet.FlowController</a>&#8220;/&gt;</p></blockquote>
<p>The <a href="http://static.springframework.org/spring-webflow/docs/2.0.x/reference/html/ch14s03.html">flow executor</a> is the core Web Flow configuration element. Flow <strong>execution listeners</strong> are also defined in the flow executor.</p>
<blockquote><p>&lt;!&#8211; Executes flows: the central entry point into the Spring Web Flow system &#8211;&gt;<br />
&lt;<strong>webflow:flow-executor</strong> id=&#8221;flowExecutor&#8221;&gt;<br />
&lt;<strong>webflow:flow-execution-listeners</strong>&gt;<br />
&lt;webflow:listener ref=&#8221;jpaFlowExecutionListener&#8221;/&gt;<br />
&lt;/webflow:flow-execution-listeners&gt;<br />
&lt;/webflow:flow-executor&gt;</p></blockquote>
<p><a href="http://static.springframework.org/spring-webflow/docs/2.0.x/reference/html/ch08s03.html#basic-setup-flow-registry">FlowRegistry</a> &#8211; placed where you register your flows</p>
<p><a href="http://static.springframework.org/spring-webflow/docs/2.0.x/reference/html/ch08s04.html">flow-builder-services attribute</a> &#8211; customize the services used to build the flows in a registry&#8230;When the tag is defined, you only need to reference the services you want to customize.</p>
<blockquote><p>&lt;!&#8211; The registry of executable flow definitions &#8211;&gt;<br />
&lt;<strong>webflow:flow-registry</strong> id=&#8221;flowRegistry&#8221; <strong>flow-builder-services</strong>=&#8221;facesFlowBuilderServices&#8221;&gt;<br />
&lt;webflow:flow-location-pattern value=&#8221;/WEB-INF/flows/**/*.xml&#8221;/&gt;<br />
&lt;/webflow:flow-registry&gt;</p></blockquote>
<p><a href="http://static.springframework.org/spring-webflow/docs/2.0.x/reference/html/ch05s03.html">flow scoped persistence context</a> &#8211; provides isolation of intermediate edits by only committing changes to the database at the end of flow execution. This pattern is often used in conjunction with an optimistic locking strategy to protect the integrity of data modified in parallel by multiple users.</p>
<p><em><a class="external text" title="http://static.springframework.org/spring/docs/2.5.x/reference/orm.html#orm-jpa-straight" rel="nofollow" href="http://static.springframework.org/spring/docs/2.5.x/reference/orm.html#orm-jpa-straight">@PersistenceContext</a> &#8211; annotated on EntityManager instances are  not thread safe</em></p>
<blockquote><p>&lt;flow xmlns=&#8221;http://www.springframework.org/schema/webflow&#8221; xmlns:xsi=&#8221;http://www.w3.org/2001/XMLSchema-instance&#8221;<br />
xsi:schemaLocation=&#8221;http://www.springframework.org/schema/webflow http://www.springframework.org/schema/webflow/spring-webflow-2.0.xsd&#8221;&gt;<br />
&lt;persistence-context/&gt;<br />
&#8230;</p></blockquote>
<p>configure the correct <a href="http://static.springframework.org/spring-webflow/docs/2.0.x/javadoc-api/org/springframework/webflow/persistence/JpaFlowExecutionListener.html">FlowExecutionListener</a> in this case for JPA</p>
<blockquote><p>&lt;!&#8211; Installs a listener that manages JPA persistence contexts for flows that require them &#8211;&gt;<br />
&lt;bean id=&#8221;jpaFlowExecutionListener&#8221; class=&#8221;org.springframework.webflow.persistence.JpaFlowExecutionListener&#8221;&gt;<br />
&lt;constructor-arg ref=&#8221;entityManagerFactory&#8221;/&gt;<br />
&lt;constructor-arg ref=&#8221;transactionManager&#8221;/&gt;<br />
&lt;/bean&gt;</p></blockquote>
<blockquote><p>&#8230;</p></blockquote>
<p>Here is how they handle the view:</p>
<blockquote><p>&lt;!&#8211; Maps logical view names to Facelet templates (e.g. &#8217;search&#8217; to &#8216;/WEB-INF/search.xhtml&#8217; &#8211;&gt;<br />
&lt;bean id=&#8221;faceletsViewResolver&#8221; class=&#8221;<a href="http://opensource.objectsbydesign.com/spring-1.1.4/org/springframework/web/servlet/view/package-summary.html">org.springframework.web.servlet.view</a>.UrlBasedViewResolver&#8221;&gt;<br />
&lt;property name=&#8221;viewClass&#8221; value=&#8221;org.springframework.faces.mvc.JsfView&#8221;/&gt;<br />
&lt;property name=&#8221;prefix&#8221; value=&#8221;/WEB-INF/&#8221;/&gt;<br />
&lt;property name=&#8221;suffix&#8221; value=&#8221;.xhtml&#8221;/&gt;<br />
&lt;/bean&gt;</p>
<p>Or a <a href="http://raibledesigns.com/rd/date/20080430">simple ViewResolver</a></p></blockquote>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/technobuzz.wordpress.com/504/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/technobuzz.wordpress.com/504/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/technobuzz.wordpress.com/504/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/technobuzz.wordpress.com/504/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/technobuzz.wordpress.com/504/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/technobuzz.wordpress.com/504/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/technobuzz.wordpress.com/504/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/technobuzz.wordpress.com/504/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/technobuzz.wordpress.com/504/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/technobuzz.wordpress.com/504/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/technobuzz.wordpress.com/504/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/technobuzz.wordpress.com/504/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=504&subd=technobuzz&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://technobuzz.wordpress.com/2008/07/19/spring-web-flow-beginner-part-two/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/04b4144caae1c494d0f63aa7d3d1a7d5?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">davidbloom</media:title>
		</media:content>
	</item>
		<item>
		<title>The IDE Challenge</title>
		<link>http://technobuzz.wordpress.com/2008/07/17/the-ide-challenge/</link>
		<comments>http://technobuzz.wordpress.com/2008/07/17/the-ide-challenge/#comments</comments>
		<pubDate>Thu, 17 Jul 2008 01:32:03 +0000</pubDate>
		<dc:creator>davidbloom</dc:creator>
				<category><![CDATA[SW Tools]]></category>

		<guid isPermaLink="false">http://technobuzz.wordpress.com/?p=502</guid>
		<description><![CDATA[I have been an Eclipse user most of my Java career. Though, I do have limited experience with Visual Age, Forte, JBuilder, and Netbeans.  In the Eclipse space, it has been WSAD, MyEclipse, Eclipse WTP (2.x,3.2, Europa 3.3), and RAD 6/7.
Part of NFJS exposed me to IntelliJ.  Here is one take on this IDE.
  [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=502&subd=technobuzz&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>I have been an Eclipse user most of my Java career. Though, I do have limited experience with Visual Age, Forte, JBuilder, and Netbeans.  In the Eclipse space, it has been WSAD, MyEclipse, Eclipse WTP (2.x,3.2, Europa 3.3), and RAD 6/7.</p>
<p>Part of NFJS exposed me to IntelliJ.  Here is one <a href="http://www.aventinesolutions.nl/mediawiki/index.php/Considering_IntelliJ_for_Eclipse_Users">take on this IDE</a>.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/technobuzz.wordpress.com/502/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/technobuzz.wordpress.com/502/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/technobuzz.wordpress.com/502/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/technobuzz.wordpress.com/502/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/technobuzz.wordpress.com/502/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/technobuzz.wordpress.com/502/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/technobuzz.wordpress.com/502/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/technobuzz.wordpress.com/502/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/technobuzz.wordpress.com/502/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/technobuzz.wordpress.com/502/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/technobuzz.wordpress.com/502/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/technobuzz.wordpress.com/502/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=502&subd=technobuzz&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://technobuzz.wordpress.com/2008/07/17/the-ide-challenge/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/04b4144caae1c494d0f63aa7d3d1a7d5?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">davidbloom</media:title>
		</media:content>
	</item>
		<item>
		<title>The Spring Stack 2008 &#8211; Part1</title>
		<link>http://technobuzz.wordpress.com/2008/07/16/springstack-2008/</link>
		<comments>http://technobuzz.wordpress.com/2008/07/16/springstack-2008/#comments</comments>
		<pubDate>Wed, 16 Jul 2008 02:13:03 +0000</pubDate>
		<dc:creator>davidbloom</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://technobuzz.wordpress.com/?p=498</guid>
		<description><![CDATA[Spring 2.0 introduced support for various annotations for configuration  purposes, such as:

@Transactional &#8211; The @Transactional annotation may be placed  before an interface definition, a method on an interface, a class definition, or  a public method on a class. However, please note that the mere presence of the  @Transactional annotation is not [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=498&subd=technobuzz&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p><a href="http://static.springframework.org/spring/docs/2.0.x/reference/">Spring 2.0</a> introduced support for various annotations for configuration  purposes, such as:</p>
<ul>
<li><a class="external text" title="http://static.springframework.org/spring/docs/2.5.x/reference/transaction.html#transaction-declarative-annotations" rel="nofollow" href="http://static.springframework.org/spring/docs/2.5.x/reference/transaction.html#transaction-declarative-annotations">@Transactional</a> &#8211; The @Transactional annotation may be placed  before an interface definition, a method on an interface, a class definition, or  a public method on a class. However, please note that the mere presence of the  @Transactional annotation is not enough to actually turn on the transactional  behavior.</li>
<li><a class="external text" title="http://static.springframework.org/spring/docs/2.5.x/reference/beans.html#beans-required-annotation" rel="nofollow" href="http://static.springframework.org/spring/docs/2.5.x/reference/beans.html#beans-required-annotation">@Required</a> &#8211; used to mark a property as being  &#8216;required-to-be-set&#8217; (i.e. an annotated (setter) method of a class must be  configured to be dependency injected with a value)</li>
<li><a class="external text" title="http://static.springframework.org/spring/docs/2.5.x/reference/orm.html#orm-jpa-straight" rel="nofollow" href="http://static.springframework.org/spring/docs/2.5.x/reference/orm.html#orm-jpa-straight">@PersistenceContext</a> &#8211; annotated on EntityManager instances are  not thread safe</li>
<li><a class="external text" title="http://static.springframework.org/spring/docs/2.5.x/reference/orm.html#orm-jpa-straight" rel="nofollow" href="http://static.springframework.org/spring/docs/2.5.x/reference/orm.html#orm-jpa-straight">@PersistenceUnit</a> &#8211; annotated on EntityManagerFactory instances  are thread-safe</li>
</ul>
<p>Thus, to use annotations for the transactions for my purposes, I do the following:</p>
<ol>
<li>Put an tag tx:annotation-driven in the config file (i.e  applicationContext.xml)</li>
<li>Put @Transactional annotation in the services class implementation that contains operations on the entity manager</li>
</ol>
<p><a href="http://static.springframework.org/spring/docs/2.5.x/reference/">Spring 2.5</a> introduces support for a complete set of <a class="external text" title="http://static.springframework.org/spring/docs/2.5.x/reference/beans.html#beans-annotation-config" rel="nofollow" href="http://static.springframework.org/spring/docs/2.5.x/reference/beans.html#beans-annotation-config">configuration annotations</a>:</p>
<ul>
<li>@Autowired in combination with support for the JSR-250 annotations @Resource</li>
<li>@PostConstruct</li>
<li>@PreDestroy</li>
</ul>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/technobuzz.wordpress.com/498/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/technobuzz.wordpress.com/498/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/technobuzz.wordpress.com/498/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/technobuzz.wordpress.com/498/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/technobuzz.wordpress.com/498/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/technobuzz.wordpress.com/498/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/technobuzz.wordpress.com/498/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/technobuzz.wordpress.com/498/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/technobuzz.wordpress.com/498/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/technobuzz.wordpress.com/498/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/technobuzz.wordpress.com/498/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/technobuzz.wordpress.com/498/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=498&subd=technobuzz&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://technobuzz.wordpress.com/2008/07/16/springstack-2008/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/04b4144caae1c494d0f63aa7d3d1a7d5?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">davidbloom</media:title>
		</media:content>
	</item>
		<item>
		<title>Spring Web Flow Beginner</title>
		<link>http://technobuzz.wordpress.com/2008/07/13/spring-web-flow-beginner/</link>
		<comments>http://technobuzz.wordpress.com/2008/07/13/spring-web-flow-beginner/#comments</comments>
		<pubDate>Sun, 13 Jul 2008 17:37:17 +0000</pubDate>
		<dc:creator>davidbloom</dc:creator>
				<category><![CDATA[J2EE]]></category>

		<guid isPermaLink="false">http://technobuzz.wordpress.com/?p=496</guid>
		<description><![CDATA[As part my learnings of what is new with the Spring Framework,  I found a nice Spring Flow 2.0 Example (with JSF  and JPA).
The Spring Web Flow 2.0.2  release ( by Erwin Vervaet and  Keith Donald ) comes as a separate download from the basic Spring functionality in 2.5.5.
On the Spring [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=496&subd=technobuzz&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>As <a href="http://www.springindepth.com/">part my learnings</a> of <a href="http://michael-peeters.blogspot.com/2008/06/springone-2008-spring-25-on-way-to-30.html">what is new with the Spring Framework</a>,  I found a nice <a href="http://java.dzone.com/articles/spring-web-flow-crud-tutorial">Spring Flow 2.0 Example (with JSF  and JPA)</a>.</p>
<p>The <a href="http://www.springframework.org/webflow">Spring Web Flow</a> 2.0.2  <a href="http://www.springframework.org/go-webflow2">release</a> ( by <a href="http://spring.ervacon.com/">Erwin Vervaet</a> and  <a href="http://www.bestechvideos.com/2008/07/05/spring-web-flow-with-keith-donald">Keith Donald</a> ) comes as a separate <a href="http://www.springframework.org/download">download</a> from the basic Spring functionality in 2.5.5.</p>
<p>On the Spring Web Flow (SWF) <a href="http://www.jsfone.com/blog/keith_donald/2007/11/the_spring_web_flow_2_0_vision.html">vision from 1.x to 2.x</a> :</p>
<p>&#8220;[in 1.0] the SWF controller engine cared for one half of the web request lifecycle; the half related to request processing, often called the <em>action phase</em>.  The other half, the <em>render phase</em>, was pushed off on the caller: either Spring MVC, Struts, or JSF front controllers<br />
&#8230;..<br />
The downside of this approach is it makes it difficult to apply application control logic during the view rendering phase<br />
&#8230;..<br />
Beginning with Web Flow 2.0 M2, the entire web request lifecycle is now under the control of Spring Web Flow, including the view rendering phase.<br />
&#8230;.<br />
the ability for the SWF engine to communicate with external systems and conversational contexts over HTTP (embedding the proper flow execution callback URL in the redirect that is sent to the external system)&#8221;</p>
<p><a href="http://static.springframework.org/spring-webflow/docs/2.0.x/javadoc-api/index.html">Reference Guide 2.x</a></p>
<p>Also, note that getting these Spring Flow 2.x reference <a href="http://www.springframework.org/webflow-samples">sample projects</a> are easy to get a hold of. In the download of Web Flow is a projects/build-spring-webflow directory where you can run ant. It will build Web Flow along with the .war files for the sample projects (ant 1.7 and Java 5 are required to build).</p>
<p>There is a <a href="http://struts-2.blogspot.com/2007/10/struts2-plugin.html">Struts2  plugin</a> for Spring Web Flow called  <a href="http://code.google.com/p/struts2webflow/">struts2webflow</a></p>
<p>As far as further examples than the ones above, I found some web flow 2.x examples at this site   <a href="http://www.springbyexample.org/twiki/bin/view/Main/ExamplesHome">spring by example</a>.</p>
<p>Spring flow 1.0 showed that it could  easily <a href="http://cse-mjmcl.cse.bris.ac.uk/blog/2006/03/02/1141291787526.html">integrate with struts</a>. These  <a href="http://spring.ervacon.com/">sample (1.x) </a>applications <a href="http://www.javapassion.com/handsonlabs/springwebflow/">can also be found</a> on Java Passion Site. A good 1.x reference is the  <a href="http://www.ervacon.com/products/swf/intro/index.html">Practical ntroduction</a> . All the samples projects are <a href="http://forum.springframework.org/showthread.php?t=36039">Spring IDE</a> projects that importable into Eclipse (see <a href="http://springide.org/blog/2008/06/24/spring-ide-206-available/">springide</a> or <a href="http://www.eclipseplugincentral.com/Web_Links-index-req-viewlink-cid-432.html">plugin central</a> for spring ide).</p>
<p>Here in the 1.x struts example:</p>
<p>Our first action in the jsp is as follows:</p>
<p>&lt;A href=&#8221;flowAction.do?_flowId=birthdate&#8221;&gt;Birth Date&lt;/A&gt;</p>
<p>This action in the struts config says:</p>
<p>&lt;action path=&#8221;/flowAction&#8221; name=&#8221;actionForm&#8221; scope=&#8221;request&#8221; type=&#8221;org.springframework.webflow.executor.struts.FlowAction&#8221;/&gt;</p>
<p>We also bind to the Action Form:</p>
<p><em>&lt;form-bean name=&#8221;actionForm&#8221; type=&#8221;org.springframework.web.struts.SpringBindingActionForm&#8221;/&gt;</em></p>
<p>In the webflow-config.xml we define the flow registry:<br />
&lt;flow:executor id=&#8221;flowExecutor&#8221; registry-ref=&#8221;flowRegistry&#8221;/&gt;<br />
&lt;!&#8211; Creates the registry of flow definitions for this application &#8211;&gt;<br />
&lt;flow:registry id=&#8221;flowRegistry&#8221;&gt;<br />
&lt;flow:location path=&#8221;/WEB-INF/birthdate.xml&#8221;/&gt;<br />
&lt;flow:location path=&#8221;/WEB-INF/birthdate-alternate.xml&#8221;/&gt;<br />
&lt;/flow:registry&gt;</p>
<p><strong>Start State</strong> : the first state in the flow</p>
<p><em>&lt;start-state idref=&#8221;enterBirthdate&#8221; /&gt;</em></p>
<p><strong>View State</strong>: selects a view to render</p>
<p><em>&lt;view-state id=&#8221;enterBirthdate&#8221; view=&#8221;birthdateForm&#8221;&gt;</em></p>
<p>When the execution of the flow starts, enter the enterBirthdate state. Then select the birthdateForm view for display to the user, and pause the flow of execution until a user event happens.</p>
<p><strong>Render Action</strong>: initializes the form object.</p>
<p><em>&lt;render-actions&gt;<br />
&lt;action bean=&#8221;formAction&#8221; method=&#8221;setupForm&#8221; /&gt;<br />
&lt;/render-actions&gt;</em></p>
<p>For view state, above Initializes the backing &#8220;form object&#8221; by invoking the setupForm method for formAction.</p>
<p>Note that the action was defined in the webflow-config.xml (instance of  <a href="http://www.springframework.org/schema/webflow-config/spring-webflow-config-1.0.xsd">spring-webflow-config-1.0.xsd</a>)</p>
<p><em>&lt;bean id=&#8221;formAction&#8221; class=&#8221;org.springframework.webflow.samples.birthdate.BirthDateFormAction&#8221; /&gt;</em></p>
<p><strong>Transition</strong>: Each View state must define a transition that leads to another state</p>
<p><em>&lt;transition on=&#8221;submit&#8221; to=&#8221;processBirthdateFormSubmit&#8221; /&gt;</em></p>
<p><strong>Action state</strong>: logic that needs to be executed in context of the request, once executed the result flow is returned which the flow may respond to.</p>
<p><em>&lt;action-state id=&#8221;processBirthdateFormSubmit&#8221;&gt;<br />
&lt;action bean=&#8221;formAction&#8221; method=&#8221;bindAndValidate&#8221;&gt;<br />
&lt;attribute name=&#8221;validatorMethod&#8221; value=&#8221;validateBirthdateForm&#8221; /&gt;<br />
&lt;/action&gt;</em></p>
<p><em> transition on=&#8221;success&#8221; to=&#8221;enterCardInformation&#8221; /&gt;<br />
&lt;transition on=&#8221;error&#8221; to=&#8221;enterBirthdate&#8221; /&gt;</em></p>
<p><em> &lt;/action-state&gt;</em></p>
<p>Related Links for Basic info on JSF:</p>
<ul>
<li><a href="http://www.oracle.com/technology/products/jdev/collateral/4gl/papers/JSF_For_4gl.pdf">Introducing Java Server Faces (JSF) to 4GL Developers</a></li>
<li>JSRs: 127, 252 (1.2)</li>
<li><a href="http://www.groundside.com/tech/docs/drmills_jsf.pdf">An Introduction to JSF</a></li>
<li><a href="http://www.javapassion.com/j2ee/#JavaServer_Faces_JSF">JSF Hello World</a></li>
</ul>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/technobuzz.wordpress.com/496/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/technobuzz.wordpress.com/496/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/technobuzz.wordpress.com/496/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/technobuzz.wordpress.com/496/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/technobuzz.wordpress.com/496/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/technobuzz.wordpress.com/496/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/technobuzz.wordpress.com/496/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/technobuzz.wordpress.com/496/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/technobuzz.wordpress.com/496/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/technobuzz.wordpress.com/496/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/technobuzz.wordpress.com/496/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/technobuzz.wordpress.com/496/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=496&subd=technobuzz&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://technobuzz.wordpress.com/2008/07/13/spring-web-flow-beginner/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/04b4144caae1c494d0f63aa7d3d1a7d5?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">davidbloom</media:title>
		</media:content>
	</item>
		<item>
		<title>Derby Again</title>
		<link>http://technobuzz.wordpress.com/2008/07/05/derby-again/</link>
		<comments>http://technobuzz.wordpress.com/2008/07/05/derby-again/#comments</comments>
		<pubDate>Sat, 05 Jul 2008 18:37:42 +0000</pubDate>
		<dc:creator>davidbloom</dc:creator>
				<category><![CDATA[SW Tools]]></category>

		<guid isPermaLink="false">http://technobuzz.wordpress.com/?p=494</guid>
		<description><![CDATA[I have used derby a while back.  Several years later, I wanted to get it installed again on my machine.
In short, Derby is the Java Database that IBM contributed to the open source community. It was known then as cloudscape.
I start off by getting the bin download from the derby database
create DERBY_HOME environment variable [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=494&subd=technobuzz&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>I have used derby <a href="http://technobuzz.wordpress.com/2005/12/23/apache-derby/">a while back</a>.  Several years later, I wanted to get it installed again on my machine.</p>
<p>In short, Derby is the Java Database that IBM contributed to the open source community. It was known then as cloudscape.</p>
<p>I start off by getting the bin download from the derby database</p>
<p>create DERBY_HOME environment variable : C:\JAVA\derby10\db-derby-10.2.2.0-bin\<br />
Make sure I have my JAVA_HOME environment variable properly set<br />
add to the PATH: C:\JAVA\derby10\db-derby-10.2.2.0-bin\bin\</p>
<p>from the command line:</p>
<p>&gt;sysinfo</p>
<p>&gt;ij</p>
<p>ij is the derby sql client command line</p>
<p>ij&gt;connect &#8216;jdbc:derby://localhost:1527/mydb;<br />
create=true;traceFile=trace.out;user=user1;password=secret4me&#8217;;</p>
<p>C:\JAVA\derby10\db-derby-10.2.2.0-bin\bin&gt;</p>
<p>setNetworkClientCP.bat</p>
<p>C:\JAVA\derby10\db-derby-10.2.2.0-bin\demo\programs\simple&gt;set CLASSPATH=.;%DERB<br />
Y_HOME%\lib\derby.jar;%DERBY_HOME%\lib\derbynet.jar;%DERBY_HOME%\lib\derbyclient<br />
.jar;%DERBY_INSTALL%\lib\derbytools.jar</p>
<p>C:\JAVA\derby10\db-derby-10.2.2.0-bin\frameworks&gt;startNetworkserver.bat</p>
<p>C:\JAVA\derby10\db-derby-10.2.2.0-bin\demo\programs\simple&gt;java org.apache.derby<br />
.tools.sysinfo -cp embedded SimpleApp.class<br />
FOUND IN CLASS PATH:</p>
<p>Derby embedded engine library (derby.jar)<br />
C:\JAVA\derby10\db-derby-10.2.2.0-bin\lib\derby.jar</p>
<p>user-specified class (SimpleApp)<br />
C:\JAVA\derby10\db-derby-10.2.2.0-bin\demo\programs\simple</p>
<p>SUCCESS: All Derby related classes found in class path.</p>
<p><a href="http://www14.software.ibm.com/webapp/download/preconfig.jsp?id=2004-08-03+09%3A06%3A46.295593R&amp;cat=database&amp;fam=&amp;s=c&amp;%20S_TACT=104CBW71&amp;S_CMP=&amp;st=9&amp;sp=20">get ibm jars for derby</a><br />
C:\JAVA\derby10\db-derby-10.2.2.0-bin\demo\programs\simple&gt;set CLASSPATH=.;%DERB<br />
Y_HOME%\lib\db2jcc.jar;%DERBY_HOME%\lib\db2jcc_license_c.jar</p>
<p>C:\JAVA\derby10\db-derby-10.2.2.0-bin\frameworks&gt;startNetworkserver.bat<br />
C:\JAVA\derby10\db-derby-10.2.2.0-bin\demo\programs\simple&gt;java SimpleApp jccjdb<br />
cclient<br />
SimpleApp starting in jccjdbc mode.<br />
Loaded the appropriate driver.<br />
Connected to and created database derbyDB<br />
Created table derbyDB<br />
Inserted 1956 Webster<br />
Inserted 1910 Union<br />
Updated 1956 Webster to 180 Grand<br />
Updated 180 Grand to 300 Lakeshore<br />
Verified the rows<br />
Dropped table derbyDB<br />
Closed result set and statement<br />
Committed transaction and closed connection<br />
SimpleApp finished</p>
<p>/* the default framework is embedded*/<br />
public String framework = &#8220;embedded&#8221;;<br />
public String driver = &#8220;org.apache.derby.jdbc.EmbeddedDriver&#8221;;<br />
public String protocol = &#8220;jdbc:derby:&#8221;;</p>
<p>public static void main(String[] args)<br />
{<br />
new SimpleApp().go(args);<br />
}</p>
<p>void go(String[] args)<br />
{<br />
/* parse the arguments to determine which framework is desired*/<br />
parseArguments(args);</p>
<p>System.out.println(&#8221;SimpleApp starting in &#8221; + framework + &#8221; mode.&#8221;);</p>
<p>try<br />
{<br />
/*<br />
The driver is installed by loading its class.<br />
In an embedded environment, this will start up Derby, since it is not already running.<br />
*/<br />
Class.forName(driver).newInstance();<br />
System.out.println(&#8221;Loaded the appropriate driver.&#8221;);</p>
<p>Connection conn = null;<br />
Properties props = new Properties();<br />
props.put(&#8221;user&#8221;, &#8220;user1&#8243;);<br />
props.put(&#8221;password&#8221;, &#8220;user1&#8243;);</p>
<p>/*<br />
The connection specifies create=true to cause<br />
the database to be created. To remove the database,<br />
remove the directory derbyDB and its contents.<br />
The directory derbyDB will be created under<br />
the directory that the system property<br />
derby.system.home points to, or the current<br />
directory if derby.system.home is not set.<br />
*/<br />
conn = DriverManager.getConnection(protocol +<br />
&#8220;derbyDB;create=true&#8221;, props);</p>
<p>System.out.println(&#8221;Connected to and created database derbyDB&#8221;);</p>
<p>conn.setAutoCommit(false);</p>
<p>/*<br />
Creating a statement lets us issue commands against<br />
the connection.<br />
*/<br />
Statement s = conn.createStatement();</p>
<p>/*<br />
We create a table, add a few rows, and update one.<br />
*/</p>
<p>private void parseArguments(String[] args)<br />
{<br />
int length = args.length;</p>
<p>for (int index = 0; index &lt; length; index++)<br />
{<br />
if (args[index].equalsIgnoreCase(&#8221;jccjdbcclient&#8221;))<br />
{<br />
framework = &#8220;jccjdbc&#8221;;<br />
driver = &#8220;com.ibm.db2.jcc.DB2Driver&#8221;;<br />
protocol = &#8220;jdbc:derby:net://localhost:1527/&#8221;;<br />
}<br />
if (args[index].equalsIgnoreCase(&#8221;derbyclient&#8221;))<br />
{<br />
framework = &#8220;derbyclient&#8221;;<br />
driver = &#8220;org.apache.derby.jdbc.ClientDriver&#8221;;<br />
protocol = &#8220;jdbc:derby://localhost:1527/&#8221;;<br />
}<br />
}<br />
}</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/technobuzz.wordpress.com/494/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/technobuzz.wordpress.com/494/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/technobuzz.wordpress.com/494/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/technobuzz.wordpress.com/494/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/technobuzz.wordpress.com/494/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/technobuzz.wordpress.com/494/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/technobuzz.wordpress.com/494/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/technobuzz.wordpress.com/494/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/technobuzz.wordpress.com/494/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/technobuzz.wordpress.com/494/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/technobuzz.wordpress.com/494/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/technobuzz.wordpress.com/494/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=494&subd=technobuzz&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://technobuzz.wordpress.com/2008/07/05/derby-again/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/04b4144caae1c494d0f63aa7d3d1a7d5?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">davidbloom</media:title>
		</media:content>
	</item>
		<item>
		<title>NFJS In Links</title>
		<link>http://technobuzz.wordpress.com/2008/06/23/nfjs-in-links/</link>
		<comments>http://technobuzz.wordpress.com/2008/06/23/nfjs-in-links/#comments</comments>
		<pubDate>Mon, 23 Jun 2008 01:39:19 +0000</pubDate>
		<dc:creator>davidbloom</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://technobuzz.wordpress.com/?p=492</guid>
		<description><![CDATA[The Pragmatic Programmer
The Mythical Man Month
AntiPatternsCatalog
Eclipse Dali
The Vietnam Of Computer Science
Jacobsen : Use Cases and Aspects
GWT
coolandusefulgwt
GWT Designer
Clay Shirky : &#8220;Its Turtles All the Way Up&#8220;
Ted Neward on Rest vs Soap
Purl.org
REST: Get, Post, Put, Delete
Roy Fielding : Architectural Styles &#38; the Design of Network-based Software Architectures
Spring 2.5 : SpringSource
Bob Mcwhirter : the founder of drools (jboss [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=492&subd=technobuzz&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p><a href="http://www.informit.com/store/product.aspx?isbn=020161622X">The Pragmatic Programmer</a></p>
<p><a href="http://en.wikipedia.org/wiki/The_Mythical_Man-Month">The Mythical Man Month</a></p>
<p><a href="http://c2.com/cgi/wiki?AntiPatternsCatalog">AntiPatternsCatalog</a></p>
<p><a href="http://technology.amis.nl/blog/?p=1050">Eclipse Dali</a></p>
<p><a href="http://blogs.tedneward.com/2006/06/26/The+Vietnam+Of+Computer+Science.aspx">The Vietnam Of Computer Science</a></p>
<p><a href="http://www.jot.fm/issues/issue_2003_07/column1.pdf">Jacobsen : Use Cases and Aspects</a></p>
<p><a href="http://code.google.com/webtoolkit/">GWT</a></p>
<p><a href="http://coolandusefulgwt.com/">coolandusefulgwt</a></p>
<p><a href="http://www.instantiations.com/gwtdesigner/">GWT Designer</a></p>
<p><a href="http://webservices.xml.com/pub/a/ws/2001/10/03/webservices.html?page=2#wsdluddi">Clay Shirky</a> : &#8220;<a href="http://www.ddj.com/web-development/184415838;jsessionid=3LJCJP5SXPCJIQSNDLPSKH0CJUNN2JVN">Its Turtles All the Way Up</a>&#8220;</p>
<p>Ted Neward on <a href="http://tssblog.blogs.techtarget.com/2007/06/12/neward-and-trenaman-consider-rest-or-the-great-and-complete-soap-vs-pox-debate/">Rest vs Soap</a></p>
<p><a href="http://purl.org/">Purl.org</a></p>
<p><a href="http://www.25hoursaday.com/weblog/CommentView.aspx?guid=7a2f3df2-83f7-471b-bbe6-2d8462060263">REST</a>: Get, Post, Put, Delete</p>
<p><a href="http://en.wikipedia.org/wiki/Roy_Fielding">Roy Fielding</a> : <a href="http://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm">Architectural Styles &amp; the Design of Network-based Software Architectures</a></p>
<p><a href="http://www.infoq.com/articles/spring-2.5-part-1">Spring 2.5</a> : <a href="http://static.springframework.org/spring/docs/2.5.x/reference/">SpringSource</a></p>
<p><a href="http://www.jboss.com/pdf/press/mcwhirter.pdf">Bob Mcwhirter</a> : the <a href="http://en.wikipedia.org/wiki/Drools">founder</a> of <a href="http://blog.athico.com/">drools</a> (<a href="http://www.jboss.org/drools/">jboss rules</a>) and <a href="http://confluence.atlassian.com/display/NEWS/Interview+-+Bob+McWhirter+of+the+Codehaus">codehaus</a></p>
<p><a href="http://herzberg.ca.sandia.gov/">Jess</a> is another rules platform</p>
<p><a href="http://www.philosophicalgeek.com/2008/01/20/5-attributes-of-highly-effective-programmers/">Habits of Effective Programmers</a></p>
<p><a href="http://arneyconsulting.blogspot.com/2005/06/top-programmers-are-10000xs-more.html">Darshan Arney</a> takes on:  &#8216; The Top software developers are more productive than average software developers not by a factor of 10x or 100x or even 1000x but by 10,000x.’</p>
<p><a href="http://del.icio.us/kensipe/7habits">Ken Sipe 7 habits</a></p>
<p><a href="http://en.wikipedia.org/wiki/Fixing_Broken_Windows">Broken Windows Theory</a></p>
<p>Book &#8211; <a href="http://www.amazon.com/Topgrading-Leading-Companies-Coaching-Keeping/dp/0735200491">TopGrading</a></p>
<p><a href="http://www.firstmonday.org/issues/issue3_3/raymond/">Raymond</a> : <a href="http://en.wikipedia.org/wiki/The_Cathedral_and_the_Bazaar">The Cathedral and the Bazaar</a></p>
<p><a href="http://www.utexas.edu/faculty/council/2002-2003/memorials/Dijkstra/dijkstra.html">Dijkstra</a>: Computer Science is no more about computers than astronomy is about telescopes.</p>
<p><a href="http://www.fastcompany.com/node/28121/print">Writing the Right Stuff</a></p>
<p><a href="http://www.google.com/url?sa=t&amp;ct=res&amp;cd=2&amp;url=http%3A%2F%2Fwww.sbaer.uca.edu%2FResearch%2Fsbida%2F1988%2FPDF%2F50.pdf&amp;ei=g9lmSOqdEpSW9gSs5uVw&amp;usg=AFQjCNEWa2ZK6LxM8tcFn_KS90ktu6qAuQ&amp;sig2=dK5DgET7J0CuQFlLYTkMKw">The Corridor Principle</a></p>
<p><a href="http://agilemanifesto.org/">AgileManifesto</a></p>
<p><a href="http://www.csszengarden.com/">csszengarden</a></p>
<p><a href="http://groovy.codehaus.org/">Groovy</a></p>
<p><a href="http://grails.org/">grails.org</a></p>
<p><a href="http://jan-so.blogspot.com/2008/06/book-review-groovy-recipes.html">Groovy Recipes</a></p>
<p><a href="http://kensipe.blogspot.com/">Ken Sipe</a> &#8211; <a href="http://www.perficient.com/">Perficient</a></p>
<p><a href="http://memeagora.blogspot.com/">Neal Ford</a> &#8211; Thoughtworks</p>
<p><a href="http://www.briangoetz.com/blog">Brian Goetz</a> &#8211; Sun</p>
<p><a href="http://coolandusefulgwt.com/">David Geary</a></p>
<p><a href="http://www.blogger.com/profile/17681244180913205451">Brian Sletten </a>- <a href="http://zepheira.com/">zepheira.com</a></p>
<p><a href="http://www.integrallis.com/ourblogs/">Brian Sam-Bodden</a> -   <a href="http://www.integrallis.com">Integrallis</a></p>
<p><a href="http://jasonrudolph.com/blog/">Jason Rudolph</a> &#8211; <a href="http://thinkrelevance.com/about">Relevance</a></p>
<p><a href="http://www.agiledeveloper.com/blog/">Venkat Subramaniam</a> &#8211; <a href="http://thinkrelevance.com/about">Relevance</a></p>
<p><a href="http://www.davebock.com/">David Bock</a> -  <a href="http://www.jroller.com/bokmann/">Java Guy</a></p>
<p><a href="http://javajeff.blogspot.com/">Jeff Brown</a> &#8211; <a href="http://www.g2one.com/">G2one</a></p>
<p><a href="http://www.davisworld.org/">Scott Davis</a> &#8211; <a href="http://aboutgroovy.com/">aboutgroovy.com</a></p>
<p><a href="http://agileartisans.com/main">Jared Richardson</a></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/technobuzz.wordpress.com/492/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/technobuzz.wordpress.com/492/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/technobuzz.wordpress.com/492/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/technobuzz.wordpress.com/492/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/technobuzz.wordpress.com/492/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/technobuzz.wordpress.com/492/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/technobuzz.wordpress.com/492/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/technobuzz.wordpress.com/492/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/technobuzz.wordpress.com/492/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/technobuzz.wordpress.com/492/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/technobuzz.wordpress.com/492/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/technobuzz.wordpress.com/492/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=492&subd=technobuzz&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://technobuzz.wordpress.com/2008/06/23/nfjs-in-links/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/04b4144caae1c494d0f63aa7d3d1a7d5?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">davidbloom</media:title>
		</media:content>
	</item>
		<item>
		<title>Fluffage</title>
		<link>http://technobuzz.wordpress.com/2008/06/20/fluffage/</link>
		<comments>http://technobuzz.wordpress.com/2008/06/20/fluffage/#comments</comments>
		<pubDate>Fri, 20 Jun 2008 00:39:41 +0000</pubDate>
		<dc:creator>davidbloom</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://technobuzz.wordpress.com/?p=491</guid>
		<description><![CDATA[Starting at about  12:00 tommorow I&#8217;ll be arriving at NoFluffJustStuff conference &#8211; also known as the Research Triangle Software Symposium. This is put on by Jay Zimmerman and his cast of notable experts from the software industry.
There are a lot of good choices on the menu.
       <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=491&subd=technobuzz&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Starting at about  <a href="http://www.nofluffjuststuff.com/conference/raleigh/2008/06/schedule.html">12:00</a> tommorow I&#8217;ll be arriving at <a href="http://www.nofluffjuststuff.com/conference/raleigh/2008/06/index.html">NoFluffJustStuff</a> conference &#8211; also known as the Research Triangle Software Symposium. This is put on by Jay Zimmerman and his cast of <a href="http://www.nofluffjuststuff.com/show_speakers.jsp?showId=130">notable experts</a> from the software industry.</p>
<p>There are a lot of good choices on the menu.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/technobuzz.wordpress.com/491/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/technobuzz.wordpress.com/491/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/technobuzz.wordpress.com/491/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/technobuzz.wordpress.com/491/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/technobuzz.wordpress.com/491/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/technobuzz.wordpress.com/491/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/technobuzz.wordpress.com/491/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/technobuzz.wordpress.com/491/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/technobuzz.wordpress.com/491/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/technobuzz.wordpress.com/491/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/technobuzz.wordpress.com/491/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/technobuzz.wordpress.com/491/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=491&subd=technobuzz&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://technobuzz.wordpress.com/2008/06/20/fluffage/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/04b4144caae1c494d0f63aa7d3d1a7d5?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">davidbloom</media:title>
		</media:content>
	</item>
		<item>
		<title>JPA Examples</title>
		<link>http://technobuzz.wordpress.com/2008/05/11/jpa-examples/</link>
		<comments>http://technobuzz.wordpress.com/2008/05/11/jpa-examples/#comments</comments>
		<pubDate>Sun, 11 May 2008 01:37:48 +0000</pubDate>
		<dc:creator>davidbloom</dc:creator>
				<category><![CDATA[Hibernate & ORM]]></category>
		<category><![CDATA[J2EE]]></category>

		<guid isPermaLink="false">http://technobuzz.wordpress.com/?p=490</guid>
		<description><![CDATA[jpa spec jsr 317
open jpa manual
In an applicationserver, EntityManager instances are typically injected, rendering the EntityManagerFactory unnecessary.
javax.persistence:

Persistence : contains static helper methods to obtain EntityManagerFactory
instances in a vendor-neutral fashion.
EntityManagerFactory: is a factory for Entity-Manager
EntityManager: is the primary JPA interface used by applications.Each EntityManager manages a set of persistent objects, and has APIs to insert new [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=490&subd=technobuzz&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>jpa spec <a href="http://jcp.org/en/jsr/detail?id=317">jsr 317</a></p>
<p>open jpa <a href="http://openjpa.apache.org/docs/latest/manual/manual.pdf">manual</a></p>
<p>In an applicationserver, EntityManager instances are typically injected, rendering the EntityManagerFactory unnecessary.</p>
<p>javax.persistence:</p>
<ul>
<li><strong>Persistence</strong> : contains static helper methods to obtain EntityManagerFactory<br />
instances in a vendor-neutral fashion.</li>
<li><strong>EntityManagerFactory</strong>: is a factory for Entity-Manager</li>
<li><strong>EntityManager</strong>: is the primary JPA interface used by applications.Each EntityManager manages a set of persistent objects, and has APIs to insert new objects and delete existing ones. EntityManagers also act as factories for Query instances.</li>
<li><strong>Entity</strong>: persistent objects that represent datastore records.</li>
<li><strong>Query</strong>: Query interface is implemented by each JPA vendor to find persistent objects that<br />
meet certain criteria. JPA standardizes support for queries using both the Java Persistence Query Language (JPQL) and the Structured Query Language (SQL). You obtain Query instances from an EntityManager.</li>
</ul>
<p>JPA uses a version field in your entities to detect concurrent modifications to the same datastore record. When the JPA runtime detects an attempt to concurrently modify the same record, it throws an exception to the transaction attempting to commit last. This prevents overwriting the previous commit with stale data.</p>
<p><strong>private int version;</strong></p>
<p>JPA introduces another form of object identity, called entity identity or persistent identity. Entity identity tests whether two persistent objects represent the same state in the datastore.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/technobuzz.wordpress.com/490/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/technobuzz.wordpress.com/490/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/technobuzz.wordpress.com/490/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/technobuzz.wordpress.com/490/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/technobuzz.wordpress.com/490/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/technobuzz.wordpress.com/490/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/technobuzz.wordpress.com/490/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/technobuzz.wordpress.com/490/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/technobuzz.wordpress.com/490/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/technobuzz.wordpress.com/490/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/technobuzz.wordpress.com/490/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/technobuzz.wordpress.com/490/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=490&subd=technobuzz&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://technobuzz.wordpress.com/2008/05/11/jpa-examples/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/04b4144caae1c494d0f63aa7d3d1a7d5?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">davidbloom</media:title>
		</media:content>
	</item>
		<item>
		<title>roller 4 + planet</title>
		<link>http://technobuzz.wordpress.com/2008/01/06/roller-4-planet/</link>
		<comments>http://technobuzz.wordpress.com/2008/01/06/roller-4-planet/#comments</comments>
		<pubDate>Sun, 06 Jan 2008 17:48:32 +0000</pubDate>
		<dc:creator>davidbloom</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://technobuzz.wordpress.com/2008/01/06/roller-4-planet/</guid>
		<description><![CDATA[In this post I will cover getting started with the  Roller4.0 blogging software including setting up the planet (aggregation server). 
Anyway, I am using the mysql database (5.0.41 community edition) with roller 4
(best available) which i placed in Tomcat&#8217;s webapps directory naming the folder roller4_0  .
I am using tomcat 5.5 with java5.
Setup: Tomcat&#8217;s [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=489&subd=technobuzz&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>In this post I will cover getting started with the  <a href="http://roller.apache.org/" class="external">Roller</a>4.0 blogging software including setting up the planet (aggregation server). <a href="http://technobuzz.wordpress.com/2007/11/18/"></a></p>
<p>Anyway, I am using the mysql database (5.0.41 community edition) with roller 4<br />
(<a href="http://roller.apache.org/download.cgi">best available</a>) which i placed in Tomcat&#8217;s webapps directory naming the folder roller4_0  .</p>
<p>I am using tomcat 5.5 with java5.</p>
<p><b>Setup</b>: Tomcat&#8217;s common/classes folder have placed file roller-custom.properties:<br />
installation.type=auto<br />
database.configurationType=jdbc<br />
database.jdbc.driverClass=com.mysql.jdbc.Driver<br />
database.jdbc.connectionURL=jdbc:mysql://localhost:3306/rollerdb<br />
database.jdbc.username=root<br />
database.jdbc.password=admin<br />
mail.configurationType=properties<br />
mail.hostname=smtp-server.nc.rr.com<br />
mail.username=x<br />
mail.password=x</p>
<p><b>Important: </b>You need to put the mysql driver, and two other jars into Tomcats&#8217;s common/lib directory:</p>
<ul>
<li>mysql-connector-java-3.1.13-bin</li>
<li>activation (obtained from my java 5 lib folder)</li>
<li>mail (obtained from my java 5 lib folder)</li>
</ul>
<p class="ArwC7c ckChnd">&nbsp;</p>
<p>After starting Tomcat, I go to the main screen via url  <a href="http://localhost:8080/roller4_0/index.jsp">http://localhost:8080/roller4_0/index.jsp</a></p>
<p>which says I have a successful connection but have no tables . So I click the button to create the tables.</p>
<p><img src="http://technobuzz.files.wordpress.com/2007/11/image01.jpg?w=440" alt="image01.jpg" width="440" /></p>
<p>Then, I get the page to create users and the blog.<br />
<img src="http://technobuzz.files.wordpress.com/2007/11/image002.jpg?w=440" alt="image002.jpg" width="440" /></p>
<p>Yes, you need a planet-custom properties (roller-custom.properties in common/classes) file&#8230;</p>
<p>I set up a blog which i called planet which I give a theme of<br />
roller front page&#8230;</p>
<p>My weblog template now has<br />
## 1) SITE-WIDE entries (the default)<br />
##set($pager = $site.getWeblogEntriesPager($since, $maxResults))</p>
<div class="ArwC7c ckChnd">## 2) PLANET-entries<br />
#set($pager = $planet.getAggregationPager($since, $maxResults))<br />
## The below pager code should work against either</div>
<div class="ArwC7c ckChnd"></div>
<div class="ArwC7c ckChnd"></div>
<div class="ArwC7c ckChnd"></div>
<div class="ArwC7c ckChnd"></div>
<div class="ArwC7c ckChnd"></div>
<div class="ArwC7c ckChnd"></div>
<div class="ArwC7c ckChnd"></div>
<div class="ArwC7c ckChnd">the planet blog _must_ be the frontpage blog (this is not optional as<br />
I thought).enable &#8220;Enable aggregated site-wide frontpage&#8221; (this is on by default)</div>
<div class="ArwC7c ckChnd"></div>
<div class="ArwC7c ckChnd"><i>&#8220;That&#8217;s true because the Installation Guide tells you to put the<br />
PlanetModel in the &#8216;rendering.siteModels&#8217; list.</i><i>If you want Planet aggregations to be available to all blogs you can<br />
put the model in the &#8216;rendering.pageModels&#8217; list.</i></div>
<div class="ArwC7c ckChnd"><i>Or, if you are an admin user the you can add the PlanetModel to<br />
individual blogs via the blog&#8217;s Preferences-&gt;Settings page.&#8221;</i></div>
<div class="ArwC7c ckChnd"></div>
<div class="ArwC7c ckChnd">
<div class="ArwC7c ckChnd">3- in roller-custom.properties<br />
planet.aggregator.enabled=true<br />
<b>cache.dir</b>= /mycache/planetcache<br />
planet.aggregator.guice.module=\<br />
org.apache.roller.weblogger.planet.business.jpa.RollerPlanetModule<br />
# Tasks which are enabled. Only tasks listed here will be run.<br />
tasks.enabled=ScheduledEntries<br />
Task,ResetHitCountsTask,\<br />
TurnoverReferersTask,PingQueueTask,<b>RefreshRollerPlanetTask</b>,SyncWebsitesTask<br />
# Set of page models specifically for site-wide rendering<br />
rendering.siteModels=\<br />
org.apache.roller.weblogger.ui.rendering.model.SiteModel,\<br />
org.apache.roller.weblogger.ui.rendering.model.PlanetModel</p>
<div class="ArwC7c ckChnd"> <i>The installation guide says the planet cache directory property is<br />
named planet.aggregator.cache.dir, but the planet.properties file<br />
looks like it uses cache.dir</i></div>
<div class="ArwC7c ckChnd"></div>
<div class="ArwC7c ckChnd"><i>It should be RefreshRollerPlanetTask not  RefreshPlanetRollerTask </i></div>
<div class="ArwC7c ckChnd"></div>
<div class="ArwC7c ckChnd">planet-custom.properties:</div>
<div class="ArwC7c ckChnd">database.configurationType=jdbc</p>
<div class="ArwC7c ckChnd">database.jdbc.driverClass=com.mysql.jdbc.Driver<br />
database.jdbc.connectionURL=jdbc:mysql://localhost:3306/rollerdb<br />
database.jdbc.username=x<br />
database.jdbc.password=y</div>
</div>
</div>
</div>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/technobuzz.wordpress.com/489/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/technobuzz.wordpress.com/489/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/technobuzz.wordpress.com/489/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/technobuzz.wordpress.com/489/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/technobuzz.wordpress.com/489/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/technobuzz.wordpress.com/489/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/technobuzz.wordpress.com/489/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/technobuzz.wordpress.com/489/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/technobuzz.wordpress.com/489/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/technobuzz.wordpress.com/489/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/technobuzz.wordpress.com/489/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/technobuzz.wordpress.com/489/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=489&subd=technobuzz&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://technobuzz.wordpress.com/2008/01/06/roller-4-planet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/04b4144caae1c494d0f63aa7d3d1a7d5?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">davidbloom</media:title>
		</media:content>

		<media:content url="http://technobuzz.files.wordpress.com/2007/11/image01.jpg" medium="image">
			<media:title type="html">image01.jpg</media:title>
		</media:content>

		<media:content url="http://technobuzz.files.wordpress.com/2007/11/image002.jpg" medium="image">
			<media:title type="html">image002.jpg</media:title>
		</media:content>
	</item>
		<item>
		<title>Struts2 Trainings</title>
		<link>http://technobuzz.wordpress.com/2007/12/02/struts2-trainings/</link>
		<comments>http://technobuzz.wordpress.com/2007/12/02/struts2-trainings/#comments</comments>
		<pubDate>Sun, 02 Dec 2007 20:34:15 +0000</pubDate>
		<dc:creator>davidbloom</dc:creator>
				<category><![CDATA[AJAX]]></category>
		<category><![CDATA[Struts]]></category>

		<guid isPermaLink="false">http://technobuzz.wordpress.com/2007/12/02/struts2-trainings/</guid>
		<description><![CDATA[One of the struts 2 sample applications is the Mailreader application which has  training course via  Struts from Square One site .
Building Web Applications
Building Struts 2 Applications [  Welcome] [More ...]

Struts 2 components

Action Handler, Result Handler, Custom Tags
Interceptor : bring custom code into call stack

Timer Interceptor
Prepare (able) -  If the Action [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=488&subd=technobuzz&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p><strong>One of the <a href="http://struts.apache.org/2.x/docs/tutorials.html">struts 2 sample applications</a> is the Mailreader application which has  <a href="http://opensource.atlassian.com/confluence/oss/display/STRUTS/MailReader%20Training%20Course">training course</a> via  <span class="nobr"></span><a href="http://code.google.com/p/sq1-struts2/source" rel="nofollow">Struts from Square One site</a> .</strong></p>
<p><span class="nobr"></span><a href="http://opensource.atlassian.com/confluence/oss/download/attachments/4942/building-web-applications.pdf?version=1">Building Web Applications</a><br />
<span class="nobr"></span><a href="http://opensource.atlassian.com/confluence/oss/download/attachments/4942/building-s2-applications.pdf?version=2">Building Struts 2 Applications</a> [  <a href="http://opensource.atlassian.com/confluence/oss/display/STRUTS/Welcome" title="Welcome">Welcome</a>] [<a href="http://opensource.atlassian.com/confluence/oss/display/STRUTS/Welcome-Notes" title="Welcome-Notes">More</a> ...]</p>
<blockquote>
<h3>Struts 2 components</h3>
</blockquote>
<blockquote><p>Action Handler, Result Handler, Custom Tags</p></blockquote>
<blockquote><p><a href="http://struts.apache.org/2.x/docs/interceptors.html#Interceptors-ConfiguringInterceptors">Interceptor</a> : bring custom code into call stack</p>
<ul>
<li>Timer Interceptor</li>
<li><a href="http://cwiki.apache.org/confluence/display/WW/Prepare+Interceptor">Prepare (able) </a>-  If the Action implements Preparable, calls its prepare method.</li>
</ul>
<p>value stack : stack of objects that expression language can pull from</p>
<ul>
<li>Action instance pushed onto stack</li>
</ul>
</blockquote>
<p><span class="nobr"></span><a href="http://opensource.atlassian.com/confluence/oss/download/attachments/4942/junit-jumpstart.pdf?version=2">Jumpstarting JUnit</a>  (<a href="http://opensource.atlassian.com/confluence/oss/display/STRUTS/Retain-Notes" title="Retain-Notes">More</a> &#8230;)</p>
<blockquote></blockquote>
<p><span class="nobr"></span><a href="http://opensource.atlassian.com/confluence/oss/download/attachments/4942/capturing-input.pdf?version=2">Capturing Input</a>(<a href="http://opensource.atlassian.com/confluence/oss/display/STRUTS/Register-Notes" title="Register-Notes">More</a> &#8230;)</p>
<blockquote></blockquote>
<p><span class="nobr"></span><a href="http://opensource.atlassian.com/confluence/oss/download/attachments/4942/validating-input.pdf?version=3">Validating Input</a> (<a href="http://opensource.atlassian.com/confluence/oss/display/STRUTS/Register2-Notes" title="Register2-Notes">More</a> &#8230;)</p>
<blockquote>
<h3>Request Lifecycle in Struts 2 applications</h3>
<ul>
<li>User Sends request: User sends a request to the server for some resource.</li>
<li>FilterDispatcher determines the appropriate action: The FilterDispatcher  looks at the request and then determines the appropriate Action.</li>
<li>Interceptors are applied: Interceptors configured for applying the common  functionalities such as workflow, validation, file upload etc. are automatically  applied to the request.</li>
<li>Execution of Action: Then the action method is executed to perform the  database related operations like storing or retrieving the data from database.</li>
<li>Output rendering: Then the Result render the output.</li>
<li>Return of Request: Then the request returns through the interceptors in the  reverse order. The returning request allows us to perform the clean-up or  additional processing.</li>
</ul>
<p>Display the result to user: Finally the control is returned to the servlet  container, which sends the output to the user browser.<br />
<a href="http://struts.apache.org/2.0.11/docs/big-picture.html" class="external text" title="http://struts.apache.org/2.0.11/docs/big-picture.html" rel="nofollow">Struts  2 Big Picture</a></p>
<p>The diagram depicts the architecture of Struts 2 Framework. It shows the  the initial request goes to the Servlet container, which is then passed through  a standard filer chain.</p>
<ol>
<li>ActionContextCleanUp filter: The ActionContextCleanUp filter is optional. It  is useful when integrating other technologies such as SiteMesh Plugin.</li>
<li>FilterDispatcher: the required FilterDispatcher is called, which in turn  consults the ActionMapper to determine if the request should invoke an action.  If the <a href="http://struts.apache.org/2.0.11/docs/actionmapper.html" class="external text" title="http://struts.apache.org/2.0.11/docs/actionmapper.html" rel="nofollow">ActionMapper</a> determines that an Action should be invoked, the  FilterDispatcher delegates control to the ActionProxy.</li>
<li>ActionProxy: The ActionProxy consults the <a href="http://struts.apache.org/2.0.11/docs/configuration-files.html" class="external text" title="http://struts.apache.org/2.0.11/docs/configuration-files.html" rel="nofollow">Configuration Files</a> manager, which is initialized via the <a href="http://struts.apache.org/2.0.11/docs/strutsxml.html" class="external text" title="http://struts.apache.org/2.0.11/docs/strutsxml.html" rel="nofollow">struts.xml file</a>. Then the ActionProxy creates an  ActionInvocation, which implements the command pattern. The ActionInvocation  process invokes the <a href="http://struts.apache.org/2.0.11/docs/interceptors.html" class="external text" title="http://struts.apache.org/2.0.11/docs/interceptors.html" rel="nofollow">Interceptors</a> (if configured) and then invokes the action.</li>
<li>Once the Action returns, the ActionInvocation is responsible for looking up  the proper result associated with the Action result code mapped in struts.xml.  The result is then executed, which often (but not always, as is the case for <a href="http://struts.apache.org/2.0.11/docs/action-chaining.html" class="external text" title="http://struts.apache.org/2.0.11/docs/action-chaining.html" rel="nofollow">Action Chaining</a>) involves a template written in <a href="http://struts.apache.org/2.0.11/docs/jsp.html" class="external text" title="http://struts.apache.org/2.0.11/docs/jsp.html" rel="nofollow">JSP</a> or  FreeMarker to be rendered. While rendering, the templates can use the <a href="http://struts.apache.org/2.0.11/docs/struts-tags.html" class="external text" title="http://struts.apache.org/2.0.11/docs/struts-tags.html" rel="nofollow">Struts  Tags</a> provided by the framework. Some of those components will work with the  ActionMapper to render proper URLs for additional requests.</li>
<li>Then the <a href="http://struts.apache.org/2.0.11/docs/interceptors.html" class="external text" title="http://struts.apache.org/2.0.11/docs/interceptors.html" rel="nofollow">Interceptors</a> are executed again in reverse order. Finally the  response returns through the filters configured in web.xml file.</li>
<li>If the ActionContextCleanUp filter is configured, the FilterDispatcher does  not clean the ThreadLocal ActionContext. If the ActionContextCleanUp filter is  not present then the FilterDispatcher will cleanup all the ThreadLocals present.</li>
</ol>
<p><a title="Resources" name="Resources"></a></p>
<h3>Resources</h3>
<ul>
<li><a href="http://www.infoq.com/articles/converting-struts-2-part1" class="external text" title="http://www.infoq.com/articles/converting-struts-2-part1" rel="nofollow">converting-struts-2-part1</a></li>
<li><a href="http://www.infoq.com/articles/migrating-struts-2-part2" class="external text" title="http://www.infoq.com/articles/migrating-struts-2-part2" rel="nofollow">converting-struts-2-part2</a></li>
<li><a href="http://www.roseindia.net/struts/struts2/" class="external text" title="http://www.roseindia.net/struts/struts2/" rel="nofollow">Tutorial</a></li>
</ul>
</blockquote>
<p><a href="http://cwiki.apache.org/confluence/display/WW/Prepare+Interceptor">If you install the war o</a>n an application server (like tomcat ) you can <a href="http://opensource.atlassian.com/confluence/oss/display/STRUTS/MailReader+Setup+Instructions">easily run</a> the sample projtect. Here is the <a href="http://opensource.atlassian.com/confluence/oss/download/attachments/4942/Struts-201.pdf">struts 201 slides</a></p>
<p>Th version I have of the application mentions: &#8220;For more about the MailReader, including alternate implementations and a set of  formal Use Cases, please visit the <a href="http://www.strutsuniversity.org/MailReader">Struts University MailReader  site</a>&#8221; .</p>
<ul>
<li><a href="http://opensource.atlassian.com/confluence/oss/display/STRUTS/MailReader+Database+Worksheet">MailReader Database Worksheet</a>                                  <span class="smalltext">(Struts University)</span></li>
<li><a href="http://opensource.atlassian.com/confluence/oss/display/STRUTS/MailReader+Object+Model">MailReader Object Model</a>                                  <span class="smalltext">(Struts University)</span></li>
<li><a href="http://opensource.atlassian.com/confluence/oss/display/STRUTS/MailReader+Tour">MailReader Tour</a>                                  <span class="smalltext">(Struts University)</span></li>
<li><a href="http://opensource.atlassian.com/confluence/oss/display/STRUTS/MailReader+Use+Cases">MailReader Use Cases</a>                                  <span class="smalltext">(Struts University)</span></li>
</ul>
<p>The full source code for MailReader is available as<a href="http://svn.apache.org/viewvc/struts/struts2/trunk/apps/mailreader/"> svn site</a>, <a href="http://www.apache.org/dist/struts/binaries/">binaries</a>, <a href="http://people.apache.org/builds/struts/nightlies/2.0.x/apps/">nightlies</a></p>
<p>Other <a href="http://opensource.atlassian.com/confluence/oss/display/STRUTS/Home">Struts2 Trainings</a> include <a href="http://opensource.atlassian.com/confluence/oss/display/STRUTS/Migrating+to+Struts+2">Migrating to Struts2</a> the and <a href="http://opensource.atlassian.com/confluence/oss/display/STRUTS/JPA+Training+Course">JPA</a>  .</p>
<p>REFERENCES:</p>
<ul>
<li><a href="http://struts.apache.org/2.x/docs/home.html">http://struts.apache.org/2.x/docs/home.html</a></li>
<li><a href="http://struts.apache.org/2.x/docs/core-developers-guide.html">http://struts.apache.org/2.x/docs/core-developers-guide.html</a></li>
<li><a href="http://opensource.atlassian.com/confluence/oss/display/STRUTS/Home">http://opensource.atlassian.com/confluence/oss/display/STRUTS/Home</a></li>
<li><a href="http://cwiki.apache.org/confluence/display/S2WIKI/Home">http://cwiki.apache.org/confluence/display/S2WIKI/Home</a></li>
<li><a href="http://www.gmjjavadesigns.com/gmjd/entry/struts_2_ajax_tags">http://www.gmjjavadesigns.com/gmjd/entry/struts_2_ajax_tags</a></li>
</ul>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/technobuzz.wordpress.com/488/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/technobuzz.wordpress.com/488/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/technobuzz.wordpress.com/488/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/technobuzz.wordpress.com/488/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/technobuzz.wordpress.com/488/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/technobuzz.wordpress.com/488/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/technobuzz.wordpress.com/488/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/technobuzz.wordpress.com/488/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/technobuzz.wordpress.com/488/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/technobuzz.wordpress.com/488/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/technobuzz.wordpress.com/488/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/technobuzz.wordpress.com/488/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=488&subd=technobuzz&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://technobuzz.wordpress.com/2007/12/02/struts2-trainings/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/04b4144caae1c494d0f63aa7d3d1a7d5?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">davidbloom</media:title>
		</media:content>
	</item>
		<item>
		<title>A Roller 4.o experience</title>
		<link>http://technobuzz.wordpress.com/2007/11/25/a-roller-4o-experience/</link>
		<comments>http://technobuzz.wordpress.com/2007/11/25/a-roller-4o-experience/#comments</comments>
		<pubDate>Sun, 25 Nov 2007 20:27:19 +0000</pubDate>
		<dc:creator>davidbloom</dc:creator>
				<category><![CDATA[Blogging]]></category>
		<category><![CDATA[SW Tools]]></category>
		<category><![CDATA[Struts]]></category>

		<guid isPermaLink="false">http://technobuzz.wordpress.com/2007/11/25/a-roller-4o-experience/</guid>
		<description><![CDATA[Just last week, I learned about what&#8217;s new with Roller in 4.0
Thought it was finally time to try my own installation after being a one time user of this Roller platform on JRoller as user on http://www.jroller.com/interjavanet/ . I had forgotten my password over on that blog, and it did not seem to be stright [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=487&subd=technobuzz&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Just last week, I learned about <a href="http://technobuzz.wordpress.com/2007/11/18/">what&#8217;s new with Roller in 4.0</a></p>
<p>Thought it was finally time to try my own <a href="http://people.apache.org/~snoopdave/apache-roller-4.0-rc9/roller-install-guide.pdf">installation</a> after being a one time user of this <a href="http://rollerweblogger.org/project/">Roller platform</a> on <a href="http://jroller.com">JRoller</a> as user on <a href="http://www.jroller.com/interjavanet/">http://www.jroller.com/interjavanet/</a> . I had forgotten my password over on that blog, and it did not seem to be stright forward on how you get your password reset.</p>
<p>Did I mention that Roller is now on Apache at <a href="http://roller.apache.org/" class="external">http://roller.apache.org</a> ?</p>
<p>They have their own wiki now at<a href="http://cwiki.apache.org/confluence/display/ROLLER"> http://cwiki.apache.org/confluence/display/ROLLER</a></p>
<p>Anyway, I am using the mysql database (5.0.41 community edition) with roller 4<br />
(<a href="http://people.apache.org/~snoopdave/apache-roller-4.0-rc9/">apache-roller-src-4.0-rc9</a>) which i placed in Tomcat&#8217;s webapps directory naming the folder roller4_0  .</p>
<p>I am using tomcat 5.5 with java5.</p>
<p><strong>Setup</strong>: Tomcat&#8217;s common/classes folder have placed file roller-custom.properties:<br />
installation.type=auto<br />
database.configurationType=jdbc<br />
database.jdbc.driverClass=com.mysql.jdbc.Driver<br />
database.jdbc.connectionURL=jdbc:mysql://localhost:3306/rollerdb<br />
database.jdbc.username=root<br />
database.jdbc.password=admin<br />
mail.configurationType=properties<br />
mail.hostname=smtp-server.nc.rr.com<br />
mail.username=x<br />
mail.password=x</p>
<p><strong>Important: </strong>You need to put the mysql driver, and two other jars into Tomcats&#8217;s common/lib directory:</p>
<ul>
<li>mysql-connector-java-3.1.13-bin</li>
<li>activation (obtained from my java 5 lib folder)</li>
<li>mail (obtained from my java 5 lib folder)</li>
</ul>
<p class="ArwC7c ckChnd">&nbsp;</p>
<p>AFter starting Tomcat, I go to the main screen via url  <a href="http://localhost:8080/roller4_0/index.jsp">http://localhost:8080/roller4_0/index.jsp</a></p>
<p>which says I have a successful connection but have no tables . So I click the button to create the tables.</p>
<p><img src="http://technobuzz.files.wordpress.com/2007/11/image01.jpg?w=440" alt="image01.jpg" width="440" /></p>
<p>Then, I get the page to create users and the blog.<br />
<img src="http://technobuzz.files.wordpress.com/2007/11/image002.jpg?w=440" alt="image002.jpg" width="440" /></p>
<p><strong>References</strong> :</p>
<ul>
<li>The <a href="http://cwiki.apache.org/confluence/display/ROLLER/Roller+Source+Code">Roller source code wiki page</a></li>
<li>The <a href="http://cwiki.apache.org/confluence/display/ROLLER/Build+Guide">Roller Build Guide wiki page </a></li>
<li>The <a href="http://cwiki.apache.org/confluence/display/ROLLER/Roller+Install+Guides">Roller Install Guide wiki page</a></li>
</ul>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/technobuzz.wordpress.com/487/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/technobuzz.wordpress.com/487/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/technobuzz.wordpress.com/487/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/technobuzz.wordpress.com/487/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/technobuzz.wordpress.com/487/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/technobuzz.wordpress.com/487/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/technobuzz.wordpress.com/487/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/technobuzz.wordpress.com/487/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/technobuzz.wordpress.com/487/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/technobuzz.wordpress.com/487/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/technobuzz.wordpress.com/487/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/technobuzz.wordpress.com/487/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=487&subd=technobuzz&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://technobuzz.wordpress.com/2007/11/25/a-roller-4o-experience/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/04b4144caae1c494d0f63aa7d3d1a7d5?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">davidbloom</media:title>
		</media:content>

		<media:content url="http://technobuzz.files.wordpress.com/2007/11/image01.jpg" medium="image">
			<media:title type="html">image01.jpg</media:title>
		</media:content>

		<media:content url="http://technobuzz.files.wordpress.com/2007/11/image002.jpg" medium="image">
			<media:title type="html">image002.jpg</media:title>
		</media:content>
	</item>
		<item>
		<title>Roller n Struts2</title>
		<link>http://technobuzz.wordpress.com/2007/11/18/roller-n-struts2/</link>
		<comments>http://technobuzz.wordpress.com/2007/11/18/roller-n-struts2/#comments</comments>
		<pubDate>Sun, 18 Nov 2007 21:55:30 +0000</pubDate>
		<dc:creator>davidbloom</dc:creator>
				<category><![CDATA[Blogging]]></category>
		<category><![CDATA[Hibernate & ORM]]></category>
		<category><![CDATA[Struts]]></category>

		<guid isPermaLink="false">http://technobuzz.wordpress.com/2007/11/18/roller-n-struts2/</guid>
		<description><![CDATA[Just noticed that Dave Johnson has upgraded Roller in version 4.o to use Struts2 and OpenJPA.
After learning about Webwork last year,   I  played with using Struts2 examples in a 1.4.x environment.
Roller wiki
Install Guide

 http://www.rkcole.com/articles/struts/crudTutorial/
 http://techienet.org/book-page/sarath/struts2-step-step-guide-programmers
http://ahmadshajee.blogspot.com/2007/09/struts2-part-i-introduction.html
http://j2eefolks.blogspot.com/2007/04/struts-2-features-and-short-summary.html

       <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=484&subd=technobuzz&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Just noticed that Dave Johnson has <a href="http://rollerweblogger.org/roller/entry/roller_strong_9">upgraded Roller in version 4.o</a> to <a href="http://rollerweblogger.org/roller/entry/powered_by_struts2_and_openjpa">use Struts2 and OpenJPA</a>.</p>
<p>After learning about Webwork last year,   I  played with using <a href="http://cwiki.apache.org/confluence/display/S2WIKI/Sample+Applications+with+Java+1.4.x">Struts2 examples in a 1.4.x environment</a>.</p>
<p><a href="http://cwiki.apache.org/confluence/display/ROLLER">Roller wiki</a></p>
<p><a href="http://cwiki.apache.org/confluence/display/ROLLER/Roller+Install+Guides">Install Guide</a></p>
<ul>
<li> <a href="http://www.rkcole.com/articles/struts/crudTutorial/">http://www.rkcole.com/articles/struts/crudTutorial/</a></li>
<li> <a href="http://techienet.org/book-page/sarath/struts2-step-step-guide-programmers">http://techienet.org/book-page/sarath/struts2-step-step-guide-programmers</a></li>
<li><a href="http://ahmadshajee.blogspot.com/2007/09/struts2-part-i-introduction.html">http://ahmadshajee.blogspot.com/2007/09/struts2-part-i-introduction.html</a></li>
<li><a href="http://j2eefolks.blogspot.com/2007/04/struts-2-features-and-short-summary.html">http://j2eefolks.blogspot.com/2007/04/struts-2-features-and-short-summary.html</a></li>
</ul>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/technobuzz.wordpress.com/484/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/technobuzz.wordpress.com/484/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/technobuzz.wordpress.com/484/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/technobuzz.wordpress.com/484/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/technobuzz.wordpress.com/484/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/technobuzz.wordpress.com/484/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/technobuzz.wordpress.com/484/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/technobuzz.wordpress.com/484/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/technobuzz.wordpress.com/484/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/technobuzz.wordpress.com/484/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/technobuzz.wordpress.com/484/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/technobuzz.wordpress.com/484/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=484&subd=technobuzz&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://technobuzz.wordpress.com/2007/11/18/roller-n-struts2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/04b4144caae1c494d0f63aa7d3d1a7d5?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">davidbloom</media:title>
		</media:content>
	</item>
		<item>
		<title>More web 2.0</title>
		<link>http://technobuzz.wordpress.com/2007/09/19/more-web-20/</link>
		<comments>http://technobuzz.wordpress.com/2007/09/19/more-web-20/#comments</comments>
		<pubDate>Wed, 19 Sep 2007 01:18:06 +0000</pubDate>
		<dc:creator>davidbloom</dc:creator>
				<category><![CDATA[Web/Tech]]></category>

		<guid isPermaLink="false">http://technobuzz.wordpress.com/2007/09/19/more-web-20/</guid>
		<description><![CDATA[Last week was the conference, this week comes people trying to define it. My best definition would be netvibes.com
A checkpoint on  Web 2.0 in the enterprise

As such, the situational application would be  another web 2.0 concept. this article defines it great.
&#8220;where small groups and departments developed their own applications independent of the corporate [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=482&subd=technobuzz&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Last week was the conference, this week comes <a href="http://blogs.techrepublic.com.com/tech-manager/?p=342">people trying to define it</a>. My best definition would be netvibes.com</p>
<p><a href="http://blogs.zdnet.com/Hinchcliffe/?p=130" title="Permanent Link to A checkpoint on Web 2.0 in the enterprise" rel="bookmark">A checkpoint on  Web 2.0 in the enterprise</a></p>
<p><img src="http://technobuzz.files.wordpress.com/2007/09/web2inenterprise_latest2.png" alt="web2inenterprise_latest2.png" /></p>
<p>As such, the <a href="http://en.wikipedia.org/wiki/Situational_application">situational application</a> would be  another web 2.0 concept. <a href="http://elangogovind.wordpress.com/2006/02/10/what-is-a-situational-application/">this article</a> defines it great.</p>
<p>&#8220;where small groups and departments developed their own applications independent of the corporate IT department. Today more and more end users who are not professional programmers are developing web applications that better fit their own needs. A simple example is a wiki, where the users can create and modify the pages and their content. No programmer has to decide ahead of time what the topics of interest will be or the structure and layout of the pages. The users evolve something over time that suites their needs within the time budget they have to invest in the site.&#8221;</p>
<p>REST is another <a href="http://www.crummy.com/writing/RESTful-Web-Services/">buzzwodr</a> like this <a href="http://developers.sun.com/learning/javaoneonline/2007/pdf/TS-8544.pdf">slide presentation</a> that explains it.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/technobuzz.wordpress.com/482/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/technobuzz.wordpress.com/482/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/technobuzz.wordpress.com/482/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/technobuzz.wordpress.com/482/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/technobuzz.wordpress.com/482/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/technobuzz.wordpress.com/482/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/technobuzz.wordpress.com/482/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/technobuzz.wordpress.com/482/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/technobuzz.wordpress.com/482/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/technobuzz.wordpress.com/482/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/technobuzz.wordpress.com/482/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/technobuzz.wordpress.com/482/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=482&subd=technobuzz&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://technobuzz.wordpress.com/2007/09/19/more-web-20/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/04b4144caae1c494d0f63aa7d3d1a7d5?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">davidbloom</media:title>
		</media:content>

		<media:content url="http://technobuzz.files.wordpress.com/2007/09/web2inenterprise_latest2.png" medium="image">
			<media:title type="html">web2inenterprise_latest2.png</media:title>
		</media:content>
	</item>
		<item>
		<title>web 2.0 conference</title>
		<link>http://technobuzz.wordpress.com/2007/09/14/web-20-conference/</link>
		<comments>http://technobuzz.wordpress.com/2007/09/14/web-20-conference/#comments</comments>
		<pubDate>Fri, 14 Sep 2007 03:45:55 +0000</pubDate>
		<dc:creator>davidbloom</dc:creator>
				<category><![CDATA[AJAX]]></category>
		<category><![CDATA[Blogging]]></category>
		<category><![CDATA[J2EE]]></category>
		<category><![CDATA[NC]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[SOA]]></category>
		<category><![CDATA[Web/Tech]]></category>

		<guid isPermaLink="false">http://technobuzz.wordpress.com/2007/09/14/web-20-conference/</guid>
		<description><![CDATA[In Raleigh, I got a chance to attend IBM&#8217;s technical briefing on web 2.0 .
For now, will just list various bits of info that I will organize later.
QEDWiki (Quick and easy design) . Assembly : &#8220;QEDWiki is a unique Wiki framework in that it provides both Web users and developers with a single Web application [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=481&subd=technobuzz&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>In <a href="http://www-128.ibm.com/developerworks/wikis/display/web20work/September+12%2C+2007+-+Raleigh%2C+NC">Raleigh</a>, I got a chance to attend <a href="http://www-03.ibm.com/developerworks/wikis/display/web20work/Home+Page">IBM&#8217;s technical briefing on web 2.0</a> .</p>
<p>For now, will just list various bits of info that I will organize later.</p>
<p><a href="http://services.alphaworks.ibm.com/qedwiki/">QEDWiki </a>(Quick and easy design) . Assembly : &#8220;QEDWiki is a unique Wiki framework in that it provides both Web users and developers with a single Web application framework for hosting and developing a broad range of Web 2.0 applications.&#8221;</p>
<p><a href="http://services.alphaworks.ibm.com/damia/">Damia</a>  . Feeds: &#8220;provides easy-to-use tools that developers and IT users alike can use to quickly assemble data feeds from the Internet and a variety of enterprise data sources. The benefits of this service include the ability to aggregate and transform a wide variety of data or content feeds, which can be used in enterprise mashups.&#8221;</p>
<p><a href="http://services.alphaworks.ibm.com/mashuphub/">Mashup Hub</a>. Tag : &#8220;Mashup Hub provides two broad areas of support: feed generation for enterprise data sources and a catalog of feeds and user interface (UI) widgets.&#8221;</p>
<p><a href="http://www.jroller.com/cooney/entry/just_what_is_info_2">Info 2.0</a></p>
<p><a href="http://services.alphaworks.ibm.com/manyeyes/home">Many eyes</a></p>
<p><a href="http://www.babynamewizard.com/namevoyager/lnv0105.html">Baby name wizard</a></p>
<p><a href="http://www.gather.com/">gather.com</a></p>
<p><a href="http://secondlife.com/whatis/">second life</a></p>
<p><a href="http://www.strikeiron.com/company/management.aspx">strike iron</a></p>
<p><a href="http://www.usatoday.com/money/books/reviews/2007-01-02-wikinomics_x.htm">gold corp</a></p>
<p><a href="http://www.zoho.com/">zoho</a></p>
<p><a href="http://www.zootsoftware.com/">zoot</a></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/technobuzz.wordpress.com/481/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/technobuzz.wordpress.com/481/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/technobuzz.wordpress.com/481/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/technobuzz.wordpress.com/481/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/technobuzz.wordpress.com/481/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/technobuzz.wordpress.com/481/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/technobuzz.wordpress.com/481/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/technobuzz.wordpress.com/481/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/technobuzz.wordpress.com/481/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/technobuzz.wordpress.com/481/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/technobuzz.wordpress.com/481/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/technobuzz.wordpress.com/481/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=481&subd=technobuzz&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://technobuzz.wordpress.com/2007/09/14/web-20-conference/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/04b4144caae1c494d0f63aa7d3d1a7d5?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">davidbloom</media:title>
		</media:content>
	</item>
		<item>
		<title>Speak Dojo</title>
		<link>http://technobuzz.wordpress.com/2007/07/21/speak-dojo/</link>
		<comments>http://technobuzz.wordpress.com/2007/07/21/speak-dojo/#comments</comments>
		<pubDate>Sat, 21 Jul 2007 21:59:49 +0000</pubDate>
		<dc:creator>davidbloom</dc:creator>
				<category><![CDATA[AJAX]]></category>

		<guid isPermaLink="false">http://technobuzz.wordpress.com/2007/07/21/speak-dojo/</guid>
		<description><![CDATA[what is dojo?
Dojo is an Open Source JavaScript UI toolkit. It makes writing JavaScript easier, building great interfaces faster, and deploying dynamic UIs at scale much easier. The foundation of Dojo is &#8220;Dojo Base&#8221;, a single tiny library which contains Ajax, event handling, effects, blazing fast CSS queries, language utilities, and a lot more. On [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=480&subd=technobuzz&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p><a href="http://rgarg.blogspot.com/2007/07/what-is-dojo.html">what is dojo</a>?</p>
<blockquote><p>Dojo is an Open Source JavaScript UI toolkit. It makes writing JavaScript easier, building great interfaces faster, and deploying dynamic UIs at scale much easier. The foundation of Dojo is &#8220;Dojo Base&#8221;, a single tiny library which contains Ajax, event handling, effects, blazing fast CSS queries, language utilities, and a lot more. On top of this Base, the rest of Dojo Core adds high-quality facilities for Drag and Drop, extended forms of Ajax and I/O, JSON-RPC, internationalization, and back-button handling.</p></blockquote>
<p>You can use the <code>div</code> tag to define widget locations and Dojo will place the widget there either during page load or in response to events.</p>
<p><a href="http://dojotoolkit.org/book/dojo-book-0-4">dojo book 0.4</a> &#8211;<a href="http://dojotoolkit.org/api/">API</a> &#8212; <a href="http://manual.dojotoolkit.org/index.html">reference documentation</a> &#8212; <a href="http://dojo.jot.com/WikiHome">Dojo jot wiki</a> &#8212; <a href="http://dojotoolkit.org/">dojo toolkit home</a></p>
<p>JavaPassion <a href="http://www.javapassion.com/ajax/DojoToolkit_speakernoted.pdf">PDF</a>  has 86 pages of info.</p>
<p>What is <a href="http://www.json.org/java/">JSON</a>?</p>
<blockquote><p> (<a href="http://today.java.net/pub/a/today/2006/04/27/building-ajax-with-dojo-and-json.html">Using Dojo and JSON to Build Ajax Applications article</a> ) &#8211; JSON is a Java library that helps convert Java objects into a string representation. This string, when <code>eval()</code>ed in JavaScript, produces an array that contains all of the information that the Java object contained. <a href="http://www.json.org/javadoc/org/json/JSONObject.html"><code>JSONObject</code></a> class , <a href="http://www.json.org/javadoc/org/json/JSONArray.html"><code>JSONArray</code></a> class &#8220;-   Dojo provides an abstraction layer for invoking JSON-RPC requests&#8221;</p>
<p><a href="http://blog.taragana.com/index.php/archive/the-power-and-versatility-of-json-over-xml/" title="http://blog.taragana.com/index.php/archive/the-power-and-versatility-of-json-over-xml/">json      over xml?</a></p>
<p><a href="http://www.ibm.com/developerworks/websphere/library/techarticles/0606_barcia/0606_barcia.html">IBM Paper</a>: &#8220;JSON is built on two structures:</p>
<ol>
<li>A collection of name/value pairs. In various languages, this is realized as an object, record, struct, dictionary, hash table, keyed list, or associative array.</li>
<li>An ordered list of values. In most languages, this is realized as an array, vector, list, or sequence</li>
</ol>
<p>JSON-RPC is a lightweight remote procedure call protocol in which JSON serializes requests and responses</p>
<p>The request is a single object with three properties:</p>
<ul>
<li> 					<code>method</code> &#8211; A string containing the name of the method to be invoked.</li>
<li> 					<code>params</code> &#8211; An array of objects to pass as arguments to the method.</li>
<li> 					<code>id</code> &#8211; The request ID. This can be of any type. It is used to match the response with the request that it is replying to.</li>
</ul>
<p>When the method invocation completes, the service must reply with a response. The response is a single object with three properties:</p>
<ul>
<li> 					<code>result</code> &#8211; The object that was returned by the invoked method. This must be <code>null</code>, in case there was an error invoking the method.</li>
<li> 					<code>error</code> &#8211; An <code>error</code> object if there was an error invoking the method. It must be <code>null</code>, if there was no error.</li>
<li> 					<code>id</code> &#8211; This must be the same ID as the request it is responding to.</li>
</ul>
<p>A notification is a special request that does not have a response. It has the same properties as the request object with one exception:</p>
<p><code>id</code> &#8211; Must be <code>null</code>&#8220;</p></blockquote>
<blockquote><p><a href="http://today.java.net/pub/a/today/2006/04/27/building-ajax-with-dojo-and-json.html">Using Dojo and JSON to Build Ajax Applications article</a>: Dojo libraries are organized in packages just like Java code. For this example, we will need to import two packages.</p>
<p>The <code>dojo.io</code> package contains classes that allow us to make HTTP requests using protocols such as XMLHTTPTransport.</p>
<p>The <code>dojo.event</code> package is designed to provide a unified event system for DOM and programmatic events.</p>
<p>The <code>dojo.event.connect()</code> method allows you to associate a  handler for the <code>onclick</code> event for <code>myButton</code>:</p>
<pre><code>function onLoad() {

   var buttonObj = document.getElementById("myButton");

   <strong>dojo.event.connect(buttonObj, "onclick",

          this, "onclick_myButton");</strong>

  }</code>  function onclick_myButton() {

   var bindArgs = {

    <strong>url</strong>: "welcome.jsp",

    <strong>error</strong>: function(type, data, evt){

     alert("An error occurred.");

    },

    <strong>load</strong>: function(type, data, evt){

     alert(data);

    },

    <strong>mimetype</strong>: "text/plain",

    <strong>formNode</strong>: document.getElementById("myForm")

   };

   <strong>dojo.io.bind(bindArgs);</strong>

  }</pre>
<p>The magical <code>dojo.io.bind()</code> function is where the power lies. It takes as argument <code>bindArgs</code>, an array of name/value pairs. In this example, we specify five pairs:</p>
<ol>
<li><code>url</code>: The URL to make the request to.</li>
<li><code>mimetype</code>: The response type expected.</li>
<li><code>load</code>: Code to execute upon success.</li>
<li><code>error</code>: Code to execute upon error.</li>
<li><code>formNode</code>: The ID of the form whose fields to submit as parameters to the URL.</li>
</ol>
<p>Once the call to <code>dojo.io.bind(bindArgs)</code> is made,depending on whether the request encountered any errors, either the <code>load</code> or <code>error</code> code is executed. Both <code>load</code> and <code>error</code> take three arguments:<code><br />
<strong> type</strong></code><strong>:</strong> The type of function; it will always be set to <code>load</code> for <code>load()</code> and <code>error</code> for <code>error()</code>.<code><br />
<strong> data</strong></code>: The response received. If <code>mimetype</code> is specified as <code>text/plain</code>, data contains the raw response. <strong>If, however, <code>text/json</code> is used, data contains the value of <code>eval('(' + responseReceived + ')')</code>, where <code>responseReceived</code> is what the call returned</strong>.<code></code><code></code></p>
<p><strong><code>evt</code></strong>: The <a href="http://www.w3schools.com/htmldom/dom_obj_event.asp">event object</a>.</p></blockquote>
<ul>
<li>Dojo with <a href="http://www.devx.com/webdev/Article/31806/0/page/1">a struts action</a> example</li>
<li><span><a href="http://dojotoolkit.org/search/node/tree" title="http://dojotoolkit.org/search/node/tree">http://dojotoolkit.org/search/node/tree</a></span></li>
<li><span><a href="http://willcode4beer.com/ware.jsp?set=dojoTreeWidget" title="http://willcode4beer.com/ware.jsp?set=dojoTreeWidget">http://willcode4beer.com/ware.jsp?set=dojoTreeWidget</a></span></li>
<li><span><a href="http://www.sauter-online.de/dojo/demos/widget/Tree/tree.html" title="http://www.sauter-online.de/dojo/demos/widget/Tree/tree.html">http://www.sauter-online.de/dojo/demos/widget/Tree/tree.html</a></span></li>
<li><span><a href="http://www.thearcmind.com/confluence/display/RandomThoughts/DOJO+First+Glance" title="http://www.thearcmind.com/confluence/display/RandomThoughts/DOJO+First+Glance">http://www.thearcmind.com/confluence/display/RandomThoughts/DOJO+First+Glance</a><br />
</span></li>
<li><span><a href="http://dojo.jot.com/WikiHome/Tree" title="http://dojo.jot.com/WikiHome/Tree">http://dojo.jot.com/WikiHome/Tree</a></span></li>
<li><a href="http://home.exetel.com.au/cweatures/combosample/combotest.html"><span>http://home.exetel.com.au/cweatures/combosample/combotest.html</span></a></li>
<li class="MsoNormal"><span><a href="http://www.stack.be/%7Eroel/blog/archives/the-dojo-tree-control-for-beginners-part-1/" title="http://www.stack.be/~roel/blog/archives/the-dojo-tree-control-for-beginners-part-1/">http://www.stack.be/~roel/blog/archives/the-dojo-tree-control-for-beginners-part-1/</a>      </span></li>
<li class="MsoNormal"><span><a href="http://www.stack.be/%7Eroel/blog/archives/the-dojo-tree-control-for-beginners-part-2/" title="http://www.stack.be/~roel/blog/archives/the-dojo-tree-control-for-beginners-part-2/">http://www.stack.be/~roel/blog/archives/the-dojo-tree-control-for-beginners-part-2/</a></span></li>
<li class="MsoNormal"><span></span><span style="font-size:12pt;font-family:'Times New Roman';"><a href="http://www.it-eye.nl/weblog/2007/05/02/use-ajax-treecompontent-in-jsp-with-dojo/" title="http://www.it-eye.nl/weblog/2007/05/02/use-ajax-treecompontent-in-jsp-with-dojo/">http://www.it-eye.nl/weblog/2007/05/02/use-ajax-treecompontent-in-jsp-with-dojo/</a></span></li>
</ul>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/technobuzz.wordpress.com/480/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/technobuzz.wordpress.com/480/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/technobuzz.wordpress.com/480/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/technobuzz.wordpress.com/480/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/technobuzz.wordpress.com/480/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/technobuzz.wordpress.com/480/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/technobuzz.wordpress.com/480/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/technobuzz.wordpress.com/480/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/technobuzz.wordpress.com/480/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/technobuzz.wordpress.com/480/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/technobuzz.wordpress.com/480/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/technobuzz.wordpress.com/480/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=480&subd=technobuzz&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://technobuzz.wordpress.com/2007/07/21/speak-dojo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/04b4144caae1c494d0f63aa7d3d1a7d5?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">davidbloom</media:title>
		</media:content>
	</item>
		<item>
		<title>Design choices and Tools roundup</title>
		<link>http://technobuzz.wordpress.com/2007/07/02/design-choices-and-tools-roundup/</link>
		<comments>http://technobuzz.wordpress.com/2007/07/02/design-choices-and-tools-roundup/#comments</comments>
		<pubDate>Mon, 02 Jul 2007 12:28:57 +0000</pubDate>
		<dc:creator>davidbloom</dc:creator>
				<category><![CDATA[J2EE]]></category>
		<category><![CDATA[SW Tools]]></category>

		<guid isPermaLink="false">http://technobuzz.wordpress.com/2007/07/02/design-choices-and-tools-roundup/</guid>
		<description><![CDATA[softarc &#8211; the anti- experienced Coding Architect
Using NetBeans Open Source Toolbox , and More Netbeans
You are doing more modeling than you think
       <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=479&subd=technobuzz&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p><a href="http://softarc.blogspot.com/2007/06/how-to-spot-dreaded-non-coding.html">softarc</a> &#8211; the anti- experienced Coding Architect</p>
<p>Using <a href="http://www.developer.com/java/ent/article.php/3685826">NetBeans Open Source Toolbox</a> , and <a href="http://blogs.sun.com/geertjan/">More Netbeans</a></p>
<p>You are <a href="http://www.builderau.com.au/strategy/developmentprocess/soa/Agile-Modelling-with-IBM-s-Scott-Ambler/0,339028278,339278887,00.htm">doing more modeling than you think</a></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/technobuzz.wordpress.com/479/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/technobuzz.wordpress.com/479/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/technobuzz.wordpress.com/479/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/technobuzz.wordpress.com/479/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/technobuzz.wordpress.com/479/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/technobuzz.wordpress.com/479/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/technobuzz.wordpress.com/479/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/technobuzz.wordpress.com/479/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/technobuzz.wordpress.com/479/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/technobuzz.wordpress.com/479/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/technobuzz.wordpress.com/479/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/technobuzz.wordpress.com/479/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=479&subd=technobuzz&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://technobuzz.wordpress.com/2007/07/02/design-choices-and-tools-roundup/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/04b4144caae1c494d0f63aa7d3d1a7d5?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">davidbloom</media:title>
		</media:content>
	</item>
		<item>
		<title>CM is made of what?</title>
		<link>http://technobuzz.wordpress.com/2007/06/25/cm-is-made-of-what/</link>
		<comments>http://technobuzz.wordpress.com/2007/06/25/cm-is-made-of-what/#comments</comments>
		<pubDate>Mon, 25 Jun 2007 18:51:31 +0000</pubDate>
		<dc:creator>davidbloom</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://technobuzz.wordpress.com/2007/06/25/cm-is-made-of-what/</guid>
		<description><![CDATA[http://devlicio.us/blogs/derik_whittaker/archive/2007/05/09/questions-every-candidate-should-ask-a-potential-new-employer.aspx
       <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=478&subd=technobuzz&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p><span><a href="http://devlicio.us/blogs/derik_whittaker/archive/2007/05/09/questions-every-candidate-should-ask-a-potential-new-employer.aspx" rel="nofollow" target="_blank">http://devlicio.us/blogs/derik_whittaker/archive/2007/05/09/questions-every-candidate-should-ask-a-potential-new-employer.aspx</a></span></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/technobuzz.wordpress.com/478/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/technobuzz.wordpress.com/478/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/technobuzz.wordpress.com/478/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/technobuzz.wordpress.com/478/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/technobuzz.wordpress.com/478/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/technobuzz.wordpress.com/478/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/technobuzz.wordpress.com/478/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/technobuzz.wordpress.com/478/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/technobuzz.wordpress.com/478/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/technobuzz.wordpress.com/478/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/technobuzz.wordpress.com/478/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/technobuzz.wordpress.com/478/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=technobuzz.wordpress.com&blog=687368&post=478&subd=technobuzz&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://technobuzz.wordpress.com/2007/06/25/cm-is-made-of-what/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/04b4144caae1c494d0f63aa7d3d1a7d5?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">davidbloom</media:title>
		</media:content>
	</item>
	</channel>
</rss>