<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" 
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
  xmlns:admin="http://webns.net/mvcb/"
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
  <channel>
    <title>mojavelinux.com</title>
    <link>http://www.mojavelinux.com/</link>
    <description>Open Source Advocacy</description>
    <dc:language>en-us</dc:language>
    <dc:creator>dan.allen@mojavelinux.com</dc:creator>
    <dc:date>2008-05-07T03:58:05-05:00</dc:date>
    <admin:generatorAgent rdf:resource="http://www.movabletype.org/?v=2.661" />
    <sy:updatePeriod>daily</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <sy:updateBase>2000-01-01T12:00+00:00</sy:updateBase>
        <item>
      <title>&quot;Seam in Action saved my life&quot;</title>
      <link>http://www.mojavelinux.com/blog/archives/2008/05/seam_in_action_saved_my_life/</link>
      <description><![CDATA[<p>If you know me, you know that I don't really like to talk about my successes. I guess part of it is because I absolutely hate when I am the target of marketing, so I like to avoid putting other people in that situation. However, when I read the following <a href="http://www.seamframework.org/Community/TwoFreeChaptersFromSeamInActionAvailable#comment20624">post</a> on the <a href="http://www.mojavelinux.com">Seam Forums</a>, I decided I just had to share it. 

<blockquote>Dan,
<br /><br />
I have never written a book review before but am unable to contain myself in this case. I bought the pre-release version from Manning out of desperation to make head or tails out of what I have been doing with Seam, JSF, EJB etc.
<br /><br />
My perspective may be a bit different in that I am relatively new (7-8 months) to web development of any sort and fairly new to Java. The learning curve has been steep and painful. Compounded with this is that I am running solo with no peer group to keep me on the narrow path.
<br /><br />
I chose SEAM after an initial web app strictly with JSF, EJB3. I was relieved at how much less code I had to write to accomplish things. However, SEAM introduces a whole new set of complexities and some of the nuances have really thrown me.
<br /><br />
The Michael Yuan/Thomas Heute book is a good resource for whetting the appetite. However it covers v1.0 SEAM and it fairly introductory.
<br /><br />
What I had been missing and was desperately needing was a full understanding of what is happening under the covers; something that fully connects the dots. Your book does just that! It has eliminated much of the confusion that was besetting me. I having been reading it voraciously since I downloaded it.
<br /><br />
The community will greatly benefit from this resource. I love the thorough, careful, methodical explanations that step you through what is really going one. The abundant charts and graphics expose detail and subtleties that a developer really needs to know.
<br /><br />
This will be my primary goto resource. I hope the example code will be available for download soon.
<br /><br />
Thanks for hitting a home run with this.
<br /><br />- <a href="http://www.seamframework.org/Community/TwoFreeChaptersFromSeamInActionAvailable#comment20624">Andy Conn</a></blockquote>

Writing <a href="http://www.mojavelinux.com/seaminaction">Seam in Action</a> has been intriguing, but extremely laborious for me. Therefore, when I read something like this, it makes it all worthwhile. Hell, it almost brings me to tears, like when gold medalists cry after having dedicated their lives to achieving the Olympic grail.</p>

<p>BTW, if you are wondering what is going on with Seam in Action, I am currently pushing it through copy editing. I am taking my time because I want it to be right.</p>]]></description>
      <guid isPermaLink="false">95@http://www.mojavelinux.com/</guid>
      <dc:subject>Seam in Action</dc:subject>
      <dc:date>2008-05-07T03:58:05-05:00</dc:date>
    </item>
        <item>
      <title>Avoid this common JSF mistake</title>
      <link>http://www.mojavelinux.com/blog/archives/2008/05/avoid_this_common_jsf_mistake/</link>
      <description><![CDATA[<p>Don't access the database in a method that feeds a UIData component! (e.g. <span style="font-family: monospace;">&lt;h:dataTable&gt;</span>) I see this <a href="http://java.dzone.com/articles/use-mediator-pattern-jsf-appli">mistake</a> being made <a href="http://www.developeriq.com/articles/2008/apr/08/using-database-jave-server-faces/">all the time</a>. It's bad advice and just plain bad practice. <strong>Don't do it!</strong></p>

<p>What most people don't realize (perhaps because they are not watching the SQL log output in their ORM tool) is that value expressions are resolved more than once during the JSF life cycle--usually <em>a lot</em> more than once. Every time the value expression that feeds the UIData component is resolved in this scenario, your database takes a hit. On top of that, the result set could change depending on what you are retrieving and how you are doing it.</p>

<p>I will present a brief example and then show how to fix it using Seam.</p>
]]><![CDATA[<p><a href="http://www.mojavelinux.com/blog/archives/2008/05/avoid_this_common_jsf_mistake/">Continue Reading...</a></p>]]></description>
      <guid isPermaLink="false">94@http://www.mojavelinux.com/</guid>
      <dc:subject>JavaServer Faces</dc:subject>
      <dc:date>2008-05-01T02:51:21-05:00</dc:date>
    </item>
        <item>
      <title>Heading to JavaOne 2008</title>
      <link>http://www.mojavelinux.com/blog/archives/2008/04/heading_to_javaone_2008/</link>
      <description><![CDATA[<p>I almost decided to pass on <a href="http://java.sun.com/javaone/sf/">JavaOne</a> this year, but the free <a href="http://developers.sun.com/events/communityone/">CommunityOne</a> pre-conference and the <a href="http://www.jboss.org/files/events/javaone2008terms.htm">JBoss Party</a> gave me reason enough to make the trip (and the effort). Attendance at CommunityOne gets you a free pass to the General Sessions and the pavilion on the first day of JavaOne. How could I pass on free?</p>

<p>I am looking forward to the JBoss party as an opportunity to meet with the Seam developers, most of whom I have only communicated with via e-mail. Aside from that, though, I am going to play it cheap and not actually pay for the conference pass. I have other plans for that money<sup>1</sup>. Still, I couldn't just sit this one out. Given that I have pretty much dedicated this entire last year to Seam--and Java in general--I am very excited to mingle with all the Java enthusiasts in San Francisco this year. Catch up with me if you want to chat about Seam (and perhaps I will hook you up with a Seam in Action coupon).</p>

<p><small><sup>1</sup> I need to purchase myself a computer so that I actually own the one I use.</small></p>]]><![CDATA[<p><a href="http://www.mojavelinux.com/blog/archives/2008/04/heading_to_javaone_2008/">Continue Reading...</a></p>]]></description>
      <guid isPermaLink="false">93@http://www.mojavelinux.com/</guid>
      <dc:subject>Java</dc:subject>
      <dc:date>2008-04-29T02:19:47-05:00</dc:date>
    </item>
        <item>
      <title>Spring into Seam series published</title>
      <link>http://www.mojavelinux.com/blog/archives/2008/04/spring_into_seam_series_published/</link>
      <description><![CDATA[<p>Needless to say, I have been busy. A fair amount of that time has been dedicated to the production of <a href="http://www.mojavelinux.com/seaminaction">Seam in Action</a>. But that doesn't mean I want to leave my readership left hanging while I push characters around on the screen. So today, I have news that you are going to be <em>thrilled</em> to hear...</p>

<p>As you may have gathered, I am a big fan of both Spring and Seam. In fact, when I first learned Seam, I found myself torn between the two. That was, until I discovered that it is possible to use them simultaneously, each for their strengths. To advocate this integration, I decided to spin off a portion of the online Spring integration chapter from <a href="http://www.mojavelinux.com/seaminaction">Seam in Action</a> as a three-part series for JavaWorld titled <em>Spring into Seam</em>, set to be released over a three week period. The <a href="http://www.javaworld.com/javaworld/jw-04-2008/jw-04-spring-seam.html">first part</a> in the series, released yesterday, explains how to build a Spring-Seam hybrid component, a managed object that benefits from functionality provided by both the Seam and Spring containers. In Part 2, you'll learn how to infuse state into traditionally stateless Spring beans by allowing them to reside in Seam contexts, and how to inject stateful Seam components into Spring beans. Finally, in Part 3, you'll learn how to integrate Seam and Spring at the most basic level by having them share a persistence manager.</p>

<p>The good news about this series is that not only do you get the content for free, but you also get it sooner in its final revised form! By the end of the series, you will walk away as an enlightened developer, no longer interested in the trite Spring versus Seam debates, but rather looking for more ways to extract value out of the unmatched features of both frameworks. To you, it's all gravy!</p>

This post is syndicated from <a href="http://www.amazon.com/gp/blog/post/PLNK3KQSDA96PTNHF">Dan Allen's Amazon Blog</a>.]]></description>
      <guid isPermaLink="false">92@http://www.mojavelinux.com/</guid>
      <dc:subject>Seam in Action</dc:subject>
      <dc:date>2008-04-18T14:18:44-05:00</dc:date>
    </item>
        <item>
      <title>Feast your eyes on all chapters!</title>
      <link>http://www.mojavelinux.com/blog/archives/2008/03/feast_your_eyes_on_all_chapters/</link>
      <description><![CDATA[<p>I am thrilled (and tremendously relieved) to announce that the full manuscript of <a href="http://www.amazon.com/gp/product/1933988401">Seam in Action</a> has been released through the <a href="http://www.manning.com/affiliate/idevaffiliate.php?id=647_105">Manning Early Access Program</a> (MEAP). This release entails a completely revamped <a href="http://www.manning-source.com/books/dallen/meap_dallench1.pdf">first chapter</a> and editorial improvements through chapter 7 based on the feedback from a very dedicated group of reviewers. I am expecting to have at least one more MEAP release that incorporates the feedback into the remaining chapters of the book.</p>

<p>If you are one of those folks who crave in depth information about Seam right now are willing to absorb the rough spots, then your wait is over! As one reviewer put it, "You did an amazing amount of work on this book." Yes, I agree.</p>

<p>For those of you who demand that last mile to be completed before reading it, you won't have to wait too much longer. The book has officially entered into production! I am dedicating what little energy I have left, supplemented by my relief team at Manning, to complete this book and get it into your hands before the lazy days of summer arrive.</p>

<p><em><strong>Note:</strong> Keep in mind that these are early release chapters. They have not yet been through the rigorous technical and copy editing process that you can expect to be done for the final manuscript.</em></p>]]><![CDATA[<p><a href="http://www.mojavelinux.com/blog/archives/2008/03/feast_your_eyes_on_all_chapters/">Continue Reading...</a></p>]]></description>
      <guid isPermaLink="false">90@http://www.mojavelinux.com/</guid>
      <dc:subject>Seam in Action</dc:subject>
      <dc:date>2008-03-18T12:41:44-05:00</dc:date>
    </item>
        <item>
      <title>Two free chapters from Seam in Action available!</title>
      <link>http://www.mojavelinux.com/blog/archives/2008/02/two_free_chapters_from_seam_in_action_available/</link>
      <description><![CDATA[<p>There are <em>a lot</em> of excellent frameworks that have been created to support the development of web-based Java applications. While it's great to have options, the fact that there are so many rests the burden of researching them and selecting one entirely on your shoulders. To help you with your decision, and to give you a preview of my book, <a href="http://www.amazon.com/gp/product/1933988401">Seam in Action</a>, I have made <a href="http://www.manning.com/affiliate/idevaffiliate.php?id=647_105">two chapters available for free</a> that offer a glimpse of Seam's most compelling features. The <a href="http://code.google.com/p/seaminaction">source code</a> presented in the book is also available as an open source project, so you can use it to follow along while you are reading the chapters.</p>
<p><em><strong>Note:</strong> Keep in mind that these are early release chapters. They have not yet been through the rigorous technical and copy editing process that you can expect to be done for the final manuscript.</em></p>]]><![CDATA[<p><a href="http://www.mojavelinux.com/blog/archives/2008/02/two_free_chapters_from_seam_in_action_available/">Continue Reading...</a></p>]]></description>
      <guid isPermaLink="false">87@http://www.mojavelinux.com/</guid>
      <dc:subject>Seam in Action</dc:subject>
      <dc:date>2008-02-23T23:30:06-05:00</dc:date>
    </item>
        <item>
      <title>SeamFramework.org: Seam&apos;s new identity</title>
      <link>http://www.mojavelinux.com/blog/archives/2008/02/seamframeworkorg_seams_new_identity/</link>
      <description><![CDATA[<p>Today, the Seam developers announced <a href="http://seamframework.org/">SeamFramework.org</a>, the official community site for the JBoss Seam project. This site is the new home of the Seam forums, knowledge base (wiki), and FAQs. It is also the heartbeat of the Seam development project, syndicating the latest SVN commits, JIRA activity, and developer blogs.</p>

<p>The Seam community site is exciting for a number of reasons:</p>
<ol>
<li><em>Proof.</em> First and foremost, the site is powered entirely by Seam, Hibernate, and RichFaces. This commitment is referred to as "eating your own dog food." You cannot sincerely advocate a web framework if you don't feel comfortable enough to use it for your own website. So, there you have it, <a href="http://www.manning.com/affiliate/idevaffiliate.php?id=647_105">Seam in Action</a>!</li>
<li><em>Identity.</em> Like it or not, Seam lies in the shadow of JBoss, which to some is a very dark cloud. The advent of SeamFramework.org is a coming out party for Seam, helping others to see that it is an individual project and not just a subsidiary of RedHat/JBoss stuck in the confines of the JBoss Labs. Hopefully, developers will take this opportunity to become members of the Seam community, contribute to its success, and steer its future.</li>
<li><em>Consolidation.</em> In a world bubbling over with information, it is nice to be able to get your daily dose from a single source. SeamFramework.org has a variety of feeds that you can choose to digest, ranging from forum topics and blogs to SVN commits and JIRA activity. In addition, the project information is all summarized in <a href="http://seamframework.org/Community/Contribute">one place</a>. Effort is even underway to make the site accessible to mobile clients, so keep your iPhone, Blackberry, or Nokia handy!</li>
<li><em>Community.</em> In open source software, nothing is more important than the community. The Seam project is enriched with brilliant minds, but no matter how much talent you throw at a project, there is no replacement for feedback from those who have used it, either successfully or unsuccessfully, in real world situations. Whether it be bug reports, exceptions encountered, caveats, best practices, or tips, this information needs to be communicated so that Seam can better serve developers in the field.</li>
</ol>

<p>The announcement of SeamFramework.org comes shortly after the release of 2.0.1.GA and the preparation of the 2.1 branch. <a href="http://seamframework.org/userRegister_d.seam">Get involved today</a> and help make the next iteration of Seam even better!</p>]]></description>
      <guid isPermaLink="false">86@http://www.mojavelinux.com/</guid>
      <dc:subject>Seam</dc:subject>
      <dc:date>2008-02-14T02:50:33-05:00</dc:date>
    </item>
        <item>
      <title>Destination: Seam in Action</title>
      <link>http://www.mojavelinux.com/blog/archives/2008/02/destination_seam_in_action/</link>
      <description><![CDATA[<p><a href="http://www.amazon.com/gp/product/1933988401"><img src="http://ecx.images-amazon.com/images/I/21-v4VvwCoL.jpg" alt="Seam in Action" class="avatar" border="0" align="left"/></a>Hey there! My name is Dan and I'll be your author, guide, and teacher on your journey through the vast landscape of <a href="http://www.seamframework.org">JBoss Seam</a>, which I present to you in my book, <a href="http://www.manning.com/affiliate/idevaffiliate.php?id=647_105">Seam in Action</a>. You are going to see exciting features like CRUD generation, components, contexts, bijection, conversations, workspaces, stateful page flows, JavaScript remoting, PDF creation and business processes. The list goes on. It's going to be a fun and informative adventure.</p>

<p>In your hands, you each have something called the EL. This device, or more accurately an expression language, gives you the power to access any of the components in Seam whenever you want them. The creators call it the glue that holds Seam together. It works by putting the name of a context variable between #{ and } and clicking to evaluate. The result is an instance of a Seam component. You can also append a path expression to the context variable. In that case, the possibilities are endless. Use it wisely.</p>

<p>I know that you have a lot of choices when it comes to technologies, and from there, additional choices when it comes to which book to read to learn about that technology. JBoss Seam is worth knowing because it touches on nearly every aspect of Java EE, yet manages to make every facet remarkably accessible. But, even if you are on the fence about Seam, I promise you that this book will be entertaining, informative, and worth the time you spend reading it. I don't just have a knack to inform, I have also been told I have the ability entertain (at least in prose).</p>

<p>Make plans today to read <a href="http://www.amazon.com/gp/product/1933988401">Seam in Action</a>. If it isn't yet available in print when you make those plans, join the <a href="http://www.manning.com/affiliate/idevaffiliate.php?id=647_105">Manning Early Access Program</a> to get your mouse on the electronic pre-release version. When you are done reading this book, you will each get a certificate in the form of knowledge and expertise that you can take with you on your next job interview or contract.</p>
<p style="font-size: smaller;">This post is syndicated from <a href="http://www.amazon.com/gp/blog/post/PLNK3KQSDA96PTNHF">Dan Allen's Amazon Blog</a>.</p>]]></description>
      <guid isPermaLink="false">89@http://www.mojavelinux.com/</guid>
      <dc:subject>Seam in Action</dc:subject>
      <dc:date>2008-02-05T00:28:35-05:00</dc:date>
    </item>
        <item>
      <title>The man behind the book</title>
      <link>http://www.mojavelinux.com/blog/archives/2008/02/the_man_behind_the_book/</link>
      <description><![CDATA[<p><p>I am fortunate to be publishing a book during a very progressive time for Amazon.com. I have just established my <a href="http://www.amazon.com/gp/pdp/profile/A194EA6FA6IEU1">AmazonConnect profile</a> and my <a href="http://www.amazon.com/gp/blog/A194EA6FA6IEU1">Amazon.com blog</a> to accompany my upcoming book, <a href="http://www.amazon.com/gp/product/1933988401">Seam in Action</a>. Entries posted to that blog appear on the Seam in Action product page at Amazon.com and are also available as an RSS feed. As an author, it is pretty amazing to have the ability to contribute content to the book's product page.</p></p>

<p><p>I like to think of the AmazonConnect program as "the other half of the story," going on the premise that all stories have two sides. Up until recently, readers have had there chance to laud or tear up a manuscript by posting a review. This feedback helps other potential readers tremendously with the decision to invest time and money into the book. Unfortunately, this situation leaves the author without a voice (aside from the manuscript itself). The AmazonConnect profile gives the author a chance to chime in, but also provides a way for the author to reach out to readers and reveal "the man (or woman) behind the book." I invite you to discover the author, Dan Allen, by subscribing to my Amazon.com blog. I will be posting topics there in addition to writing posts here on mojavelinux.com, so be sure to subscribe to both feeds.</p></p>]]></description>
      <guid isPermaLink="false">88@http://www.mojavelinux.com/</guid>
      <dc:subject>Seam in Action</dc:subject>
      <dc:date>2008-02-05T00:08:21-05:00</dc:date>
    </item>
        <item>
      <title>Generics are the best we&apos;ve ever had</title>
      <link>http://www.mojavelinux.com/blog/archives/2007/11/generics_are_the_best_weve_ever_had/</link>
      <description><![CDATA[<p>Several times during the <a href="http://www.nofluffjuststuff.com/conference/reston/2007/11/index.html">NFJS conference talks</a>, Ted Neward expressed his discontent, bordering on utter disgust, with Java 5 Generics. As he explained it, generics are not a guarantee. Bruce Eckel has given <a href="http://mindview.net/WebLog/log-0055">a talk</a> and written a <a href="http://www.mindview.net/WebLog/log-0050">blog entry</a> on the topic, dating back to 2004. If it gives you any indication, the title of Bruce's blog entry is <em>Generics Aren't</em>. What Ted helped to clarify is that by using reflection, it is possible to violate the restrictions that generics are designed to uphold. There isn't much to argue about there. However, I will make the point that while generics aren't, they do provide some intrinsic value. Let's start by defining the problem.</p>

<p>Java 5 Generics works by using "type erasure". This basically means that the information (read effort) that you put into your Java code in the form of angled brackets (no, not XML) is used by the compiler for type-safe checking, then promptly put down the garbage disposal. Thus, at runtime, the type guarantees are absent. It's not all bad though, because there is still a way to get at this information using reflection. But using reflection is a double edge sword since it is also the one responsible for allowing the types to be violated.</p>]]><![CDATA[<p><a href="http://www.mojavelinux.com/blog/archives/2007/11/generics_are_the_best_weve_ever_had/">Continue Reading...</a></p>]]></description>
      <guid isPermaLink="false">85@http://www.mojavelinux.com/</guid>
      <dc:subject>Java</dc:subject>
      <dc:date>2007-11-05T01:16:18-05:00</dc:date>
    </item>
    
  </channel>
</rss>
