<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xml:base="http://java.sys-con.com"  xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
 <title>Latest News from JAVA Developer&#039;s Journal</title>
 <link>http://java.sys-con.com/</link>
 <description>Latest News from JAVA Developer&#039;s Journal</description>
 <language>en</language>
 <copyright>Copyright 2009 Ulitzer.com</copyright>
 <generator>Ulitzer.com</generator>
 <lastBuildDate>Fri, 20 Nov 2009 20:16:25 EST</lastBuildDate>
 <docs>http://backend.userland.com/rss</docs>
 <ttl>360</ttl>
 <image> <title>Latest News from JAVA Developer&#039;s Journal</title>
 <url>http://gemsres.com/section/1/jdj-mag-logo-145(1).gif</url>
 <link>http://java.sys-con.com/</link>
</image>
<item>
 <title>Performance Tuning Essentials for Java</title>
 <link>http://java.sys-con.com/node/1100244</link>
 <description>In light of today’s compressed development cycles, multi-tiered application architectures and complex technologies, many organizations are challenged to get reliable yet scalable enterprise Java applications out the door in a timely manner. Devoting a small amount of energy throughout the development process to identify, address, and correct performance obstacles can lower the risks and costs associated with poorly performing applications over the life of the code.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1100244&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Thu, 19 Nov 2009 18:00:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1100244</guid>
 <comments>http://java.sys-con.com/node/1100244#feedback</comments>
</item>
<item>
 <title>Internet Marketing Essentials: 4-Part Series</title>
 <link>http://java.sys-con.com/node/1186522</link>
 <description>Many B2B companies know that they should be incorporating an ongoing social media campaign into their arsenal of tactics to generate leads and sales. But, as a business owner or marketing professional, half the battle is trying to get your head around the social media wave, the crushing amount of information about it, where to even begin, and how to make it all fit into your marketing plans. The great news is that being successful at Internet marketing does not need to be as complicated as others may sometimes make it out to be. It will, however, require some start-up time and dedication to get a solid working plan in place. Here&#039;s the thing. The key to effective and profitable Internet and online marketing requires an integrated approach, utilizing the right tools and applying them with consistent effort.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1186522&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Wed, 18 Nov 2009 13:00:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1186522</guid>
 <comments>http://java.sys-con.com/node/1186522#feedback</comments>
</item>
<item>
 <title>A Step-by-Step Guide to dynaTrace AJAX Edition</title>
 <link>http://java.sys-con.com/node/1190112</link>
 <description>The dynaTrace AJAX Edition has been out there as an Alpha for a couple of weeks. It gave you the first impression what was to come. All the feedback we have received (like that from Steve Souders,  and all that has come in via the contact form and the online forum) in that time made it possible to improve the tool from its early versions to its first &quot;official&quot; release version.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1190112&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Tue, 17 Nov 2009 15:15:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1190112</guid>
 <comments>http://java.sys-con.com/node/1190112#feedback</comments>
</item>
<item>
 <title>JReport Supports Eclipse and Cloud Computing</title>
 <link>http://java.sys-con.com/node/1188820</link>
 <description>Jinfonet Software announces the General Availability of JReport 9.1, providing JReport Cloud and JReport Designer for Eclipse. JReport Cloud provides agility for rapidly and inexpensively re-provisioning infrastructure resources, greatly reduces the cost on hardware, software, and services when users pay only for what they use.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1188820&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Mon, 16 Nov 2009 17:30:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1188820</guid>
 <comments>http://java.sys-con.com/node/1188820#feedback</comments>
</item>
<item>
 <title>JetBrains Releases RubyMine 2.0</title>
 <link>http://java.sys-con.com/node/1188297</link>
 <description>JetBrains have announced the general availability of RubyMine 2.0, a powerful IDE for Ruby and Rails development. RubyMine&#039;s second major release this year delivers many additions and improvements and is a free upgrade for all existing users, according to the &quot;year of free updates&quot; licensing policy.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1188297&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Mon, 16 Nov 2009 11:21:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1188297</guid>
 <comments>http://java.sys-con.com/node/1188297#feedback</comments>
</item>
<item>
 <title>Cloud Computing Can Revitalize Your Career as Software Developer</title>
 <link>http://java.sys-con.com/node/1180779</link>
 <description>Everyone knows that the longevity and ultimate success of a platform lies in the developers willing to create on that platform. Creating a healthy developer ecosystem in which both the developer and the platform vendor can grow and prosper is very important. No one knows this better than Microsoft. It has long been their mantra that “developers, developers, developers” are the key to success. With most of the new large scale websites and platforms being launched on open source platforms and now the cloud, this is becoming even more important.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1180779&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Sun, 15 Nov 2009 02:45:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1180779</guid>
 <comments>http://java.sys-con.com/node/1180779#feedback</comments>
</item>
<item>
 <title>MySQL + Novell??</title>
 <link>http://java.sys-con.com/node/1186064</link>
 <description>MySQL co-developer Monty Widenius, said to have the business sense of a child by MySQL’s old management, and his hired help Florian Mueller, who made a killing on his MySQL stock when Sun lost its mind and bid a billion dollars for the Scandinavian company, paying 20 times revenues, are now insisting that Oracle should be made to divest MySQL so it can take over a fading Sun. &lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1186064&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Fri, 13 Nov 2009 16:00:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1186064</guid>
 <comments>http://java.sys-con.com/node/1186064#feedback</comments>
</item>
<item>
 <title>Making the Impossible Easy: Failover for Any Application</title>
 <link>http://java.sys-con.com/node/1182809</link>
 <description>If your systems require constant accessibility, you know that application failover is an essential function for automatically and transparently redirecting requests to an alternate server in the case of a failure or downtime. Several options exist for ensuring high availability for your mission-critical applications. Those options may be hardware- or software-based, and may also vary considerably in terms of project or enterprise scope and in terms of cost and complexity.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1182809&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Wed, 11 Nov 2009 17:30:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1182809</guid>
 <comments>http://java.sys-con.com/node/1182809#feedback</comments>
</item>
<item>
 <title>TheLadders.com Recruits 3PAR and Saves on Storage</title>
 <link>http://java.sys-con.com/node/1180778</link>
 <description>3PAR, the leading global provider of utility storage, announced that TheLadders.com cut their total cost of storage in half by replacing their legacy storage infrastructure with 3PAR Utility Storage. The online job search website deployed 3PAR Utility Storage in conjunction with server virtualization from VMware as part of a datacenter virtualization initiative. This initiative reduced the company’s storage capacity requirements by 66%, which also reduced storage administration time. In addition, by consolidating onto a single, highly virtualized 3PAR InServ Storage Server, TheLadders.com was able to eliminate the use of separate arrays for different applications and reliance on costly consulting services.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1180778&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Wed, 11 Nov 2009 11:00:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1180778</guid>
 <comments>http://java.sys-con.com/node/1180778#feedback</comments>
