<?xml version="1.0" encoding="UTF-8"?> <rss
version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:wfw="http://wellformedweb.org/CommentAPI/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
><channel><title>OcpSoft &#187; JSF2</title> <atom:link href="http://ocpsoft.com/cat/java/jsf2-java/feed/" rel="self" type="application/rss+xml" /><link>http://ocpsoft.com</link> <description>&#34;Simple Software&#34;</description> <lastBuildDate>Tue, 27 Jul 2010 15:07:50 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.0</generator> <item><title>How to JSF 2.0:  &#8211; render components outside of the form</title><link>http://ocpsoft.com/java/jsf2-java/how-to-jsf-2-0-render-components-outside-of-the-form/</link> <comments>http://ocpsoft.com/java/jsf2-java/how-to-jsf-2-0-render-components-outside-of-the-form/#comments</comments> <pubDate>Mon, 10 May 2010 04:48:00 +0000</pubDate> <dc:creator>Lincoln</dc:creator> <category><![CDATA[JSF2]]></category> <category><![CDATA[Seam]]></category><guid
isPermaLink="false">http://ocpsoft.com/?p=1320</guid> <description><![CDATA[Here&#8217;s a simple tip for all of you AJAX lovers using JSF 2.0. It is possible to render components that live outside of the form where your AJAX tag lives; actually, it&#8217;s possible to render any component by using it&#8217;s fully-qualified component ID. Just prefix the target ID with the naming-container separator character, usually &#8220;:&#8221;, [...]]]></description> <content:encoded><![CDATA[<p>Here&#8217;s a simple tip for all of you AJAX lovers using JSF 2.0. It <b>is</b> possible to render components that live outside of the form where your AJAX tag lives; actually, it&#8217;s possible to render any component by using it&#8217;s fully-qualified component ID.</p><p>Just prefix the target ID with the naming-container separator character, usually &#8220;:&#8221;, and provide the full name of the component as it is rendered on the HTML page.</p><p><div
class="wp_syntax"><div
class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;f:ajax</span> <span style="color: #000066;">execute</span>=<span style="color: #ff0000;">&quot;validatePasswords password @this&quot;</span> <span style="color: #000066;">render</span>=<span style="color: #ff0000;">&quot;:messages&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span></pre></div></div><p><span
id="more-1320"></span></p><p> Your component ID would look something like, <code>:namingContainer:myComponent</code>. Where the first &#8220;:&#8221; tells JSF that you want to start looking for the component at the UIViewRoot instance, or the very top level of the component tree.</p><h4>Here&#8217;s a more full fledged example:</h4><p><div
class="wp_syntax"><div
class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;html</span> <span style="color: #000066;">xml:lang</span>=<span style="color: #ff0000;">&quot;en&quot;</span> <span style="color: #000066;">lang</span>=<span style="color: #ff0000;">&quot;en&quot;</span> <span style="color: #000066;">xmlns</span>=<span style="color: #ff0000;">&quot;http://www.w3.org/1999/xhtml&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;h:messages</span> <span style="color: #000066;">id</span>=<span style="color: #ff0000;">&quot;messages&quot;</span> <span style="color: #000066;">globalOnly</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
&nbsp;
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;h4<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Select a username and password<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/h4<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;h:form</span> <span style="color: #000066;">id</span>=<span style="color: #ff0000;">&quot;registerForm&quot;</span> <span style="color: #000066;">prependId</span>=<span style="color: #ff0000;">&quot;false&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;h:inputText</span> <span style="color: #000066;">id</span>=<span style="color: #ff0000;">&quot;username&quot;</span> <span style="color: #000066;">value</span>=<span style="color: #ff0000;">&quot;#{registerBean.username}&quot;</span> <span style="color: #000066;">required</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
&nbsp;
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;h:inputText</span> <span style="color: #000066;">id</span>=<span style="color: #ff0000;">&quot;email&quot;</span> <span style="color: #000066;">value</span>=<span style="color: #ff0000;">&quot;#{registerBean.email}&quot;</span> <span style="color: #000066;">required</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
&nbsp;
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;h:inputSecret</span> <span style="color: #000066;">id</span>=<span style="color: #ff0000;">&quot;password&quot;</span> <span style="color: #000066;">value</span>=<span style="color: #ff0000;">&quot;#{registerBean.password}&quot;</span> <span style="color: #000066;">required</span>=<span style="color: #ff0000;">&quot;true&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;s:validateForm</span> <span style="color: #000066;">id</span>=<span style="color: #ff0000;">&quot;validatePasswords&quot;</span> <span style="color: #000066;">fields</span>=<span style="color: #ff0000;">&quot;password1=password password2=passwordConfirm&quot;</span> <span style="color: #000066;">validatorId</span>=<span style="color: #ff0000;">&quot;passwordConfirm&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
&nbsp;
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;h:inputSecret</span> <span style="color: #000066;">id</span>=<span style="color: #ff0000;">&quot;passwordConfirm&quot;</span></span>
<span style="color: #009900;">		<span style="color: #000066;">value</span>=<span style="color: #ff0000;">&quot;#{registerBean.passwordConfirm}&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;f:ajax</span> <span style="color: #000066;">execute</span>=<span style="color: #ff0000;">&quot;validatePasswords password @this&quot;</span> <span style="color: #000066;">render</span>=<span style="color: #ff0000;">&quot;:messages&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/h:inputSecret<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
&nbsp;
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;h:commandButton</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;submit&quot;</span> <span style="color: #000066;">id</span>=<span style="color: #ff0000;">&quot;submitRegister&quot;</span> <span style="color: #000066;">action</span>=<span style="color: #ff0000;">&quot;#{registerBean.doRegister}&quot;</span> <span style="color: #000066;">value</span>=<span style="color: #ff0000;">&quot;Create my account&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/h:form<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/html<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></div></div><p> Notice how the AJAX tag references the &#8220;:messages&#8221; component outside of the form &#8211; it&#8217;s as easy as that!</p><p><div
class="wp_syntax"><div
class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;f:ajax</span> <span style="color: #000066;">execute</span>=<span style="color: #ff0000;">&quot;validatePasswords password @this&quot;</span> <span style="color: #000066;">render</span>=<span style="color: #ff0000;">&quot;:messages&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span></pre></div></div><p>As an extra treat, this form is also using the <a
href="http://ocpsoft.com/java/jsf-2-0-cross-field-form-validation-simpl-in-reality/">multiple-component validation</a> feature from <a
target="_blank" href="http://seamframework.org/Seam3/FacesModule">Seam</a>, otherwise known as Cross-field validation, or XVal.</p><p>That&#8217;s all for today &#8212; enjoy, and as always. Happy coding!</p> ]]></content:encoded> <wfw:commentRss>http://ocpsoft.com/java/jsf2-java/how-to-jsf-2-0-render-components-outside-of-the-form/feed/</wfw:commentRss> <slash:comments>12</slash:comments> </item> <item><title>One year&#8217;s time</title><link>http://ocpsoft.com/opensource/one-years-time/</link> <comments>http://ocpsoft.com/opensource/one-years-time/#comments</comments> <pubDate>Thu, 28 Jan 2010 17:53:39 +0000</pubDate> <dc:creator>Derek</dc:creator> <category><![CDATA[JSF]]></category> <category><![CDATA[JSF2]]></category> <category><![CDATA[OCPSoft]]></category> <category><![CDATA[OpenSource]]></category> <category><![CDATA[PrettyFaces]]></category><guid
isPermaLink="false">http://ocpsoft.com/?p=788</guid> <description><![CDATA[It is amazing what can be done in exactly one year&#8217;s time.  January 17th will have been the 2nd anniversary since Lincoln Baxter and I started OcpSoft.  It&#8217;s been one seriously fun, and wild, ride with JavaServer Faces and the open-source community.  I want to take a moment to talk about my partner&#8217;s success story [...]]]></description> <content:encoded><![CDATA[<p>It is amazing what can be done in exactly one year&#8217;s time.  January 17th will have been the 2nd anniversary since Lincoln Baxter and I started OcpSoft.  It&#8217;s been one seriously fun, and wild, ride with <a
href="http://www.javaserverfaces.org">JavaServer Faces</a> and the open-source community.  I want to take a moment to talk about my partner&#8217;s success story and what he has accomplished in just <em>one</em> short year.</p><p><span
id="more-788"></span></p><h3>The Beginning</h3><p>When we started OcpSoft, we were working on what is now <a
title="ScrumShark" href="http://ocpsoft.com/scrumshark/" target="_blank">ScrumShark</a> &#8211; using JSF 1.2 , Hibernate, and many other technologies.  At first it was very overwhelming, challenging to figure out which technologies to use; though, even after we had chosen our technology stack, we fought with poor documentation, lack of support, and integration as we explored new features of the stack.</p><p>During that time Lincoln saw a need for pretty URLs, because what was currently on the market wasn&#8217;t intuitive, and was painful to work with.  The enhancements we requested weren&#8217;t getting approved or were too slow coming, even providing patches.  So Lincoln set out to do it himself, and as he puts it: &#8220;destroyed Thanksgiving 2008.&#8221;</p><h3>PrettyFaces</h3><p>Thanks to <a
href="http://ocpsoft.com/prettyfaces/">PrettyFaces</a>, Lincoln dug-in to JSF and started to really understand the inner workings of both problem and solution; within a few weeks of releasing version one, we were seeing many supporters.  Soon after, Lincoln was contacted by Dan Allen from JBoss/Red Hat, and started assisting him with an enhancement to JSF&#8217;s navigation system.</p><p>During that same time Lincoln convinced us &#8211; at OcpSoft &#8211; to start using JSF 2 Beta to build ScrumShark.  JSF 2 was undergoing continuous changes at that time, and the specification wasn&#8217;t even public, so we were seeing different results in our application every week.  Lincoln started posting the issues on the JSF 2 mailing list, and quickly became known as the JSF 2 tester, bug-finder.  Without <a
title="ScrumShark" href="http://ocpsoft.com/scrumshark/" target="_blank">ScrumShark</a>, and Lincoln willing to take a chance on a bleeding edge technology, I don&#8217;t think the JSF 2 team would have found and fixed all the bugs as fast as they did.  Not too long after this, he joined the JSF Expert Group and was presenting <a
href="http://ocpsoft.com/prettyfaces/jsfsummit-2009-prettyfaces-makes-an-appearance/" target="_blank">PrettyFaces at JSFSummit</a>.</p><h3>Congratulations Lincoln!</h3><p>He just got a job with <a
target="_blank" href="http://jboss.org">JBoss</a> at <a
target="_blank" href="http://www.redhat.com">Red Hat</a>, as a Senior Software Engineer. I am <em>proud </em>of of what my partner and best friend Lincoln has accomplished.</p> ]]></content:encoded> <wfw:commentRss>http://ocpsoft.com/opensource/one-years-time/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>JSF 1.2 Components (Book Review)</title><link>http://ocpsoft.com/opensource/jsf-1-2-components-book-review/</link> <comments>http://ocpsoft.com/opensource/jsf-1-2-components-book-review/#comments</comments> <pubDate>Wed, 20 Jan 2010 06:56:21 +0000</pubDate> <dc:creator>Lincoln</dc:creator> <category><![CDATA[JSF2]]></category> <category><![CDATA[OpenSource]]></category> <category><![CDATA[Technology]]></category> <category><![CDATA[JSF]]></category><guid
isPermaLink="false">http://ocpsoft.com/?p=983</guid> <description><![CDATA[As a vocal blogger, I feel responsible for promoting and sharing the good work of others, whether that be technology, creative work, or in this case: a book. I will take no exception to that philosophy when it comes to the JavaServer Faces framework. For a quick read, try the summary. If you are intrigued, [...]]]></description> <content:encoded><![CDATA[<p>As a vocal blogger, I feel responsible for promoting and sharing the good work of others, whether that be technology, creative work, or in this case: a book. I will take no exception to that philosophy when it comes to the <a
target="_blank" href="http://www.javaserverfaces.org">JavaServer Faces</a> framework. For a quick read, try the summary. If you are intrigued, read on! I hope you find this review valuable.<br
/> <span
id="more-983"></span></p><p><strong>In summary:</strong> I would recommend buying this reference if you are a consumer, designer, UI-developer who is working with existing component libraries, Facelets or JSF 2.0, and not so much focused on creating custom Java-components of your own. I don&#8217;t, for every-day web-site components, see why you would need much more than what is featured between the covers of this book. Ian Hlavats does a fantastic job of making bringing JSF to the everyday development setting.<br
/> <br/></p><table><tr><td><a
target="_blank" href="http://www.packtpub.com/jsf-1-2-components-develop-advanced-ajax-enabled-applications/book?utm_source=ocpsoft.com&#038;utm_medium=bookrev&#038;utm_content=blog&#038;utm_campaign=mdb_002041"><img
src="http://ecx.images-amazon.com/images/I/51zwgyza8HL._SL500_AA240_.jpg"></img></a></td><td><h4><a
target="_blank" href="http://www.packtpub.com/jsf-1-2-components-develop-advanced-ajax-enabled-applications/book?utm_source=ocpsoft.com&#038;utm_medium=bookrev&#038;utm_content=blog&#038;utm_campaign=mdb_002041">JSF 1.2 Components</a></h4><p>By Ian Hlavats<br
/> <br/><br
/> Download Chapter 2: <a
target="_blank" href="http://www.packtpub.com/files/7627-developing-jsf-components-sample-chapter-2-facelets-components.pdf">Facelets Components</a> as a PDF</td></tr></table><p><br/></p><h3>In detail:</h3><p>Initially hesitant to buy a reference on components, I have to admit that I was surprised to learn so much by reading through this book. As a member of the JavaServer Faces 2.0 expert group, and a full-time software engineer, components are not my strong-suit. If you&#8217;re at all like me, then you&#8217;re probably asking yourself the same question I did:</p><p>&#8220;What can I learn in this book that I can&#8217;t find on Google? JavaServer Faces has a huge online community, and there&#8217;s a lot of information available already.&#8221;</p><p>It&#8217;s a valid question, but you should keep reading because this book offers something important that I rarely find in blog entries or wikis: &#8220;features you wouldn&#8217;t think to look for; features that you wish you&#8217;d thought of, or don&#8217;t know how to make yourself.&#8221; I wish I had found this book when I started using JSF, because I&#8217;d probably have been more comfortable, and much more productive with our component side of the life-cycle, so to speak; I discovered features of the framework, and pre-made UI-tools that I wish I&#8217;d known about years ago.</p><h5>Things you&#8217;ll learn about:</h5><p>Modal windows, menus, wizards and workflows, AJAX anything with Ajax4JSF, i18n and localization, gCal-like schedules with Apache Tomahawk, multi-field validation, calendars, charts and graphs, file-uploads, user permissions/security, skinning, styling, and all major component libraries are covered in this book (save PrimeFaces, which gets a mere mention.)</p><p>If you think you&#8217;re looking at &#8220;Just another book on JSF component writing,&#8221; that&#8217;s not entirely the case. This book provides real solutions, real examples on how to get started writing JSF applications using existing component libraries and plug-ins. There are two types of chapters in this book: tutorials and references. The tutorials will get you up and running with a quick example, while the reference sections go in depth on usage of individual components within each library.</p><p>You&#8217;ll also (as a bonus, in my opinion) get some appetite-whetting information on the JBoss Seam framework, which is a user-friendly and business-oriented extension to the Java EE technologies. I didn&#8217;t get a very good picture of all of the concepts until I actually looked at the code samples (downloadable here, or just follow the link in the preface,) but that&#8217;s hardly a strong criticism; though, it may have helped if the code samples were more explicitly, frequently referenced.</p><h5>In the end &#8220;The title doesn&#8217;t lie&#8221;:</h5><ul><li>I haven&#8217;t seen a more comprehensive book on component libraries and component writing made available to date.</li><li>JSF2 component writing has been simplified, but if you want to supplement your app with everyday things like in-place editing, accordions, and more, you&#8217;re going to want good examples; this book provides examples in abundance (even examples of JSF2 EzComp, which is a dream to use. UI like it was meant to be)</li><li>Even if components and UI design are not your strong-point, that is exactly why you should read this book; it makes component-based design easy to understand, and easy to implement.</li></ul><p>The author covers many of the advancements in component writing and simplified configuration that are provided by JSF 2.0, but I would have liked to hear some information on the component behaviors model, and mention of integration with frameworks like CDI (JSR-299) and Spring; however, this is not entirely relevant to component writing, and plenty of information exists on sites like <a
target="_blank" href="http://www.javaserverfaces.org">www.javaserverfaces.org</a> or Google.</p><p>My one complaint is that for a book titled &#8220;JSF 1.2 Components,&#8221; it did not explain, or teach me how to create custom Java-based components, which are essential for complex behavior and interaction at some level. JSF 2.0 has done a good job of making Java-based components unnecessary, but this book is titled JSF 1.2 components, thus, I would have liked to see how to write a Java-based component in JSF 1.2.</p><div
class="featured" style="text-align: center;"> <a
target="_blank" href="http://www.packtpub.com/jsf-1-2-components-develop-advanced-ajax-enabled-applications/book?utm_source=ocpsoft.com&#038;utm_medium=bookrev&#038;utm_content=blog&#038;utm_campaign=mdb_002041">JSF 1.2 Components</a> on Packt Publishing<br
/> Download Chapter 2: <a
target="_blank" href="http://www.packtpub.com/files/7627-developing-jsf-components-sample-chapter-2-facelets-components.pdf">Facelets Components</a> as a PDF</div><h3>End notes:</h3><p> Make sure you check out <a
target="_blank" href="http://www.javaserverfaces.org">www.javaserverfaces.org</a>. It&#8217;s a great starting point and reference for JSF that you will undoubtably bookmark if doing a lot of work, and doing the work with this book. Also check out <a
href="http://ocpsoft.com/prettyfaces/">http://ocpsoft.com/prettyfaces/</a> for more information on Pretty URLs in JSF, and building client-facing JSF web applications.</p> ]]></content:encoded> <wfw:commentRss>http://ocpsoft.com/opensource/jsf-1-2-components-book-review/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>What a wild ride &#8211; My journey through OpenSource / JSF</title><link>http://ocpsoft.com/opensource/what-a-wild-ride-my-journey-through-opensource-jsf/</link> <comments>http://ocpsoft.com/opensource/what-a-wild-ride-my-journey-through-opensource-jsf/#comments</comments> <pubDate>Sat, 19 Dec 2009 23:21:47 +0000</pubDate> <dc:creator>Lincoln</dc:creator> <category><![CDATA[JSF2]]></category> <category><![CDATA[OpenSource]]></category><guid
isPermaLink="false">http://ocpsoft.com/?p=624</guid> <description><![CDATA[It was about one year prior to this article that I wrote “JSF2 is in good hands”, in which I spoke about the upcoming release of JavaServer™ Faces 2, and how the community had changed immensely in the few years I’d been using the tool. There were changes I wanted to make, and started making [...]]]></description> <content:encoded><![CDATA[<p>It was about one year prior to this article that I wrote “<a
href="http://ocpsoft.com/java/jsf2-in-good-hands/" target="_blank">JSF2 is in good hands</a>”, in which I spoke about the upcoming release of <a
href="http://www.javaserverfaces.org" target="_blank">JavaServer™ Faces 2</a>, and how the community had changed immensely in the few years I’d been using the tool. There were changes I wanted to make, and started making them by publishing an open source extension called PrettyFaces.</p><p><a
href="http://ocpsoft.com/prettyfaces/" title="SEO | Dynamic Parameters | Bookmarks | Navigation | JSF | JSF2 | UrlRewrite" target="_blank">PrettyFaces</a> lets you map Pretty URLs to any resource within a JSF-based web-application (eg: /example -> /faces/examples/page.xhtml). While this is stuff that other web-frameworks have been doing for years, (WordPress, Rails/Grails, etc) it’s stuff that has traditionally been hard using JavaServer Faces – until around November 2008, when the first release was published.</p><p>Now, I&#8217;m relatively new to this arena &#8211; I entered the open source community for the first time about four years ago, working on PHP and Perl modules. I&#8217;ve been using it, and appreciating it, for almost my entire life in the industry, but never giving back. I suppose one question that many people ask is, &#8220;Will working on open source software get me anywhere in my career?&#8221;<br
/> <span
id="more-624"></span></p><p><center><br
/><h2>Getting involved</h2><p></center></p><p>My answer is really a simple one, and may not be unique, but for me &#8220;it just doesn&#8217;t matter.&#8221; I do this because I enjoy it. It turns out, however, that working on open source software is not only extremely rewarding for me, but it is also having a big impact on my career. I do what I&#8217;m doing because I have a passion for it, and I think good things happen whenever you follow your passion.</p><p>Prove it? Well… during the first week of December 2009, I attended my first professional conference as a speaker, <a
href="http://jsfsummit.com" target="_blank">JSFSummit 2009</a> by <a
href="http://www.nofluffjuststuff.com/" target="_blank">NFJS</a>, and presented PrettyFaces &#8211; coming nearly one year ago to the day, when I released version 1.0 (now used on production servers around the world!) I consider that having an impact.  In a few months I&#8217;ll be presenting again at the <a
href="http://www.phillyemergingtech.com/speakers/8">Philadelphia Emerging Tech</a> conference (April 8-9, 2010.) These are opportunities I never would have had, if not for my involvement in open source.</p><p>I can only imagine what begins to happen as <a
href="http://ocpsoft.com/scrumshark/" target="_blank" title=" Open Source | Online Agile Project Management Tools">ScrumShark</a>(open source agile project management tools) starts to gain footing. PrettyFaces is one small extension for JSF; with something bigger, more powerful, the sky is the limit.</p><p><center><br
/><h2>Real Rewards</h2><p></center></p><p>For JSFSummit, I was flown to Orlando, stayed at the Loews Portofino Bay Hotel across the street from Universal MGM, and met some of not only the most interested developers, but also the most prominent figures in Java web-technology today. I met folks from Red Hat, SUN, Oracle, Scotia Bank, Children’s Hospital at Harvard, and more. Even more interestingly, I met a few people like myself: young, entrepreneurial, full time developers with a passion for creativity, and producing something for the world.</p><p><a
href="http://www.jsfsummit.com/conference/orlando/2009/12/speakers/cagatay_civici" target="_blank">Cagatay Civici</a> was someone I closely related to. He’s from Turkey, now living in London, only a year older than myself, and has created one of the simplest, most elegant component libraries – PrimeFaces – for JSF and JSF2. Like me, he works in his spare time to create something not just worthwhile, but something nobody else has done before. He does it well, and because he loves it.</p><p>The satin hotel greeted me with appeal of a little faux-Italian Portofino, “how did I get here?” I raced, as my black cap-toe shoe swung open the door to a double queen room with a bathroom big enough for a party. &#8220;Wow&#8230;&#8221;</p><p>I had worked &#8211; hard &#8211; for this, sometimes working as many as 8 hours a night after coming home from my full time job. I have to admit that part of me felt like pushing those double-queen beds together and jumping up and down on them. (There was no jumping, that would be highly unprofessional) After a night of food and conversation with <a
target="_blank" href="http://www.jsfsummit.com/conference/orlando/2009/12/speakers/dan_allen">Dan Allen</a> &#8211; the man who really got me involved in JSF2) and his lovely wife Sarah, I was ready to go for the day-one of the conference. This was the first time we&#8217;d ever met, and I was pumped!</p><div
class="featured"><table
width="100%"><tr><td
width="480px"><img
src="http://ocpsoft.com/wp-content/uploads/2009/12/portafino.jpeg" alt="" title="portafino" width="479" height="333" class="alignnone size-full wp-image-717" /></td><td><center>The hotel, a view from the bridge to Universal Studios. (I had dinner with Dan and Sarah in the white building on the far left.)</center></td></tr></table></div><p><center><br
/><h2>Day 1: Starting out strong</h2><p></center></p><p>My first presentation was on the first full day of the conference: “Seam and RestEasy – You haven&#8217;t seen REST yet,” and let me tell you, before preparing this presentation, I certainly hadn&#8217;t. Seam handles REST in a way that I&#8217;d never thought Java would provide. Dynamic, automatic, CRUD. I gave the first half – on REST principles, and Dan finished up with the Seam stuff – making Seam/REST look like a two-piece, tailored suit. I was amazed, actually, that the presentation went so well, given that we had just met and put it together in a few hours the previous night. (We did work on the slides and demos in advance, though.)</p><p>Talk about a rush – my first professional conference, and I was getting to meet people I&#8217;ve been hearing about in the industry for years: Ed Burns, Jim Driscoll, David Geary, Kito Mann, Andy Schwartz, and so many more.</p><p>I was caught in a summer storm of information, wild, over before I knew it: Holistic testing of JSF applications with Stan Silvert, my first presentation with Dan Allen, Polyglot JavaServer Faces with Kito Mann, Component Framework Primer for JSF with Andy Schwartz, <a
href="http://seamframework.org/Weld" target="_blank">CDI JSR-299/Weld</a> and the future of Seam with Dan Allen.</p><p>I&#8217;ll mention the points that “blew my mind,” and really I have to say that while all the speakers were excellent, the emerging technology that “took my cake&#8221; on day one was CDI. This is a place where Java EE is finally competing with Spring, by providing powerful contexts and dependency injection to the core Java container, even J2SE with Weld. I&#8217;m telling you, Spring is great, but CDI/Weld is serious competition. I plan on switching <a
href="http://ocpsoft.com/scrumshark/" target="_blank">http://scrumshark.com/</a> over from Spring to CDI. Weld took the best parts of Spring and Guice and put them together with the J2EE platform&#8230; wow!</p><p>Another night of drinks, this time with more of the J2EE community out on the patio of the hotel. Time for bed again.</p><p><center><br
/><h2>Day 2: The Main Event</h2><p></center></p><p>This was my day, and I was up bright at early – still, only six hours of sleep. Let me tell you, Jay Zimmerman, owner of the No Fluff Just Stuff conference tour, truly knows how to put on a conference. All meals were provided, incredibly balanced, and equaled only by some of the best restaurants I&#8217;ve been to.</p><p>I started the day off with an egg and sausage wrap, a bowl of fresh fruit, and a cup of coffee. The first session was <a
href="http://www.jsfsummit.com/conference/orlando/2009/12/speakers/david_geary" target="_blank">David Geary</a> – Killer Web apps with JSF2.0 Ajax. “Wow,” I thought, “this guy knows how to present!” I think every other line was a joke, but I wasn&#8217;t sure because he was so clearly explaining all of the topics; I&#8217;d hire him to train at my company any day.</p><p><a
href="http://www.jsfsummit.com/conference/orlando/2009/12/speakers/andy_schwartz" target="_blank">Andy Schwartz</a> presented JSF2 Component Behaviors Deep Dive, and with a whopping 180 slides, my head was packed with info by the end. Behaviors open up a whole new realm of component development. If you&#8217;ve ever played a role-playing game, behaviors are like enhancements that you can add on to any piece of armor or weapon, buffs, blessings, sockets, take your pick: plug-able, reusable behavior. I plan on taking advantage of them myself. Need a reusable javascript confirmation box? Make a behavior, use it on any component.</p><p><center><br
/><h2>PrettyFaces makes an appearance</h2><p></center></p><p>My presentation was the last of the day (read the <a
href="http://ocpsoft.com/prettyfaces/jsfsummit-2009-prettyfaces-makes-an-appearance/" target="_blank">slides</a>,) and let me tell you, I was prepared. For the last two weeks I had rehearsed (or read through my slides) almost every night, and with the Seam &#038; RestEasy presentation under my belt, any nervousness I thought I might have had was long gone. It was <i>ON NOW</i>.</p><p>With good questions from Conference Attendees and <a
href="http://www.javaserverfaces.org/specification/expert-group" target="_blank">JSF Expert Group</a> members alike, discussion was not lacking at any point. People were interested, moreso than I had expected, and I was impressed that several attendees had already been using PrettyFaces in their applications!</p><p>I felt truly rewarded to hear how PrettyFaces had helped solve business problems, and how much people loved using it. I heard, &#8220;It&#8217;s perfectly simple,&#8221; &#8220;It does what I expect,&#8221; and other great feedback.</p><p><center><br
/><h2>Day 3: The Big Goodbye</h2><p></center></p><p>The last day held only three sessions, and I chose &#8220;Rapid RIA Development with <a
href="http://primefaces.org/" target="_blank">PrimeFaces</a>,&#8221; presented by Cagatay Civici. This was truly a treat &#8211; as I mentioed before, Cagatay has started something amazing. Simple components with poweful functionality. A schedule component (that looks GOOD), an entire mock Mac OSX, and over 70 components: a shell console, charts, sliders, pickers, pluggable Ajax Drag &#038; Drop &#8211; all so easy that I felt like I could go write an app in minutes. This was my &#8220;wow&#8221; of the day; I think everyone was impressed.</p><p>Overall, I don&#8217;t think I&#8217;ve had a more exciting week in my career. This conference was almost a total surprise to me. I pushed to get myself in, and I had help, but let me tell you, &#8220;I&#8217;m glad I did it.&#8221; I&#8217;ve been struggling with the idea of, &#8220;Can I really do what I want, professionally,&#8221; and, &#8220;How do I get there?&#8221; And for me, the answers are simple: &#8220;Just do it.&#8221; Do what you love and good things will happen; share your ideas; don&#8217;t give up; make sure you take time to be human; go outside, meet people, make friends. We don&#8217;t have long to make a difference in the world (of ideas, love, music, charity, technology, &#8230;) so it&#8217;s best not to stop for one single moment.</p><p>If there&#8217;s one sentiment I can leave you, reading this far, it would be &#8211; <strong>Chase your passion</strong>.</p><p><center><br
/><h2>The Future Holds&#8230;</h2><p></center></p><p>My plans for the future involve taking Java EE, and turning it into a platform that is simple and intuitive enough to compete with PHP and Ruby for startup businesses. There&#8217;s so much power in Java EE, and I want people to know about it. Among my initiatives, since I&#8217;m already involved in JSF, was to give the new Java standard web-framework a home on the internet, a place where people can go for any information about JSF2: <a
href="http://ocpsoft.com/java/jsf-java/jsf2-engaging-the-community/" target="_blank">www.javaserverfaces.org</a>, and the expert group members have really stepped up behind this site to make it successful.</p><p>Java EE 6 is a revolutionary release of the J2EE platform, and with Bean Validations, JavaServer Faces 2, Contexts and Dependency Injection, and JAX-RS (REST web services,) it&#8217;s never been so powerful. It&#8217;s time to <a
href="http://glassfish.org" target="_blank">take another look</a>. We are already using everything but CDI in <a
href="http://ocpsoft.com/scrumshark/" target="_blank" title=" Open Source | Online Agile Project Management Tools">ScrumShark</a>, but that will be changing soon.</p><p><center><br
/><h2>Other articles looking back at JSFSummit 2009:</h2><p><a
href="http://in.relation.to/Bloggers/JSFSummit2009Postback">http://in.relation.to/Bloggers/JSFSummit2009Postback</a><br
/> <a
href="http://andyschwartz.wordpress.com/2009/12/17/jsf-2-on-the-road/">http://andyschwartz.wordpress.com/2009/12/17/jsf-2-on-the-road/</a><br
/> <a
href="http://in.relation.to/Bloggers/JSFSummitAComponentLibrariesPointOfView">http://in.relation.to/Bloggers/JSFSummitAComponentLibrariesPointOfView</a></p><p></center></p> ]]></content:encoded> <wfw:commentRss>http://ocpsoft.com/opensource/what-a-wild-ride-my-journey-through-opensource-jsf/feed/</wfw:commentRss> <slash:comments>5</slash:comments> </item> <item><title>A winter tale of Java Server Faces</title><link>http://ocpsoft.com/java/jsf2-java/a-classroom-tale-of-jsf2/</link> <comments>http://ocpsoft.com/java/jsf2-java/a-classroom-tale-of-jsf2/#comments</comments> <pubDate>Mon, 14 Dec 2009 15:27:53 +0000</pubDate> <dc:creator>Lincoln</dc:creator> <category><![CDATA[JSF2]]></category><guid
isPermaLink="false">http://ocpsoft.com/?p=628</guid> <description><![CDATA[As a member of the JSF 2 expert group, I&#8217;ve stated that my primary goal is to make JSF, and J2EE, more accessible to the community at large, to reach out and make sure that people&#8217;s voices are heard, and that what we are doing makes sense. I&#8217;ve only been part of the group for [...]]]></description> <content:encoded><![CDATA[<p>As a member of the JSF 2 <a
target="_blank" href="http://www.javaserverfaces.org/">expert group</a>, I&#8217;ve stated that my primary goal is to make JSF, and J2EE, more accessible to the community at large, to reach out and make sure that people&#8217;s voices are heard, and that what we are doing makes sense. I&#8217;ve only been part of the group for a little under a year, but I&#8217;ve met some pretty cool people, and you&#8217;d be surprised at how interested they all are to hear your story.</p><p>Here&#8217;s an email from David Geary (a long-time EG member) to the Expert Group, that I think paints a very nice picture of people&#8217;s reaction to JSF and JSF2, author of Core Java Server Faces (<a
target="_blank" href="http://horstmann.com/corejsf/">Core JSF</a>):<br
/> <span
id="more-628"></span><br
/><center></p><div
class="featured" style="text-align: justify; max-width: 600px;"><div
class="inside"> <i><p>I just got done with two days of training in Quebec City (you can follow my exploits, if you&#8217;re interested, at <a
target="_blank"  href="http://twitter.com/davidgeary">@davidgeary</a>). The first day was advanced JSF 1.2, and I watched students&#8217; eyes glaze over as I covered the complexities of custom components, renderers, converters, and validators. Java code, XML configuration, encoding, decoding, etc. &#8212; you know the drill. One of the developers had used Rails, and he looked downright depressed. But I knew day 2 would be different. Oh yeah.</p><p>Because day 2 was all JSF 2, and it was an entirely different story. I started with an overview of the new features in JSF 2, and then dove deeply into Facelets, templates, composite components, and Ajax. Students were blown away. Blown. Away.</p><p>What was a fairly sullen group on day one turned into a rambunctious group of excited developers on day two. Could they use JSF with WebLogic 10? they wanted to know. What about RichFaces, when will that support JSF 2?, they asked. Until we upgrade to JSF 2, can we do this templating stuff with the open source version of Facelets?. The Rails guy was all smiles. This is pretty cool, eh? I said (eh, if you don&#8217;t know, is Canadian for hunh). Oh yeah, they said. Oh yeah.</p><p>As I was covering JSF 2, I could feel the excitement building in the room. Lots of smiles, lots of laughter, and excited chatting and whispers in the incredibly beautiful language that is Quebec French, between students. It was really phenomenal.</p><p>Early in the morning, the blizzard started. I&#8217;m teaching class, and, out the window, snow is coming down like hell, in all different directions because of the fierce winds that accompanied a major snowstorm that dumped nearly a foot of snow on the ground during class. I started out with 11 students, and by the time I finished class at the end of the day, I had &#8230; 10 students! I&#8217;m telling you, those guys were mesmerized by JSF 2. Even though the weather gave them good reason to leave class early, only one guy, who had kids that he had to pick up because les ecoles etait fermer, left class early.</p><p>I got done with the material, and told them that they were free to go, that they probably should go because of the storm, but that I&#8217;d be happy to answer questions, and even with the intense blizzard raging outside, they all stuck around for another 1/2 hour, brainstorming with me about how they could upgrade from 1.2 to 2.0, given their current situation.</p><p>For me, this training, unlike any other I&#8217;ve ever done, was almost a religious experience. For us, it&#8217;s validation that all the hard work we&#8217;ve put into JSF 2 is paying off.</p><p>A bientot,<br/>David</p><p></i></div></div><p></center></p><p>Now, I &#8211; for one &#8211; find this exciting! This is another great sign that we&#8217;ve done things right with JSF2. The best part is, we are only going to keep improving. Want to get involved? Tweet your suggestion using #jsf2next &#8211; or put issues directly into the JSF2 Issue Tracker (all you need to do is register for, or use your existing java.net account.)</p><p>What does the future hold? That&#8217;s up to you to decide&#8230; For more information on JSF 2 features, a getting started guide, how to give feedback, get involved, and why JSF 2 is a leading web-framework, visit <a
href="www.javaserverfaces.org">www.javaserverfaces.org</a>.</p><p>You can read this email on David&#8217;s blog, here: <a
target="_blank" href="http://davidgearyblog.wordpress.com/">http://davidgearyblog.wordpress.com/</a></p><p><br/></p> ]]></content:encoded> <wfw:commentRss>http://ocpsoft.com/java/jsf2-java/a-classroom-tale-of-jsf2/feed/</wfw:commentRss> <slash:comments>2</slash:comments> </item> <item><title>JSF2 &#8211; Engaging the Community</title><link>http://ocpsoft.com/java/jsf-java/jsf2-engaging-the-community/</link> <comments>http://ocpsoft.com/java/jsf-java/jsf2-engaging-the-community/#comments</comments> <pubDate>Wed, 02 Dec 2009 20:43:57 +0000</pubDate> <dc:creator>Lincoln</dc:creator> <category><![CDATA[JSF]]></category> <category><![CDATA[JSF2]]></category><guid
isPermaLink="false">http://ocpsoft.com/?p=474</guid> <description><![CDATA[JSF2 is an amazing web-framework, and as part of our initiative to engage the community, Dan Allen, Andy Schwartz, Kito Mann, the rest of the Expert Group, and I have been putting together a &#8220;JSF Root Node&#8221; (as Ed Burns put it.) A website to be the first place people go to when they think [...]]]></description> <content:encoded><![CDATA[<p>JSF2 is an <b>amazing</b> web-framework, and as part of our initiative to engage the community, Dan Allen, Andy Schwartz, Kito Mann, the rest of the Expert Group, and I have been putting together a &#8220;JSF Root Node&#8221; (as Ed Burns put it.) A website to be the first place people go to when they think of JSF.</p><p><span
id="more-474"></span></p><div
class="featured"><center></p><h3><a
href="http://www.javaserverfaces.org" target="_blank">www.javaserverfaces.org</a></h3><p>(note: &#8220;www&#8221;, which is required at this time.)<br
/></center></div><h1>Goals of the site</h1><ul><li>Provide a definitive starting point for users to get involved with JSF.</li><li>Provide information &#8220;About JSF&#8221;, Information about the Spec, &#8220;Getting Started&#8221;, &#8220;Documentation&#8221;, &#8220;FAQ&#8221;, Community Involvement, and anything else that we all think necessary to engage and promote our user-base.</li><li>The site will &#8220;out-link&#8221; as appropriate to additional resources.</li><li>Promote ourselves as a competitive/welcoming solution in the Java-web framework community, both at the corporate and consumer/developer level.</li></ul><h1>Intent:</h1><p>We intend for this site to be comparable to http://php.net and http://grails.org, to look and feel attractive, and to really draw people into the JSF world. There are some resources on the way to help get this shell/stopgap site off of google sites, and on to a real web-server, with real functionality, and a smooth look &#038; feel.</p><p>It&#8217;s my personal goal to get this site written using JSF itself, and to make it the product of all of our ideas put together.</p><p>This site is for all of us, to benefit all of us, and the initial announcement is a little late. But if people ask how they can get started with JSF, we should all be pointing them to the same place: <b>www.javaserverfaces.org</b></p><h1>Why now?</h1><p>Well it&#8217;s simple: Yes, we&#8217;re late, but better late than never. With JSF2 just released, and the <a
href="http://www.jsfsummit.com">JSFSummit Conference</a> under-way, what better time to get people together around JSF2 during these two notable events?</p><p>I won&#8217;t get started about why this wasn&#8217;t taken care of when SUN first released JSF 1.0, but long story short, it&#8217;s getting fixed now.</p><h1>What should we include on this site?</h1><p>This depends on you, the community. Since JSF is the new Java EE 6 standard web-application framework, more and more people are going to be getting involved. What do you want to know? How can we best help you get started? Please let us know, and enjoy <img
src='http://ocpsoft.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> Like I said, JSF2 is a spectacular web framework &#8211; post your comments here and let us know what information you want to see about it.</p><h1>How to get started in 5 minutes:</h1><p>This is so simple, just check it out: <a
href="http://www.javaserverfaces.org/get-started" target="_blank">http://www.javaserverfaces.org/get-started</a></p><p><br/></p> ]]></content:encoded> <wfw:commentRss>http://ocpsoft.com/java/jsf-java/jsf2-engaging-the-community/feed/</wfw:commentRss> <slash:comments>15</slash:comments> </item> <item><title>JSF2: How to add the magic of EL (EL2) to JSF</title><link>http://ocpsoft.com/java/jsf2-java/jsf2-how-to-add-the-magic-of-el-el2-to-jsf/</link> <comments>http://ocpsoft.com/java/jsf2-java/jsf2-how-to-add-the-magic-of-el-el2-to-jsf/#comments</comments> <pubDate>Tue, 15 Sep 2009 02:54:29 +0000</pubDate> <dc:creator>Lincoln</dc:creator> <category><![CDATA[JSF2]]></category><guid
isPermaLink="false">http://ocpsoft.com/?p=164</guid> <description><![CDATA[Ever wonder why you can&#8217;t pass parameters to EL method-expressions? Well, now you can, and it&#8217;s easy to incorporate! This quick guide assumes you are using Maven. And is a followup to the post: h:dataTable vs ui:repeat &#8211; how to get the selected row. Get the EL dependencies through maven You can get EL2 here, [...]]]></description> <content:encoded><![CDATA[<p>Ever wonder why you can&#8217;t pass parameters to EL method-expressions? Well, now you can, and it&#8217;s easy to incorporate!</p><p><span
id="more-164"></span></p><p>This quick guide assumes you are using <a
href="http://maven.apache.org/">Maven</a>. And is a followup to the post: <a
href="http://ocpsoft.com/java/jsf-java/jsfs-hdatatable-vs-uirepeat-how-to-get-the-selected-row/">h:dataTable vs ui:repeat &#8211; how to get the selected row</a>.</p><h2>Get the EL dependencies through maven</h2><p>You can get EL2 here, just include the desired repository and implementation:</p><div
class="wp_syntax"><div
class="code"><pre class="xml" style="font-family:monospace;">		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;repository<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
			<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;id<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>sun<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/id<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
			<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;url<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>http://download.java.net/maven/2/<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/url<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/repository<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;dependency<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
			<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;groupId<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>javax.el<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/groupId<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
			<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;artifactId<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>el-api<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/artifactId<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
			<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;version<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>2.2<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/version<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/dependency<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;dependency<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
			<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;groupId<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>org.glassfish.web<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/groupId<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
			<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;artifactId<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>el-impl<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/artifactId<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
			<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;version<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>2.2<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/version<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/dependency<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></div></div><h2>Configuring Faces to use the new ExpressionFactory</h2><p>Then register EL in web.xml</p><div
class="wp_syntax"><div
class="code"><pre class="xml" style="font-family:monospace;">	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;context-param<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;param-name<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>com.sun.faces.expressionFactory<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/param-name<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;param-value<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>com.sun.el.ExpressionFactoryImpl<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/param-value<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/context-param<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></div></div><h2>That&#8217;s it! You should now be able to pass parameters like a pro.</h2><div
class="wp_syntax"><div
class="code"><pre class="xml" style="font-family:monospace;">	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;h:commandButton</span> <span style="color: #000066;">value</span>=<span style="color: #ff0000;">&quot;Save&quot;</span> <span style="color: #000066;">action</span>=<span style="color: #ff0000;">&quot;#{taskController.saveTaskAjax(cc.attrs.story, cc.attrs.task)}&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;f:ajax</span> <span style="color: #000066;">execute</span>=<span style="color: #ff0000;">&quot;taskBlock&quot;</span> <span style="color: #000066;">render</span>=<span style="color: #ff0000;">&quot;taskBlock&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/h:commandButton<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
&nbsp;
	<span style="color: #808080; font-style: italic;">&lt;!-- or --&gt;</span>
&nbsp;
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;h:commandLink</span> <span style="color: #000066;">id</span>=<span style="color: #ff0000;">&quot;removeTask&quot;</span> <span style="color: #000066;">title</span>=<span style="color: #ff0000;">&quot;remove&quot;</span> <span style="color: #000066;">styleClass</span>=<span style="color: #ff0000;">&quot;m5t&quot;</span></span>
<span style="color: #009900;">		<span style="color: #000066;">rendered</span>=<span style="color: #ff0000;">&quot;#{cc.attrs.deletable}&quot;</span></span>
<span style="color: #009900;">		<span style="color: #000066;">immediate</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000066;">onclick</span>=<span style="color: #ff0000;">&quot;return confirm('Really delete this task?');&quot;</span></span>
<span style="color: #009900;">		<span style="color: #000066;">action</span>=<span style="color: #ff0000;">&quot;#{taskController.removeTask(cc.attrs.story, cc.attrs.task)}&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
			<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;f:ajax</span> <span style="color: #000066;">execute</span>=<span style="color: #ff0000;">&quot;@this&quot;</span> <span style="color: #000066;">render</span>=<span style="color: #ff0000;">&quot;@form&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
			[remove]
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/h:commandLink<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></div></div><p><br/></p> ]]></content:encoded> <wfw:commentRss>http://ocpsoft.com/java/jsf2-java/jsf2-how-to-add-the-magic-of-el-el2-to-jsf/feed/</wfw:commentRss> <slash:comments>7</slash:comments> </item> </channel> </rss>
<!-- Served from: ocpsoft.com @ 2010-07-29 17:18:04 by W3 Total Cache -->