</item>
<item>
 <title>VMware Takes Another Whack at Desktop Virtualization</title>
 <link>http://java.sys-con.com/node/1177128</link>
 <description>VMware figures to push virtualization onto more desktops with the release next week of its next-generation View 4.0, advertised as the only purpose-built desktop virtualization solution in the industry. 

The gussied-up vSphere-based widgetry, a gateway to the desktop as a managed service, is supposed to overcome the barriers of user experience, cost and scale that have so far limited the adoption of desktop virtualization to what VMware calls a “small niche group of industries.” 

VMware claims View’s performance will match the most demanding environment while reducing desktop TCO by as much as 50%. 

&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1177128&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Mon, 09 Nov 2009 17:15:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1177128</guid>
 <comments>http://java.sys-con.com/node/1177128#feedback</comments>
</item>
<item>
 <title>Sun Revenues Drop 25%</title>
 <link>http://java.sys-con.com/node/1178639</link>
 <description>Poor beaten-up Sun Microsystems confided the financial results of its September quarter to the SEC on Friday and they weren’t pretty. Sun was supposed to be part of Oracle by now and not washing its linen in public anymore but the European Commission hasn’t sanctioned the union, and isn’t expected to now unless Oracle does something about Sun property MySQL. What the EC wants exactly isn’t clear.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1178639&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Mon, 09 Nov 2009 17:00:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1178639</guid>
 <comments>http://java.sys-con.com/node/1178639#feedback</comments>
</item>
<item>
 <title>Intalio Announces Jetty 7</title>
 <link>http://java.sys-con.com/node/1178287</link>
 <description>Intalio, the Enterprise Cloud Company, today announced the immediate availability of Jetty 7, the leading lightweight open source Java application server. The new release includes features and capabilities that extend Jetty&#039;s reach into mission-critical environments, as well as support its deployment on top of cloud computing platforms.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1178287&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Mon, 09 Nov 2009 17:00:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1178287</guid>
 <comments>http://java.sys-con.com/node/1178287#feedback</comments>
</item>
<item>
 <title>Focus on Java Mobility</title>
 <link>http://java.sys-con.com/node/1178776</link>
 <description>For several months now a subset of the JCP&#039;s Executive Committees has been meeting as the Java ME Working Group to address Java ME-specific matters. In this column I&#039;ll focus on Java ME and on some of the issues that the Working Group has been discussing. (To follow our activities, check out our bulletin board at jcp.org.) &lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1178776&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Mon, 09 Nov 2009 16:15:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1178776</guid>
 <comments>http://java.sys-con.com/node/1178776#feedback</comments>
</item>
<item>
 <title>GoGrid &amp; GigaSpaces Join Forces </title>
 <link>http://java.sys-con.com/node/1176785</link>
 <description>GigaSpaces and GoGrid have been strategic partners for quite a while. This week, we jointly announced a new technology partnership aimed at offering Java and .NET as a PaaS solution. To further explain our combined solution, there is a webinar slotted for October 14th where Guy Nirpaz (EVP of R&amp;#38;D at GigaSpaces) and Paul [...]&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1176785&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Sat, 07 Nov 2009 17:30:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1176785</guid>
 <comments>http://java.sys-con.com/node/1176785#feedback</comments>
</item>
<item>
 <title>Economy Beginning To Accelerate: Cisco CEO</title>
 <link>http://java.sys-con.com/node/1176434</link>
 <description>Cisco CEO John Chambers, who has turned into something of an economic oracle probably because he is more in command of his catbird seat than most big-time CEOs, said Wednesday when Cisco reported its quarterly results that the economy hit a “clear tipping point” before mid-summer and is now accelerating worldwide, enough for Cisco itself to start cautiously spending again. He’s planning targeted hiring. &lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1176434&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Fri, 06 Nov 2009 15:45:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1176434</guid>
 <comments>http://java.sys-con.com/node/1176434#feedback</comments>
</item>
<item>
 <title>Big Data Kills 30-Year-Old Market</title>
 <link>http://java.sys-con.com/node/1176463</link>
 <description>According to Aster Data, applications need to go to “Big Data,” not the other way around. And to do that the company’s got a massively parallel data-application server that can embed applications inside a massively scalable MPP data warehouse and analyze petabytes of data – or terabytes, if that’s all you’ve got – ultra-fast. Apps are automatically parallelized for scale; users can take their existing Java, C, C++, C#, .NET, Perl and Python applications, MapReduce-enable them and push them down into the data. &lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1176463&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Fri, 06 Nov 2009 14:20:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1176463</guid>
 <comments>http://java.sys-con.com/node/1176463#feedback</comments>
</item>
<item>
 <title>Mac File Recovery</title>
 <link>http://java.sys-con.com/node/1169439</link>
 <description>HFS Wrapper is a popular and reliable Mac OS X file system. The HFS+ volume could be made to contain within the HFS file system volume in a way that make it look like the HFS volume and not the HFS+ volume to your system&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1169439&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Thu, 05 Nov 2009 12:30:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1169439</guid>
 <comments>http://java.sys-con.com/node/1169439#feedback</comments>
</item>
<item>
 <title>EC to Object to Oracle + Sun: FT</title>
 <link>http://java.sys-con.com/node/1173026</link>
 <description>The European Commission is about to object formally to Oracle’s multibillion-dollar acquisition of Sun because Oracle is hanging tough and refusing to make any concessions concerning the open source database MySQL, a potential Oracle rival as the EC sees it, according to the Financial Times. The paper says a statement of objection (SO) could be issued in the next few days unless one side or the other blinks.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1173026&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Wed, 04 Nov 2009 16:45:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1173026</guid>
 <comments>http://java.sys-con.com/node/1173026#feedback</comments>
</item>
<item>
 <title>3Leaf Makes x86 Boxes into SMP Cloudware</title>
 <link>http://java.sys-con.com/node/1172526</link>
 <description>3Leaf Systems, the well-funded start-up, dropped its fig leaf Tuesday and took a running jump into the pools of memory, I/O and cache that it can construct and deconstruct at will based on the application, creating scale-up shared-memory SMP systems the likes of mainframes, proprietary mid-range machines and pricey RISC-based Unix boxes out of racks of cheap and dirty two-socket scale-out x64 systems. &lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1172526&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Wed, 04 Nov 2009 12:30:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1172526</guid>
 <comments>http://java.sys-con.com/node/1172526#feedback</comments>
</item>
<item>
 <title>Altova Delivers Version 2010 of Its MissionKit Tool Suite</title>
 <link>http://java.sys-con.com/node/1169494</link>
 <description>Altova, creator of XMLSpy, today announced the availability of Version 2010 (v2010) of the Altova MissionKit®, an integrated suite of XML, database, and UML tools. Version 2010 delivers over 70 of customers&#039; &quot;most wanted&quot; features across the product line, from support for new technologies like WSDL 2.0 in XMLSpy and MapForce®, JSON in XMLSpy, and SysML in UModel®, to enhanced functionality for working with XBRL in XMLSpy, a completely new stylesheet design option in StyleVision®, and much more. For users working on the newest version of the Microsoft® Windows® platform, Version 2010 is also compatible with Windows 7.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1169494&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Tue, 03 Nov 2009 09:30:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1169494</guid>
 <comments>http://java.sys-con.com/node/1169494#feedback</comments>
</item>
<item>
 <title>icloud Launches New Desktop, Sharing and Super Search in the Cloud</title>
 <link>http://java.sys-con.com/node/1168677</link>
 <description>icloud has announced the launch of its improved desktop with Super Search and a new innovative start menu. Super Search integrates many of the most popular services on the internet with simultaneous search of your private files in the cloud. It has never before been more convenient to find what you are looking for. This major release of icloud also introduces Universal Sharing. Decide what to share, who you want to share with, and icloud will find the easiest way to reach them. &lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1168677&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Mon, 02 Nov 2009 13:45:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1168677</guid>
 <comments>http://java.sys-con.com/node/1168677#feedback</comments>
</item>
<item>
 <title>Performance Considerations in Distributed Applications </title>
 <link>http://java.sys-con.com/node/1167053</link>
 <description>Distribution and communication between applications and services is a central concept in modern application architectures. In order to profit from distribution you have to keep some basic principles in mind – otherwise you can easily run into performance and scalability problems. During development these problems often do not surface.  Then suddenly in load testing or production you might then realize that your chosen software architecture does not support the required performance and scalability requirements. In this post we will look at major points to keep in mind when building distributed applications.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1167053&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Mon, 02 Nov 2009 13:45:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1167053</guid>
 <comments>http://java.sys-con.com/node/1167053#feedback</comments>
</item>
<item>
 <title>Umoo Opens Private Beta to Launch Social Gaming Tournaments</title>
 <link>http://java.sys-con.com/node/1164904</link>
 <description>Today is finally the day that Umoo tournaments is coming out of private beta and into the public arena. I can now set up my own tournaments with a larger crowd, maybe I can push the magic “Invite my Facebook friends button’. Currently, I mostly play Fun games, without any entry fee that is, but I am itching to do the real game. For a few bucks I can make some real money with this game. We are interviewing Umoo players and some of them make a lot of money on Umoo. Surprisingly, they make more money than I ever made juggling my 401K account on the real stock market. However, after playing for a couple of weeks now, I have concluded, I am not going to quit my day job just yet.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1164904&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Thu, 29 Oct 2009 17:30:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1164904</guid>
 <comments>http://java.sys-con.com/node/1164904#feedback</comments>
</item>
<item>
 <title>3Tera Lowers the Cost of Cloud Operation for Service Providers</title>
 <link>http://java.sys-con.com/node/1164782</link>
 <description>AppLogic 2.7 integrates server, storage and networking virtualization, hardware operations, volume management via highly-available integrated IP SAN, advanced network security, orchestration and multi-service operations into one turn-key cloud computing system. Because of this integration, AppLogic offers the industry&#039;s lowest cost of operation available for enterprises and datacenter operations.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1164782&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Thu, 29 Oct 2009 13:45:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1164782</guid>
 <comments>http://java.sys-con.com/node/1164782#feedback</comments>
</item>
<item>
 <title>Is Email Dying?</title>
 <link>http://java.sys-con.com/node/1159373</link>
 <description>Have we reached the point where email’s influence over our electronic lives is waning? It is hard to imagine, especially for those of us who grew up in the minicomputer/PC era. For two generations, email was the killer application. It delivered information reliably and within a few minutes. But today the properties that made email so attractive for so long are now a liabiliity. “A few minutes” for a response is so last year, driven in no small part by texting and cell phone ubiquity. At the same time this was happening, wikis, blogs and social networks have begun to erode email’s document exchange role. The notion of sharing photos or a slide presentation using email attachments is becoming quaint.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1159373&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Thu, 29 Oct 2009 13:00:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1159373</guid>
 <comments>http://java.sys-con.com/node/1159373#feedback</comments>
</item>
<item>
 <title>Getting Past Gate Keepers</title>
 <link>http://java.sys-con.com/node/1148132</link>
 <description>By Tom Hopkins
In business situations, when you are trying to reach the person who has the authority to make decisions regarding your product you are very likely to have to go through one or more people before reaching that person. For the sake of efficiency, there will likely be a receptionist and/or assistant who takes the initial calls for the decision-maker.
It&amp;#8217;s important that you realize most assistants are taught to protect decision-makers. Or, shall we say, screen calls so the decision-makers only speak with the [...]&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1148132&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Thu, 29 Oct 2009 11:15:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1148132</guid>
 <comments>http://java.sys-con.com/node/1148132#feedback</comments>
</item>
<item>
 <title>IBM Makes It Easier for Businesses to Create, Deliver &amp; Manage Services</title>
 <link>http://java.sys-con.com/node/1162449</link>
 <description>IBM today announced a more effective way for organizations to quickly build, deliver and manage high quality services. Through new software integrations, organizations can manage and automate processes across their development, test and operations teams. These new integrations give clients better control over the services they provide to customers while lowering the overall cost of delivery and shortening the time to market for new services.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1162449&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Wed, 28 Oct 2009 10:15:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1162449</guid>
 <comments>http://java.sys-con.com/node/1162449#feedback</comments>
</item>
<item>
 <title>Working with WLS 10.3.1 SQLAuthenticator Password Algorithms</title>
 <link>http://java.sys-con.com/node/1159532</link>
 <description>In the &lt;a href=&quot;http://one-size-doesnt-fit-all.blogspot.com/2009/10/part-i-working-with-wls-1031.html&quot;&gt;previous post&lt;/a&gt; we looked at how to configure the SQLAuthenticator password encryption options.  Among other encryption algorithms we discovered that on creating a user from the WLS console, WLS would create the associated user in a database table with password &quot;password&quot; encrypted to:&lt;br /&gt;&lt;br /&gt;{SHA-1}W6ph5Mm5Pz8GgiULbPgzG37mj9g=&lt;br /&gt;&lt;br /&gt;...when the SHA-1 option was set.&lt;br /&gt;&lt;br /&gt;As was mentioned in the previous post, as the database table with its users and passwords may be shared by non-WLS based applications, it&#039;s important that those systems can encrypt passwords and compare them to the WLS result.  In other words, in the example above, given that WLS generated a SHA-1 encrypted password, if another system uses the same SHA-1 algorithm will it generate the same encrypted password allowing it to compare the database SHA-1 encrypted password against the SHA-1 encrypted password it has?&lt;br /&gt;&lt;br /&gt;In order to check we can get the same encrypted results, we&#039;ll investigate generating a SHA-1 password using the Oracle database&#039;s encryption facilities (so in this case the database acts as the other subsystem), comparing the database&#039;s encrypted SHA-1 password to that of WLS.&lt;br /&gt;&lt;br /&gt;The following solution owes thanks to Sean at Oracle Support who very patiently led me in the right direction with my findings.&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-weight:bold;&quot;&gt;dbms_crypto&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Oracle database fans will be familiar with the &lt;a href=&quot;http://download.oracle.com/docs/cd/B28359_01/appdev.111/b28419/d_crypto.htm#BJFCGDIC&quot;&gt;dbms_crypto&lt;/a&gt; package that provides encryption support.&lt;br /&gt;&lt;br /&gt;dbms_crypto allows us to generate an encrypted password that we can compare to the WLS result.  From table 34-1 of the dbms_crypto link, we note that dbms_crypto supports the following one-way hash algorithms: SHA-1, MD4 and MD5.  As WLS via the JCE extensions (see the previous post) supports SHA-1, MD2 and MD5, it&#039;s fortunate we picked SHA-1 for this example.&lt;br /&gt;&lt;br /&gt;The following anonymous PL/SQL block shows an example using the dbms_crypto package hash function with SHA-1 to produce an encrypted result:&lt;pre name=&quot;code&quot; class=&quot;java&quot;&gt;&lt;br /&gt;DECLARE&lt;br /&gt;  input_string  VARCHAR2(8);&lt;br /&gt;  raw_input     RAW(128);&lt;br /&gt;  encrypted_raw RAW(2048);&lt;br /&gt;BEGIN&lt;br /&gt;  input_string := &#039;password&#039;;&lt;br /&gt;  raw_input    := utl_raw.cast_to_raw(convert(input_string, &#039;AL32UTF8&#039;,&#039;US7ASCII&#039;));&lt;br /&gt;&lt;br /&gt;  encrypted_raw := dbms_crypto.hash(src =&gt; raw_input, typ =&gt; dbms_crypto.hash_sh1);&lt;br /&gt;  dbms_output.put_line(&#039;Output: &#039; || encrypted_raw);&lt;br /&gt;END;&lt;br /&gt;/&lt;br /&gt;&lt;br /&gt;Output: 5BAA61E4C9B93F3F0682250B6CF8331B7EE68FD8&lt;/pre&gt;Note the output, a hex value, and doesn&#039;t match our WLS output for the same plaintext password &quot;password&quot; encrypted with SHA-1.&lt;br /&gt;&lt;br /&gt;The missing bit of information (that I haven&#039;t found documented) is that WLS after encrypting the plaintext password, as confirmed by Oracle Support, WLS then converts the output to base 64.  In the case of the dbms_crypto hash function, it converts the encrypted result to Hex.  In order to get the same result you need to convert the Hex output to base 64.&lt;br /&gt;&lt;br /&gt;There&#039;s a number of different ways to do this.  One is to use a Java routine in the database, converting the dbms_crypto Hex result to a byte array, then byte array to base 64.  A suitable algorithm would be:&lt;pre name=&quot;code&quot; class=&quot;java&quot;&gt;&lt;br /&gt;byte[] bytearray = hexStringToByteArray(&quot;5BAA61E4C9B93F3F0682250B6CF8331B7EE68FD8&quot;);&lt;br /&gt;String base64encoded = new BASE64Encoder().encodeBuffer(bytearray);&lt;/pre&gt;...where the hexStringToByteArray function is borrowed from Dave L on &lt;a href=&quot;http://stackoverflow.com/questions/140131/convert-a-string-representation-of-a-hex-dump-to-a-byte-array-using-java&quot;&gt;StackOverflow&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The end result is: W6ph5Mm5Pz8GgiULbPgzG37mj9g= ... finally matching what WLS wrote to the database (missing the algorithm prefix of course).&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-weight:bold;&quot;&gt;Conclusion&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Why the WebLogic Server&#039;s SQLAuthenticator can make use of different encryption algorithm when writing to the database, it&#039;s important to ensure that the results are expected and understood and can be used by other subsystems.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width=&#039;1&#039; height=&#039;1&#039; src=&#039;https://blogger.googleusercontent.com/tracker/38586079-9056575003088041413?l=one-size-doesnt-fit-all.blogspot.com&#039;/&gt;&lt;/div&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/OneSizeDoesntFitAll/~4/L3EavdFuwnM&quot; height=&quot;1&quot; width=&quot;1&quot;/&gt;&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1159532&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Tue, 27 Oct 2009 11:15:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1159532</guid>
 <comments>http://java.sys-con.com/node/1159532#feedback</comments>
</item>
<item>
 <title>Security in the Cloud: Protecting Your Cloud Apps</title>
 <link>http://java.sys-con.com/node/1146277</link>
 <description>Securing data and applications that run on the web and in the cloud are among the most pressing information technology challenges for organizations today. Attacks made through common hacking techniques can lead to financial loss, compliance headaches and disastrous issues with customer privacy and overall satisfaction. At the Cloud Computing Conference &amp; Expo, Lars Ewe will further discuss that while business applications are going online at a record pace, security solutions today are not keeping up. The lack of a proper protocol to test for application vulnerabilities can quickly result in large-scale security breakdowns. &lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1146277&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Mon, 26 Oct 2009 14:00:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1146277</guid>
 <comments>http://java.sys-con.com/node/1146277#feedback</comments>
</item>
<item>
 <title>Cloud Security 2.0 </title>
 <link>http://java.sys-con.com/node/1146591</link>
 <description>As the Cloud Computing model proliferates, so will the potential threats. Thanks to the Cloud, the line between the endpoint and the enterprise has blurred. Therefore, it calls for a radically different kind of approach using a trustworthy computing model. At the Cloud Computing Conference and Expo, Dipto Chakravarty will examine ways to use a combination of open source as well as proprietary tools to protect the business assets at the edge of the network in concert with the hub of the enterprise. &lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1146591&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Mon, 26 Oct 2009 13:15:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1146591</guid>
 <comments>http://java.sys-con.com/node/1146591#feedback</comments>
</item>
<item>
 <title>Cloud Storage – Cutting Through the Hype</title>
 <link>http://java.sys-con.com/node/1144076</link>
 <description>Hundreds of definitions from swarms of providers have created confusion and devalued the cloud storage landscape. In his session at Cloud Computing Conference &amp; Expo, Cameron Bahar, Founder and CTO of ParaScale, will skip to the real questions, who is using cloud storage and why? He will detail cloud storage customer examples and the benefits achieved by leveraging this technology. &lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1144076&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Mon, 26 Oct 2009 13:00:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1144076</guid>
 <comments>http://java.sys-con.com/node/1144076#feedback</comments>
</item>
<item>
 <title>SpringSource Moving to Spring 3.0</title>
 <link>http://java.sys-con.com/node/1156863</link>
 <description>VMware’s recent SpringSource acquisition, the Java widgetry folk, is moving to Spring 3.0, a major release of its vaunted Java development framework for building web and service-based applications. It announced a feature-complete release candidate Monday and expects to go to GA soon. &lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1156863&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Fri, 23 Oct 2009 16:30:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1156863</guid>
 <comments>http://java.sys-con.com/node/1156863#feedback</comments>
</item>
<item>
 <title>A Brief History of Cloud Computing </title>
 <link>http://java.sys-con.com/node/1150011</link>
 <description>Cloud Computing is the most important trend in the IT Industry. Even the biggest critics seem to agree that – in spite of some over-zealous marketeers – Cloud Computing is one of the most important paradigm shifts of the past decades. But what is it all about? Where did it come from? And what&#039;s to be expected?&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1150011&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Thu, 22 Oct 2009 06:00:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1150011</guid>
 <comments>http://java.sys-con.com/node/1150011#feedback</comments>
</item>
<item>
 <title>AppZero Named “Silver Sponsor” of 4th Cloud Computing Expo</title>
 <link>http://java.sys-con.com/node/1153787</link>
 <description>SYS-CON Events announced today that AppZero, pioneer in server-side application virtualization, was named &quot;Silver Sponsor&quot; of the 4th International Cloud Computing Conference &amp; Expo, which will be taking place November 2-4, 2009 at the Santa Clara Convention Center, Santa Clara, CA.

AppZero software virtualizes Windows and Unix server applications for nearly instant provisioning as services across a network, on any server (physical or virtual), in the datacenter or in the cloud.  
&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1153787&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Thu, 22 Oct 2009 01:00:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1153787</guid>
 <comments>http://java.sys-con.com/node/1153787#feedback</comments>
</item>
<item>
 <title>Windows 7 – Microsoft’s First Step to the Cloud</title>
 <link>http://java.sys-con.com/node/1143310</link>
 <description>Pundits talking about how Windows 7 is all about Microsoft competing against Apple, recovering with Vista consumer adoption disaster, or getting people off of XP, are missing one other &amp;#8211; extremely important &amp;#8211; part of the Windows 7 story. Windows 7 and its server counterpart &amp;#8211; Windows Server 2008 R2 &amp;#8211; are actually the first [...]&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://stats.wordpress.com/b.gif?host=cloudenterprise.info&amp;blog=4988729&amp;post=321&amp;subd=cloudenterprise&amp;ref=&amp;feed=1&quot; /&gt;&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1143310&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Tue, 20 Oct 2009 15:00:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1143310</guid>
 <comments>http://java.sys-con.com/node/1143310#feedback</comments>
</item>
<item>
 <title>Performance Perspectives... Standardizing with Speed</title>
 <link>http://java.sys-con.com/node/1144744</link>
 <description>I thought it would be a good idea to call some attention to a new flood of good reads. Two in particular deal with some bleeding-edge performance concepts. Performance is a subject that comes to the forefront more and more often, especially when we&#039;re all trying to wring as much sweat as we can out of each and every IT dollar put into play. Much of my day is spent trying to find new patterns to make this a reality. Information like this is invaluable when we&#039;re trying to find the correct architectural answer to the enterprise IT puzzles we&#039;re faced with.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1144744&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Wed, 14 Oct 2009 17:00:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1144744</guid>
 <comments>http://java.sys-con.com/node/1144744#feedback</comments>
</item>
<item>
 <title>Software Should Be Creative</title>
 <link>http://java.sys-con.com/node/1139176</link>
 <description>We spend a lot of time talking to business managers about how their operations run. The perspective that we commonly face is one of &quot;this is how we do it; we are looking for software to do it better.&quot; But from a business perspective, that is the wrong approach.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1139176&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Mon, 12 Oct 2009 18:00:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1139176</guid>
 <comments>http://java.sys-con.com/node/1139176#feedback</comments>
</item>
<item>
 <title>JSF 2, Custom Java Components, and AJAX Behaviors</title>
 <link>http://java.sys-con.com/node/1139762</link>
 <description>Unlike most of my blog posts, where I try to describe the easiest possible way to do things, in this posting, I&#039;ll instead go over a Java-based custom JSF component that responds to the Ajax tag.  The reason being that there simply aren&#039;t any examples out there of how to do this, and at least two people have expressed interest in finding exactly out how this is done.  I&#039;d advise anyone considering doing this to make &lt;i&gt;really&lt;/i&gt; sure that you can&#039;t do the same thing in a Composite Component (you usually can), but sometimes, a Java-based custom JSF component is going to be required.&lt;/p&gt;
&lt;p&gt;We&#039;re going to cover the following topics here, and it&#039;s going to be a little more code than usual, but I suspect that this will end up saving some folks a bunch of time, so lets plow forward.  I&#039;ll cover:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;Ajax listeners&lt;/li&gt;
    &lt;li&gt;Facelet components&lt;/li&gt;
    &lt;li&gt;Integrating the two&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;First, the Ajax Listener&lt;/h2&gt;
&lt;p&gt;An ajax listener, connected to your ajax event with the listener attribute, is a method that will be called every time the ajax request is made.  For example, let&#039;s look at the following page section:&lt;/p&gt;
&lt;pre&gt;
   1 Echo test: &amp;lt;h:outputText id=&amp;quot;out&amp;quot; value=&amp;quot;#{custom.hello}&amp;quot;/&amp;gt;
   2 &amp;lt;br/&amp;gt;
   3 Echo count: &amp;lt;h:outputText id=&amp;quot;count&amp;quot; value=&amp;quot;#{custom.count}&amp;quot;/&amp;gt;
   4 &amp;lt;br/&amp;gt;
   5 &amp;lt;h:inputText id=&amp;quot;in&amp;quot; value=&amp;quot;#{custom.hello}&amp;quot; autocomplete=&amp;quot;off&amp;quot;&amp;gt;
   6     &amp;lt;f:ajax event=&amp;quot;keyup&amp;quot; render=&amp;quot;out count eventcount&amp;quot; listener=&amp;quot;#{custom.update}&amp;quot;/&amp;gt;
   7 &amp;lt;/h:inputText&amp;gt;
   8 &amp;lt;br/&amp;gt;
   9 Event count: &amp;lt;h:outputText id=&amp;quot;eventcount&amp;quot; value=&amp;quot;#{custom.eventCount}&amp;quot;/&amp;gt;
&lt;/pre&gt;
&lt;p&gt;We&#039;ve got three bean properties - hello (which is the string entered by the inputText), count (which is a count of the characters in hello, and eventCount (which is a count of the number of ajax requests).  We also have a method on the bean, update (line 6), which will be called every time the ajax call is submitted.&lt;/p&gt;
&lt;p&gt;The behavior of this page is pretty simple - every time you press a character in the inputText, the complete value of the input is echoed to the outputText &amp;quot;out&amp;quot; (line 1) - the length of &amp;quot;out&amp;quot; is written to &amp;quot;count&amp;quot; (line 3), and the &amp;quot;eventCount&amp;quot; outputText (line 9) has it&#039;s value incremented by one.&lt;/p&gt;
&lt;p&gt;So - what code is in the bean?  Here&#039;s the relevant bits:&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre&gt;
   1 public void setHello(String hello) {
   2     this.hello = hello;
   3 }
   4 public int getCount() {
   5     return count;
   6 }
   7 public int getEventCount() {
   8     return eventCount;
   9 }
  10 public void update(AjaxBehaviorEvent event) {
  11     count = hello.length();
  12     eventCount++;
  13 }
&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Not so bad - the only thing new here is that AjaxBehaviorEvent class - and we&#039;re not even using it.  The update method will simply set up the values to be correct, and we let the Ajax render to the rest.  So - listeners are easy.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;Facelets Components&lt;/h2&gt;
&lt;p&gt;Now, we&#039;ll want to create a custom tag in Java.  To do that, we&#039;ll need to make a few configuration file entries, and write a little java code.  But first, let&#039;s see it used in the page:&lt;/p&gt;
&lt;p&gt;In the XHTML header, we&#039;ll say:&lt;/p&gt;
&lt;pre&gt;
   1 &amp;lt;html xmlns=&amp;quot;http://www.w3.org/1999/xhtml&amp;quot;
   2       xmlns:ui=&amp;quot;http://java.sun.com/jsf/facelets&amp;quot;
   3       xmlns:h=&amp;quot;http://java.sun.com/jsf/html&amp;quot;
   4       xmlns:f=&amp;quot;http://java.sun.com/jsf/core&amp;quot;
   5       xmlns:cu=&amp;quot;http://javaserverfaces.dev.java.net/demo/custom-taglib&amp;quot;&amp;gt;
&lt;/pre&gt;
&lt;p&gt;Setting up the &amp;quot;cu&amp;quot; prefix (line 5) to point to &amp;quot;custom-taglib&amp;quot; (the whole URL is significant).  Then later on in the page, we&#039;ll use it like so:&lt;/p&gt;
&lt;pre&gt;
&amp;lt;cu:custom id=&amp;quot;customId&amp;quot;&amp;gt;
&lt;/pre&gt;
&lt;p&gt;We then need to add an entry in web.xml:&lt;/p&gt;
&lt;pre&gt;
   1 &amp;lt;context-param&amp;gt;
   2    &amp;lt;param-name&amp;gt;javax.faces.FACELETS_LIBRARIES&amp;lt;/param-name&amp;gt;
   3    &amp;lt;param-value&amp;gt;/WEB-INF/custom-taglib.xml&amp;lt;/param-value&amp;gt;
   4 &amp;lt;/context-param&amp;gt;
&lt;/pre&gt;
&lt;p&gt;This points to our next config file, which is the filename on line 3.  Here&#039;s its contents, in full:&lt;/p&gt;
&lt;pre&gt;
   1 &amp;lt;facelet-taglib xmlns=&amp;quot;http://java.sun.com/xml/ns/javaee&amp;quot;
   2               xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot;
   3               xsi:schemaLocation=&amp;quot;http://java.sun.com/xml/ns/javaee &lt;a href=&quot;http://java.sun.com/xml/ns/javaee/web-facelettaglibrary_2_0.xsd&amp;quot;&quot; title=&quot;http://java.sun.com/xml/ns/javaee/web-facelettaglibrary_2_0.xsd&amp;quot;&quot;&gt;http://java.sun.com/xml/ns/javaee/web-facelettaglibrary_2_0.xsd&amp;quot;&lt;/a&gt;
   4               version=&amp;quot;2.0&amp;quot;&amp;gt;
   5   &amp;lt;namespace&amp;gt;http://javaserverfaces.dev.java.net/demo/custom-taglib&amp;lt;/namespace&amp;gt;
   6   &amp;lt;tag&amp;gt;
   7     &amp;lt;tag-name&amp;gt;custom&amp;lt;/tag-name&amp;gt;
   8       &amp;lt;component&amp;gt;
   9         &amp;lt;component-type&amp;gt;mycustom&amp;lt;/component-type&amp;gt;
  10       &amp;lt;/component&amp;gt;
  11   &amp;lt;/tag&amp;gt;
  12 &amp;lt;/facelet-taglib&amp;gt;
&lt;/pre&gt;
&lt;p&gt;Note that the namespace element on line 5 matches the URL we used for the namespace in the html element of the using page.  We said this taglibrary will have one tag &amp;quot;custom&amp;quot; (line 7), which maps to the FacesComponent &amp;quot;mycustom&amp;quot;.  Where does it find the definition of &amp;quot;mycustom&amp;quot;?  In the Java file defining the component, using the new @FacesComponent attribute.  Here&#039;s the full Java code, leaving out the imports:&lt;/p&gt;
&lt;pre&gt;
   1 @FacesComponent(value = &amp;quot;mycustom&amp;quot;)
   2 public class MyCustom extends UIComponentBase {
   3 
   4     @Override
   5     public String getFamily() {
   6         return &amp;quot;custom&amp;quot;;
   7     }
   8 
   9     @Override
  10     public void encodeEnd(FacesContext context) throws IOException {
  11 
  12         ResponseWriter responseWriter = context.getResponseWriter();
  13         responseWriter.startElement(&amp;quot;div&amp;quot;, null);
  14         responseWriter.writeAttribute(&amp;quot;id&amp;quot;,getClientId(context),&amp;quot;id&amp;quot;);
  15         responseWriter.writeAttribute(&amp;quot;name&amp;quot;, getClientId(context),&amp;quot;clientId&amp;quot;);
  16         responseWriter.write(&amp;quot;Howdy!&amp;quot;);
  17         responseWriter.endElement(&amp;quot;div&amp;quot;);
  18     }
  19 }
&lt;/pre&gt;
&lt;p&gt;In fact, the Java code itself is simple enough that I don&#039;t really think it requires any explanation.   Putting the cu:custom tag in your page will now render Howdy!, surrounded by a div with the same id and name as you gave the component.  All that&#039;s left is to add the Ajax.  That... is a bit more complicated, but now that we&#039;ve handled everything else, it&#039;s really just incremental.&lt;/p&gt;
&lt;h2&gt;Using f:ajax with your custom tag&lt;/h2&gt;
&lt;p&gt;To use the f:ajax tag, we&#039;d like to, for instance, do something like this:&lt;/p&gt;
&lt;pre&gt;
   1 &amp;lt;cu:custom id=&amp;quot;customId&amp;quot;&amp;gt;
   2     &amp;lt;f:ajax render=&amp;quot;eventcount&amp;quot; listener=&amp;quot;#{custom.updateEventCount}&amp;quot;/&amp;gt;
   3 &amp;lt;/cu:custom&amp;gt;
&lt;/pre&gt;
&lt;p&gt;Meaning, we&#039;d like to just decorate the tag, and let it do something &amp;quot;smart&amp;quot;.  In this case, we&#039;ll default to &amp;quot;onclick&amp;quot; (since we&#039;re dealing with a div, after all, we could also default to &amp;quot;onmouseover&amp;quot;, for instance).  It&#039;d also be nice if we could still call the ajax listener.  That&#039;ll require a bit more code.  Here&#039;s the full Java component, with the additional ajax code.  I&#039;ll go over it at the end:&lt;/p&gt;
&lt;pre&gt;
   1 @FacesComponent(value = &amp;quot;mycustom&amp;quot;)
   2 public class MyCustom extends UIComponentBase implements ClientBehaviorHolder {
   3 
   4     @Override
   5     public String getFamily() {
   6         return &amp;quot;custom&amp;quot;;
   7     }
   8 
   9     @Override
  10     public void encodeEnd(FacesContext context) throws IOException {
  11 
  12         ClientBehaviorContext behaviorContext =
  13                 ClientBehaviorContext.createClientBehaviorContext(context, 
  14                 this, &amp;quot;click&amp;quot;, getClientId(context), null);
  15 
  16         ResponseWriter responseWriter = context.getResponseWriter();
  17         responseWriter.startElement(&amp;quot;div&amp;quot;, null);
  18         responseWriter.writeAttribute(&amp;quot;id&amp;quot;,getClientId(context),&amp;quot;id&amp;quot;);
  19         responseWriter.writeAttribute(&amp;quot;name&amp;quot;, getClientId(context),&amp;quot;clientId&amp;quot;);
  20         Map&amp;lt;String,List&amp;lt;ClientBehavior&amp;gt;&amp;gt; behaviors = getClientBehaviors();
  21         if (behaviors.containsKey(&amp;quot;click&amp;quot;) ) {
  22             String click = behaviors.get(&amp;quot;click&amp;quot;).get(0).getScript(behaviorContext);
  23             responseWriter.writeAttribute(&amp;quot;onclick&amp;quot;, click, null);
  24         }
  25         responseWriter.write(&amp;quot;Click me!&amp;quot;);
  26         responseWriter.endElement(&amp;quot;div&amp;quot;);
  27     }
  28 
  29     
  30     @Override
  31     public void decode(FacesContext context) {
  32         Map&amp;lt;String, List&amp;lt;ClientBehavior&amp;gt;&amp;gt; behaviors = getClientBehaviors();
  33         if (behaviors.isEmpty()) {
  34             return;
  35         }
  36 
  37         ExternalContext external = context.getExternalContext();
  38         Map&amp;lt;String, String&amp;gt; params = external.getRequestParameterMap();
  39         String behaviorEvent = params.get(&amp;quot;javax.faces.behavior.event&amp;quot;);
  40 
  41         if (behaviorEvent != null) {
  42             List&amp;lt;ClientBehavior&amp;gt; behaviorsForEvent = behaviors.get(behaviorEvent);
  43 
  44             if (behaviors.size() &amp;gt; 0) {
  45                 String behaviorSource = params.get(&amp;quot;javax.faces.source&amp;quot;);
  46                String clientId = getClientId(context);
  47                if (behaviorSource != null &amp;&amp; behaviorSource.equals(clientId)) {
  48                    for (ClientBehavior behavior: behaviorsForEvent) {
  49                        behavior.decode(context, this);
  50                    }
  51                }
  52             }
  53         }
  54     }
  55 
  56     @Override
  57     public Collection&amp;lt;String&amp;gt; getEventNames() {
  58         return Arrays.asList(&amp;quot;click&amp;quot;);
  59     }
  60 
  61     @Override
  62     public String getDefaultEventName() {
  63         return &amp;quot;click&amp;quot;;
  64     }
  65 }
&lt;/pre&gt;
&lt;p&gt;At 65 lines, this is probably the longest code example I&#039;ve ever posted, but most of this is either really easy, or stuff you&#039;ve seen in the previous section.  First, we define what Ajax events we&#039;ll accept (&amp;quot;click&amp;quot;) and what one is the default (&amp;quot;click&amp;quot; again), on lines 56-64.  These are part of the ClientBehaviorHolder interface (line 2).  We also had to add a little code to the encodeEnd method, so that we correctly output the DOM event script as part of the div (lines 12-14, 20-24).  And lastly, we needed to add a decode method, since our component is no longer output only - the ajax event handling code is always part of the decode process (lines 31-50).  This is the part where we actually make sure that that listener is being called.&lt;/p&gt;
&lt;p&gt;Did I mention that you can do pretty much the same thing in a composite component?&amp;nbsp; That&#039;ll be the subject of a future blog.&lt;/p&gt;
&lt;p&gt;Well, I warned you this was a little more complex - hopefully it&#039;s all fairly clear.  If it isn&#039;t - ask in the comments.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1139762&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Mon, 12 Oct 2009 10:45:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1139762</guid>
 <comments>http://java.sys-con.com/node/1139762#feedback</comments>
</item>
<item>
 <title>New Version of Exadel Studio JavaFX Plug-in Is Coming…</title>
 <link>http://java.sys-con.com/node/1138827</link>
 <description>It&amp;#8217;s been a while since I posted any news JavaFX plug-in for Eclipse, but we&amp;#8217;ve been working hard on the following new features: Code assist for syntax keywords, Code assist for system classes, Code assist for attributes of system classes, Code assist for user classes, Code assist for attributes of user classes.
Syntax highlight

A new version will be released in the [...]&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1138827&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Thu, 08 Oct 2009 22:22:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1138827</guid>
 <comments>http://java.sys-con.com/node/1138827#feedback</comments>
</item>
<item>
 <title>On2 Technologies Releases First VP6 Hardware Video Decoder</title>
 <link>http://java.sys-con.com/node/1137558</link>
 <description>On2 Technologies announced that it has released its new flagship hardware video decoder design, the Hantro(TM) 9190. The 9190 is the tenth generation of the Hantro line of decoders, which are deployed in hundreds of millions of chips worldwide. The 9190 design supports video playback up to full HD (1080p) resolution at 60 frames per second (fps) in multiple formats including On2 VP6 for Adobe Flash Player and Sun JavaFX, DivX 3, 4, 5, 6, H.264, H.263, Sorenson Spark, MPEG-1, MPEG-2, MPEG-4, VC-1/WMV9 and RealVideo 8, 9 &amp; 10, as well as up to 66 megapixel JPEG still images.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1137558&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Thu, 08 Oct 2009 16:00:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1137558</guid>
 <comments>http://java.sys-con.com/node/1137558#feedback</comments>
</item>
<item>
 <title>Virtual Landscape Management for SAP to Drive Application Innovation</title>
 <link>http://java.sys-con.com/node/1137377</link>
 <description>The ability to manage SAP environments not system by system but as the tightly integrated landscapes in which they are actually offers massive productivity improvements for IT departments. New landscapes can be provisioned in minutes and can include all types of SAP Business Suite, SAP BusinessObjects Portfolio (ABAP, Java or combined) or legacy applications. Virtual Appliance templates offer ready-to-use systems with zero post-installation effort, and as desired can be pre-seeded with production business data. Monitoring and administration is simplified to manage the SAP applications throughout the system lifecycle.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1137377&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Thu, 08 Oct 2009 15:00:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1137377</guid>
 <comments>http://java.sys-con.com/node/1137377#feedback</comments>
</item>
<item>
 <title>Australian Customs Selects IP Video Surveillance Solution</title>
 <link>http://java.sys-con.com/node/1137322</link>
 <description>March Networks announced that the Australian Customs and Border Protection Service has selected the Company&#039;s VideoSphere solution to enhance its security operations in multiple airports across the country. The integrated systems include March Networks&#039; Video Management System (VMS) software and Edge encoders, as well as host and storage servers from Sun Microsystems.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1137322&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Thu, 08 Oct 2009 07:00:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1137322</guid>
 <comments>http://java.sys-con.com/node/1137322#feedback</comments>
</item>
<item>
 <title>SCM Microsystems Japan Addresses IT Security</title>
 <link>http://java.sys-con.com/node/1135344</link>
 <description>Together with Digital Media Research Institute, Inc., SCM Microsystems Japan and DNP are launching a new solution that keeps important digital data safe using cloud computing technologies. The solution is a high-security data storage system developed by DNP, which consists of DNP&#039;s TranC&#039;ert DNA software, a SIM card and SCM Microsystems&#039; @MAXX lite secure smart card reader. Digital Media Research Institute, Inc. is providing sales and consulting services for the implementation of the new system. DNP&#039;s TranC&#039;ert DNA software splits up and encrypts sensitive or confidential data, and stores it on three servers, which secures and protects the information from loss, damage or theft.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1135344&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Wed, 07 Oct 2009 10:30:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1135344</guid>
 <comments>http://java.sys-con.com/node/1135344#feedback</comments>
</item>
<item>
 <title>Adaptivity Chairman and CEO Launches His Cloud Computing Blog on Ulitzer</title>
 <link>http://java.sys-con.com/node/1122180</link>
 <description>Adaptivity Chairman and CEO Tony Bishop launched today his Cloud Computing Blog on Ulitzer, Tony is the Founder and CEO of Adaptivity. As Chairman and CEO, Tony leads the team and provides hands-on coaching, thought leadership and executive strategy support for our key clients and partners. He is an innovative IT executive, with an excellent track record in strategy, design, and the implementation of business-aligned enterprise technology platforms across large organizations. He most recently served as SVP and Chief Architect of Wachovia’s Corporate Investment Banking Technology Group, where his team designed, built, and implemented a leading-edge service-oriented architecture and utility computing infrastructure. &lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1122180&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Sun, 04 Oct 2009 11:45:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1122180</guid>
 <comments>http://java.sys-con.com/node/1122180#feedback</comments>
</item>
<item>
 <title>Google Wave Hits Wider Beta</title>
 <link>http://java.sys-con.com/node/1129887</link>
 <description>Google Wave, the amorphous open source widgetry that Google has trouble explaining but contends – silly Google – will replace e-mail, the most viral application ever, started moving into a wider test group of some 100,000 users Wednesday ahead of a still wider release in December. It’s akin to a limited launch. Wave reportedly got a million requests for early access. &lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1129887&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Sun, 04 Oct 2009 10:00:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1129887</guid>
 <comments>http://java.sys-con.com/node/1129887#feedback</comments>
</item>
<item>
 <title>Implementing RESTful Services</title>
 <link>http://java.sys-con.com/node/1118550</link>
 <description>The RESTful architectural style [1], with its URL addressable, resource oriented approach allows you to define Web services which can have multiple runtime representation in a variety of different media types.  You define a Web resource, encapsulating the desired functionality within a business method, accessible via a URI over the HTTP protocol and its different “verbs”: GET, POST, PUT, DELETE [2]. The transferred content may be either HTML, XML, binary data or images, which, depending on the business use case often require to be embedded within the same message. &lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1118550&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Thu, 01 Oct 2009 19:00:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1118550</guid>
 <comments>http://java.sys-con.com/node/1118550#feedback</comments>
</item>
<item>
 <title>Connecting to the Cloud in Japanese - クラウドに接続する</title>
 <link>http://java.sys-con.com/node/1127783</link>
 <description>The Connecting to the Cloud series of articles, which I wrote for IBM DeveloperWorks, is now available in Japanese. The series introduces cloud platforms such as Force.com and Amazon SQS, including code samples in Java, and governance and policy, again including code samples (an Amazon policy expressed in JSON). The Gateway &quot;onramp&quot; model is described&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1127783&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Thu, 01 Oct 2009 13:45:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1127783</guid>
 <comments>http://java.sys-con.com/node/1127783#feedback</comments>
</item>
<item>
 <title>The CIO as Tarzan</title>
 <link>http://java.sys-con.com/node/1125516</link>
 <description>In this age of collaborative technologies and social media, is there still a place for in-person meetings and real phone calls? Yes! The idea of &quot;going primitive&quot; can actually give you a strategic advantage in your communications.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1125516&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Wed, 30 Sep 2009 09:00:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1125516</guid>
 <comments>http://java.sys-con.com/node/1125516#feedback</comments>
</item>
<item>
 <title>Sun Microsystems Announces New Release of Sun Java Communications Suite</title>
 <link>http://java.sys-con.com/node/1124811</link>
 <description>To meet the messaging and collaboration needs of the world&#039;s largest telcos, service providers and most demanding enterprise customers, Sun Microsystems has announced availability of Sun Java(TM) Communications Suite 7. With more than 170 million seats of earlier versions deployed, this new release builds upon proven strengths in scalability, reliability and performance while providing better interoperability and enabling differentiated services with a low total cost of ownership. To learn more, visit &lt;a href=&quot;http://sun.com/comms&quot; title=&quot;http://sun.com/comms&quot;&gt;http://sun.com/comms&lt;/a&gt;.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1124811&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Tue, 29 Sep 2009 16:30:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1124811</guid>
 <comments>http://java.sys-con.com/node/1124811#feedback</comments>
</item>
<item>
 <title>Can You Really Screen Java Skills of Job Candidates in Two Hours?</title>
 <link>http://java.sys-con.com/node/1125256</link>
 <description>Today, this global leader in Java learning and powered by over 50,000 developers in its global community, announced the worldwide availability of SkillScan, its cutting-edge, automated tool to assess the Java skills of job candidates.  SkillScan is used by recruiters and hiring managers to screen Java candidates and staff teams with the right combination of skills.  In less than two hours, SkillScan provides a comprehensive and conclusive report of candidate skills in Java programming, sub-topics in Java, and related technologies.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1125256&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Tue, 29 Sep 2009 14:43:56 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1125256</guid>
 <comments>http://java.sys-con.com/node/1125256#feedback</comments>
</item>
</channel>
</rss>
