<?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>General Java</title>
 <link>http://java.sys-con.com/</link>
 <description>Latest articles from General Java</description>
 <language>en</language>
 <copyright>Copyright 2009 Ulitzer.com</copyright>
 <generator>Ulitzer.com</generator>
 <lastBuildDate>Thu, 10 Dec 2009 12:17:31 EST</lastBuildDate>
 <docs>http://backend.userland.com/rss</docs>
 <ttl>10</ttl>
<item>
 <title>Oracle Dynamic Tabs Shell - ADF 11gR1 – UI Shell </title>
 <link>http://java.sys-con.com/node/1202777</link>
 <description>In the latest release of JDeveloper, specifically 11.1.1.2.0 also known as 11g Release 1 also known as Patch Set 1 also known as 11g build 5536 also known as the Shepherd build (cough cough Oracle), Oracle has included a new built in page template known as the &quot;Oracle Dynamic Tabs Shell&quot;.  This template is part of Oracle&#039;s &lt;a href=&quot;http://www.oracle.com/technology/products/adf/patterns/index.html&quot;&gt;ADF Functional Patterns and Best Practices&lt;/a&gt; efforts, also referred to as the &quot;UI Shell&quot;. Complete documentation is available &lt;a href=&quot;http://www.oracle.com/technology/products/adf/patterns/11/uishell.html&quot;&gt;here&lt;/a&gt;.  I&#039;ll leave readers unfamiliar with the UI Shell to read Oracle&#039;s documentation to understand the basics.&lt;br /&gt;&lt;br /&gt;With my current client we&#039;re happy with the inclusion of this new UI Shell and we can actively see ourselves using it in the near future.  What I wanted to document is my own thoughts and research which may be of use to others, and I hope to further the discussion on the &lt;a href=&quot;http://groups.google.com/group/adf-methodology/browse_thread/thread/f84bdcec40b7819f?hl=en&quot;&gt;ADF EMG&lt;/a&gt;.  Note as usual your mileage may vary so take time out to check the facts listed here:&lt;br /&gt;&lt;br /&gt;1) The Create JSF Page dialog presents the &quot;Oracle Dynamic Tabs Shell&quot; page template option:&lt;br /&gt;&lt;br /&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://2.bp.blogspot.com/_5hhNK2aXwp8/SxNJYCjctLI/AAAAAAAAA2w/4Hvqaq9DCdg/s1600/ui1.png&quot;&gt;&lt;img style=&quot;display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 258px;&quot; src=&quot;http://2.bp.blogspot.com/_5hhNK2aXwp8/SxNJYCjctLI/AAAAAAAAA2w/4Hvqaq9DCdg/s400/ui1.png&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5409748254753338546&quot; /&gt;&lt;/a&gt;&lt;br /&gt;2) The template and its supporting classes are installed in &amp;lt;jdev_home&gt;/jdeveloper/adfv/jlib/oracle-page-templates-ext.jar, though the JDev IDE takes care of importing the template and classes/libraries into your project for you once selected in the Create JSF Page dialog.  As the following picture shows an additional library Oracle Extended Page Templates is added to your project:&lt;br /&gt;&lt;br /&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://4.bp.blogspot.com/_5hhNK2aXwp8/SxNJYiwIQEI/AAAAAAAAA24/V_LJeYLROI0/s1600/ui2.png&quot;&gt;&lt;img style=&quot;display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 350px;&quot; src=&quot;http://4.bp.blogspot.com/_5hhNK2aXwp8/SxNJYiwIQEI/AAAAAAAAA24/V_LJeYLROI0/s400/ui2.png&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5409748263396458562&quot; /&gt;&lt;/a&gt;Side note: Steve Muench has blogged the location of the UI Shell template and supporting classes as a separate download &lt;a href=&quot;http://blogs.oracle.com/smuenchadf/2009/11/source_for_ps1_dynamic_tab_she.html&quot;&gt;here&lt;/a&gt;.  This will allow you to take the default UI Shell template and customise to your needs if required.  See further points below for why this may be necessary.&lt;br /&gt;&lt;br /&gt;2) Our technical team was already getting bogged down in &quot;discussions&quot; of &quot;standard&quot; web page layouts versus RIA layouts.  The technical team knows the standard web page layouts weren&#039;t suited to RIA applications, but it was hard to argue our case without actually creating a RIA layout.  In turn creating a RIA layout that we were happy with was going to take some time, and we&#039;re building applications now.  With the UI Shell we can short cut the layout &quot;discussions&quot;, say this is what Oracle&#039;s provided us, it works well and this is what we&#039;ll use, allowing us to focus on the more important matter of hand and that&#039;s writing the ADF solution for the business.&lt;br /&gt;&lt;br /&gt;3) Our overall application is made up of several subsystems (think Oracle Apps with HR, Procurement, Payroll etc).  Within the UI Shell the globalTabs facet provides an ideal location to list the subsystems allowing the user to switch between each module:&lt;br /&gt;&lt;br /&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://3.bp.blogspot.com/_5hhNK2aXwp8/SxNJY6jiKeI/AAAAAAAAA3A/0sbVrvQ7FD8/s1600/ui3.png&quot;&gt;&lt;img style=&quot;display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 112px;&quot; src=&quot;http://3.bp.blogspot.com/_5hhNK2aXwp8/SxNJY6jiKeI/AAAAAAAAA3A/0sbVrvQ7FD8/s400/ui3.png&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5409748269786081762&quot; /&gt;&lt;/a&gt;4) Each subsystem gets its own page based on the template, as in hr.jspx, procurement.jspx and payroll.jspx based on our example.&lt;br /&gt;&lt;br /&gt;5) The rest of the application is made up of a number &quot;Activities&quot; that in essence are bounded task flows using page fragments, or in other words the business processes of your application.  Each subsystem is free to make use of as many bounded task flows as it sees fit, and in addition a bounded task flow can be used (shared) by many of the subsystem pages.&lt;br /&gt;&lt;br /&gt;6) As per the previous point, if you&#039;re using the default UI Shell provided through JDeveloper rather than downloading the UI Shell as per Steve Muench&#039;s blog above, and you wish to have a common element in every page using the template, you&#039;ll need to code them in every page which isn&#039;t ideal.  The solution is to download Oracle&#039;s template and customise it within your own application (or possibly create a number of declarative page components for repetitive content, though this will still require you to load each page component in each page based on the UI Shell template).&lt;br /&gt;&lt;br /&gt;7) A key feature of the UI Shell as described in its other name &quot;Oracle Dynamic Tabs Shell&quot; is it shows under each subsystem how to launch a bounded task flow (aka Activity) one or many times:&lt;br /&gt;&lt;br /&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://1.bp.blogspot.com/_5hhNK2aXwp8/SxNJfFM__II/AAAAAAAAA3Y/Awb9o8nH8mk/s1600/ui6.png&quot;&gt;&lt;img style=&quot;display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 271px;&quot; src=&quot;http://1.bp.blogspot.com/_5hhNK2aXwp8/SxNJfFM__II/AAAAAAAAA3Y/Awb9o8nH8mk/s400/ui6.png&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5409748375723572354&quot; /&gt;&lt;/a&gt;This may not be ideal for every application, but my current client has a scenario in an existing Oracle Forms application where users open up to 4 sessions.  While we&#039;re not sure on building an ADF equivalent with a chance to redesign the users&#039; workflow will they still need to do this, if they do we&#039;re envisaging that each session can now be as a separate UI Shell Activity under the subsystem page.&lt;br /&gt;&lt;br /&gt;8) As discussed in the following ADF EMG &lt;a href=&quot;http://groups.google.com/group/adf-methodology/browse_thread/thread/e7c9d557ab03b1cb?hl=en&quot;&gt;thread&lt;/a&gt; the UI Shell makes a great addition to the &quot;Master JDev Application Workspace&quot; proposed by Todd Hill bringing a number of composite ADF bounded task flows together.&lt;br /&gt;&lt;br /&gt;9) The demonstration UI Shell application shows a basic mechanism of stopping a user leaving an activity once they&#039;ve made &quot;it dirty&quot;.  The analogy to this is in the JDev IDE when the user changes the contents of a source file, the tab control title font becomes italic and the user is warned/prompted to save changes if they attempt to close the tab without saving.&lt;br /&gt;&lt;br /&gt;Currently this feature should be considered a demonstration feature only as in the downloadable UI Shell demonstration application it has a number of limitations (it is a demo after all).  In particular the isDirty() check is only done within a subsystem&#039;s activities.  Clicking on a different subsystem tab/page doesn&#039;t invoke the isDirty() check with the appropriate warning dialog.  It would be my assumption that this check would need to be coded in each specific application, reusing the isDirty() facilities provided.&lt;br /&gt;&lt;br /&gt;10) For the logoImagePath attribute you can specify the path of the UI Shell log image, but not the size.  In the turn the layout tends to assume a horizontal logo.  If corporate branding is important to your organisation and they have a long vertical logo, good luck.&lt;br /&gt;&lt;br /&gt;11) The default UI Shell has no consideration of security.  For instance what subsystems are available under the globalTabs for the current user is your responsibility&lt;br /&gt;&lt;br /&gt;12) The overall template does waste some vertical screen real-estate:&lt;br /&gt;&lt;br /&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://3.bp.blogspot.com/_5hhNK2aXwp8/SxNJZCJRpdI/AAAAAAAAA3I/oVBJde4YIRo/s1600/ui4.png&quot;&gt;&lt;img style=&quot;display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 318px;&quot; src=&quot;http://3.bp.blogspot.com/_5hhNK2aXwp8/SxNJZCJRpdI/AAAAAAAAA3I/oVBJde4YIRo/s400/ui4.png&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5409748271823431122&quot; /&gt;&lt;/a&gt;See annotations A, B and C.&lt;br /&gt;&lt;br /&gt;A can be trimmed by setting the globalSplitterPosition attribute.  At this time it doesn&#039;t look like B and C can be set in the default UI Shell.  Ideally we&#039;d want something like this:&lt;br /&gt;&lt;br /&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://4.bp.blogspot.com/_5hhNK2aXwp8/SxNJZYL53dI/AAAAAAAAA3Q/na2NJtbfqcA/s1600/ui5.png&quot;&gt;&lt;img style=&quot;display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 322px;&quot; src=&quot;http://4.bp.blogspot.com/_5hhNK2aXwp8/SxNJZYL53dI/AAAAAAAAA3Q/na2NJtbfqcA/s400/ui5.png&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5409748277740035538&quot; /&gt;&lt;/a&gt;13) The overall template is extremely small – only 74k – wow, Oracle can create something that doesn&#039;t take up an entire CD! ;-)&lt;br /&gt;&lt;br /&gt;14) I note in the source code downloadable from Steve Muench&#039;s blog that there are a few comments that the implementation will change dependent on later updates to the ADF component set presumably available in later JDev releases (ie. see the TabContext.java REMOVE_ME_WHEN_NAVPANE_SUPPORTS_STAMPING comment).&lt;br /&gt;&lt;br /&gt;This implies the default functionality of the UI Shell could change in the future which could have issues for your existing applications based on the UI Shell and therefore your regression testing and user experience.  It may be necessary to source the UI Shell code and baseline in your code repository rather than being subjected to changes in functionality on upgrading to future JDev releases.&lt;br /&gt;&lt;br /&gt;15) As per the UI Shell whitepaper, the 7 zillion steps to reproduce the demonstration UI Shell application do look daunting.  However if you&#039;re familiar with JDev, page templates and constructing JSF pages it only takes about 20-30 minutes to run through most of the steps.  In fact most steps are just setting up dummy task flows and page fragments to show some content within the produced template, nothing really to do with the template itself.&lt;br /&gt;&lt;br /&gt;16) You&#039;ll need to remind users/analysts/managers etc that what the UI Shell gives in preconfigured layouts, saving developers time and boosting productivity, it takes away in customizable layout of the screen.  This is a common point of contention in component based frameworks where a super component gives a large array of features, but the component works as the component works and cannot be easily customised without headache.&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-6440026580328519387?l=one-size-doesnt-fit-all.blogspot.com&#039; alt=&#039;&#039; /&gt;&lt;/div&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/OneSizeDoesntFitAll/~4/ce5PvdTToxc&quot; height=&quot;1&quot; width=&quot;1&quot;/&gt;&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1202777&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Mon, 30 Nov 2009 10:30:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1202777</guid>
</item>
<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, 26 Nov 2009 02:00:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1100244</guid>
</item>
<item>
 <title>OpenXava 3.1.4 Released</title>
 <link>http://java.sys-con.com/node/1086134</link>
 <description>OpenXava 3.1.4 is a framework focused in productivity for developing business Java applications. The idea is that you write only your POJOs annotated with JPA and you get an application ready for production.

With OpenXava, you only need to write your model, POJOs and Java annotations. You do not need to write the view, and the controller (for CRUD, printing, etc) is reused. And from that you&#039;ll have an application for CRUD, report generation in PDF, export to Excel, searching, sorting, validations etc. You only need to write a simple Java class, no XMLs, no JSPs and no code generation.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1086134&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Fri, 28 Aug 2009 09:45:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1086134</guid>
</item>
<item>
 <title>Java Memory Problems</title>
 <link>http://java.sys-con.com/node/1071319</link>
 <description>Memory Leaks and other memory related problems are among the most prominent performance and scalability problems in Java.  Reason enough to discuss this topic in more detail.
The Java memory model- or more specifically the garbage collector &amp;#8211;  has solved many memory problems. At the same time new ones have been created. Especially in J EE [...]


Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href=&#039;http://blog.dynatrace.com/2009/02/12/sharepoint-identifying-memory-problems-introduced-by-custom-code/&#039; rel=&#039;bookmark&#039; title=&#039;Permanent Link: SharePoint: Identifying memory problems introduced by custom code&#039;&gt;SharePoint: Identifying memory problems introduced by custom code&lt;/a&gt; &lt;small&gt;SharePoint is a great platform that makes it easy to...&lt;/small&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&#039;http://blog.dynatrace.com/2009/04/07/performance-analysis-how-to-identify-bad-methods-messing-up-the-gc/&#039; rel=&#039;bookmark&#039; title=&#039;Permanent Link: Performance Analysis: How to identify &amp;#8220;bad&amp;#8221; methods messing up the GC&#039;&gt;Performance Analysis: How to identify &amp;#8220;bad&amp;#8221; methods messing up the GC&lt;/a&gt; &lt;small&gt;Whenever the Garbage Collector kicks in to free up memory...&lt;/small&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&#039;http://blog.dynatrace.com/2009/03/31/net-performance-analysis-a-net-garbage-collection-mystery/&#039; rel=&#039;bookmark&#039; title=&#039;Permanent Link: .NET Performance Analysis: A .NET Garbage Collection Mystery&#039;&gt;.NET Performance Analysis: A .NET Garbage Collection Mystery&lt;/a&gt; &lt;small&gt;Memory Management in .NET is a broad topic with a...&lt;/small&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1071319&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Thu, 13 Aug 2009 22:00:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1071319</guid>
</item>
<item>
 <title>JSR Watch: JavaOne Wrap-up</title>
 <link>http://java.sys-con.com/node/1033487</link>
 <description>The year’s biggest Java community event – JavaOne – finished recently. As it is for others in the Java world, this is a busy time for the JCP. We host various events for our members, we participate in discussions and BOFs, and like all other attendees, we enjoy the opportunity to meet with members of the Java developer community. In this column I’ll review our JavaOne activities, and also discuss the new version of our jcp.org website, which we hope will encourage and enable even more community involvement in our work.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/1033487&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Mon, 13 Jul 2009 17:45:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/1033487</guid>
</item>
<item>
 <title>JAX-WS: A @SchemaValidation Custom Handler to Alter Framework SOAP Faults</title>
 <link>http://java.sys-con.com/node/952429</link>
 <description>A few days ago I blogged about suppressing the SOAP fault detail Java stack trace on WebLogic Server when using the JAX-WS @SchemaValidation annotation for your web services. One of the problems with the @SchemaValidation annotation is dependent on the error in your incoming SOAP payload, you may get all sorts of potential errors returned in a SOAP fault.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/952429&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Mon, 04 May 2009 20:56:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/952429</guid>
</item>
<item>
 <title>Google App Engine Unveils Its Second Language: Java</title>
 <link>http://java.sys-con.com/node/925625</link>
 <description>Only today I&#039;ve discovered that Google added support to Java for its App Engine. This is a great news for the Java community. From the Google announcement: This release includes an early look at our Java runtime, integration with Google Web Toolkit, and a Google Plugin for Eclipse, giving you an end-to-end Java solution for AJAX web applications. Our support for the Java language is still under development and we&#039;re eager to get your help and input.  Unfortunately at this stage there are several things you can&#039;t do using APP engine with Java.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/925625&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Sun, 19 Apr 2009 18:28:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/925625</guid>
</item>
<item>
 <title>Algorithms of the Intelligent Web</title>
 <link>http://java.sys-con.com/node/923306</link>
 <description>Modern Web applications are well known for delivering rich UI experience. A lesser known aspect is the use of certain techniques that enable the intelligent processing of information and add value that cannot be delivered by other means. Examples of success stories that are based on these techniques abound, and include household names such as “Google Ad Sense”, Netflix, and Amazon. The &quot;Algorithms of the Intelligent Web&quot; describes what lies beneath these successes and should help you build intelligent behavior in any software application. &lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/923306&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Thu, 16 Apr 2009 23:00:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/923306</guid>
</item>
<item>
 <title>Maximizing Java Performance with Bespoke Programming</title>
 <link>http://java.sys-con.com/node/649827</link>
 <description>Commercial systems are developed with a huge range of performance requirements and we are concerned in this article with the small number of systems where absolute maximum performance is demanded either in terms of execution speed or available memory. We&#039;ll discuss the role of bespoke implementation and show that writing programs that utilize novel data structures and new algorithms designed with knowledge of the specific problem context is a necessary complement to the generic components and automatic optimizations offered by compilers and modern JVMs to maximize performance.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/649827&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Tue, 03 Mar 2009 08:45:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/649827</guid>
</item>
<item>
 <title>The Right Time for Real Time Java</title>
 <link>http://java.sys-con.com/node/617842</link>
 <description>Faced with the demands of mission-critical applications, many enterprise developers have pushed the Java language and the Java Virtual Machine (JVM) to the limit. The most common issue seen in transactional environments is achieving predictable response time or latency - in other words, the time it takes the system to respond to a request or to move a transaction through the IT infrastructure.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/617842&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Mon, 02 Mar 2009 08:35:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/617842</guid>
</item>
<item>
 <title>Four Paths to Java Parallelism</title>
 <link>http://java.sys-con.com/node/768830</link>
 <description>Parallel programming in Java is becoming easier with tools such as the fork/join framework, Pervasive DataRush, Terracotta, and Hadoop. This article gives a high-level description of each approach, pointing you in the right direction to begin writing parallel applications of your own. Companies today are swimming in data. The increasing ease with which data can be collected, combined with the decreasing cost of storing and managing it, means huge amounts of information are now accessible to anyone with the inclination.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/768830&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Mon, 15 Dec 2008 17:00:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/768830</guid>
</item>
<item>
 <title>Stepping Out of the Sandbox</title>
 <link>http://java.sys-con.com/node/658042</link>
 <description>An applet, a Java program that runs in a browser, often has to access the client resources. However, the security manager prevents an applet from accessing client resources. To access client resources, the applet has to have the proper permission. With this permission the applet can then access the client system resources by way of the security manager.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/658042&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Mon, 08 Dec 2008 18:30:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/658042</guid>
</item>
<item>
 <title>Inside Sun&#039;s Java Training Classrooms</title>
 <link>http://java.sys-con.com/node/765281</link>
 <description>As a software journalist, there are times when certain vendors will shut the door on reporting opportunities that might represent too much of an &quot;inside view&quot; of their technology or their organization. I&#039;ve been to more developer events than I can remember where I&#039;ve been handed a large red or yellow press badge so that I can be easily identified and kept out of the inner sanctums reserved for customers or employees.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/765281&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Wed, 03 Dec 2008 05:30:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/765281</guid>
</item>
<item>
 <title>Achieving Thread Synchronization &amp; Parallelized Execution in Java</title>
 <link>http://java.sys-con.com/node/712963</link>
 <description>Applications that have high performance as a quality goal would motivate a programmer to design and build them as multithreaded apps. The Java programming environment provides for parallel execution of logic by using threads. However, this is at a lower level and provides limited capability. To make multithreading work successfully in an application, programmers have to handle higher-level concerns like synchronizing the execution of multiple threads, handling exceptions in threads executing in parallel, limiting the number of threads in the runtime environment, and thread pooling.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/712963&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Thu, 16 Oct 2008 20:00:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/712963</guid>
</item>
<item>
 <title>Rating JRuby, Jython, and Groovy on the Java Platform</title>
 <link>http://java.sys-con.com/node/618618</link>
 <description>Open source software, while not synonymous with Java, may often be seamlessly integrated with Java code to produce a versatile synthesis that makes developers&#039; lives much easier. In recent years, developers have taken some open source dynamic languages, commonly referred to as &#039;scripting languages,&#039; and adapted them to the more mainstream Java platform.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/618618&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Fri, 25 Jul 2008 17:15:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/618618</guid>
</item>
<item>
 <title>WSRP Really Works! - Part 2</title>
 <link>http://java.sys-con.com/node/613866</link>
 <description>A standard from OASIS called Web Services for Remote Portlets (WSRP) is used so portlets can be decoupled from a portal. In part one (JDJ, Volume. 13, issue 3) of this article, we introduced the relevant standards and specifications and then demonstrated WSRP&#039;s capabilities by consuming a WebSphere Portal portlet in WebLogic Portal.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/613866&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Thu, 17 Jul 2008 18:00:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/613866</guid>
</item>
<item>
 <title>Why the Web Dinosaurs Died</title>
 <link>http://java.sys-con.com/node/607645</link>
 <description>A fast-moving Comet is about to impact the Internet. When it hits, it will wipe away the architecture flaws we have lived with for the past 15 years and allow a new World Wide Web to evolve. This new Web will include applications that are instantly on and always on, applications that are truly multi-user, and applications that go far beyond today&#039;s &#039;click and wait&#039; Web solutions.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/607645&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Thu, 10 Jul 2008 12:30:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/607645</guid>
</item>
<item>
 <title>Is Open Source Good for the Java Developer?</title>
 <link>http://java.sys-con.com/node/595775</link>
 <description>Commercial open source software has arrived. There have been commercial sponsors of open source projects for a long time, but the recent spate of high-price (for open source, at least) acquisitions of companies with open source products at the core of their business has made a splash in the technology industry. In addition, Sun&#039;s convulsions into the open source world have left the Java landscape decisively in open source territory.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/595775&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Mon, 23 Jun 2008 12:15:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/595775</guid>
</item>
<item>
 <title>NetBeans: It&#039;s Not Just for Java Anymore</title>
 <link>http://java.sys-con.com/node/596784</link>
 <description>Java developers have had a nice ride the last few years. With ferocious competition in the Java tools space, the tools they use have been getting better and better. Where one tool innovates, such as with quick fixes, the competitors quickly duplicate and expand on that innovation. This has led to a fertile field of tools for Java developers to choose from.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/596784&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Mon, 23 Jun 2008 12:00:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/596784</guid>
</item>
<item>
 <title>AJAX and Enterprise RIA Tools - JSF, Flex, and JavaFX</title>
 <link>http://java.sys-con.com/node/529474</link>
 <description>2008 is going to be an important year for Rich Internet Applications. Most organizations are delivering or planning to deliver Rich Internet Applications; however, at the same time, most IT managers are facing a dilemma: which Rich Internet Application technology and platform to use? The number of different frameworks and libraries is too vast to even consider evaluating a fraction of them.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/529474&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Fri, 20 Jun 2008 12:45:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/529474</guid>
</item>
<item>
 <title>J-CASE Tag Library - Interactive Storyboarding with JSP</title>
 <link>http://java.sys-con.com/node/584092</link>
 <description>A lot of rework still happens in projects applying UML techniques because of conflicts and omissions in requirements. To reduce rework, interactive storyboarding is effective, but it seems that projects that use the technique are limited because of the few tools available. To improve this situation, this article introduces the J-CASE open source Tag Library that lets us describe storyboards on JSPs based on use cases, and explains how to generate document and UML diagrams from the JSPs.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/584092&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Sat, 07 Jun 2008 10:45:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/584092</guid>
</item>
<item>
 <title>Modernizing Axis1 Services Painlessly</title>
 <link>http://java.sys-con.com/node/576478</link>
 <description>If you&#039;ve been working with Web Services for a long time, chances are you&#039;ve worked with Apache Axis and that you have an Axis Web Service somewhere in your code base. You probably also know about the many improvements in Axis2, especially around support for the more modern WS-* standards. So maybe you&#039;ve been planning on migrating these old Axis services, but it can be hard to justify spending a lot of time on something that&#039;s working just fine.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/576478&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Wed, 28 May 2008 15:30:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/576478</guid>
</item>
<item>
 <title>The Rise of Functional Java Programming</title>
 <link>http://java.sys-con.com/node/574653</link>
 <description>Java applications have become steadily harder to understand and maintain in recent years. Object-oriented programming has proven an effective way to develop enterprise applications, but several recent trends are causing a sharp increase in code complexity. One is the increasingly common use of the Factory design pattern, abstracting away the object creation process.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/574653&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Fri, 23 May 2008 14:00:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/574653</guid>
</item>
<item>
 <title>Case Study: Java and the Mac</title>
 <link>http://java.sys-con.com/node/566068</link>
 <description>This is the story of a Mac application developer (okay - it&#039;s about two of them) who set out on a quest to find an application development tool based on Java so his boss would let him develop on the Mac platform, which he loved. There was only one catch - he had to find a tool that was fast. Traditional Java programming was going to take waaaay too long to convert the internal custom programs that had been written in an old 4GL.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/566068&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Fri, 16 May 2008 14:30:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/566068</guid>
</item>
<item>
 <title>JavaOne 2008: Uncommon Java Bugs</title>
 <link>http://java.sys-con.com/node/564291</link>
 <description>Any large Java source base can have insidious and subtle bugs. Every experienced Java programmer knows that finding and fixing these bugs can be difficult and costly. Fortunately, there are a large number of free open source Java tools available that can be used to find and fix defects early in the development life cycle. In this article, we&#039;ll look at a few examples of specific uncommon[1] or unusual defects that can happen in code and see how different Java static analysis tools detect them.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/564291&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Fri, 16 May 2008 11:45:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/564291</guid>
</item>
<item>
 <title>Jinfonet and Composite Software Create New Java-Based Joint Solution</title>
 <link>http://java.sys-con.com/node/195887</link>
 <description>JReport and Composite Software announced the companies have partnered to offer a new joint solution: JReport OnDemand Integration. The companies will co-market and co-sell the new reporting solution with out-of-the-box information integration capabilities.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/195887&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Wed, 21 Feb 2007 18:00:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/195887</guid>
</item>
<item>
 <title>Are Vendors Becoming More in Charge of Java Enterprise Edition...</title>
 <link>http://java.sys-con.com/node/325170</link>
 <description>One of the things that kept me and my team busy over the past couple of years was starting to support J2EE 1.4 in OptimalJ - a goal that we accomplished with the release of OptimalJ 4.2. Now that this job is complete, it&#039;s interesting to look back and ponder the experience and learn from it.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/325170&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Mon, 22 Jan 2007 13:00:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/325170</guid>
</item>
<item>
 <title>ObjectWeb Java Project Wins Free Software Award</title>
 <link>http://java.sys-con.com/node/313731</link>
 <description>OpenMobile IS has won the Gold Award in the &#039;Company Management&#039; category of the Free Software Awards 2006. OpenMobileIS is a Java Framework conceived to integrate mobile application developement business. Open Mobile IS Java framework aims to provide all the functionalities and components needed for the development of enterprise mobile applications. Open mobile IS is an open source project (GNU LGPL license) that aims to provide all the necessary tools, API and documents enabling effective nomad applications development.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/313731&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Tue, 12 Dec 2006 23:00:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/313731</guid>
</item>
<item>
 <title>GigaSpaces: &#039;POJOs&#039; Offer Most Efficient Storage in Java</title>
 <link>http://java.sys-con.com/node/313724</link>
 <description>GigaSpaces Technologies has integrated McObject&#039;s Perst open source, object-oriented all-Java embedded database for real-time data management in its massively scaleable distributed application technology. GigaSpaces embeds Perst in version 5.1 of its software, where Perst provides persistence for applications that are deployed and optimized using GigaSpaces&#039; highly scalable, self-managing distributed solution.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/313724&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Tue, 12 Dec 2006 22:00:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/313724</guid>
</item>
<item>
 <title>Open Source Education Models Discussed at Sun Microsystems&#039; Participation Age Event</title>
 <link>http://java.sys-con.com/node/273349</link>
 <description>Sun Microsystems, challenged leaders to rethink traditional education models. On the Massachusetts Institute of Technology&#039;s (MIT) campus at a forum titled &#039;Open For Education,&#039; introduced by Sun&#039;s Chairman of the Board of Directors Scott McNealy, the participants discussed how the rise of the global network has lowered barriers to access so that educators and students alike should contribute to and share better educational tools.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/273349&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Tue, 19 Sep 2006 00:00:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/273349</guid>
</item>
<item>
 <title>AJAX and the Spring Framework with TIBCO General Interface</title>
 <link>http://java.sys-con.com/node/253549</link>
 <description>Ajax(Asynchronous JavaScript and XML) means many things to many people. However, one thing is certain: To users it implies a higher level of functionality and an improved experience. To the developer, another certainty follows: More work. The only question is how much work and to what end.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/253549&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Wed, 13 Sep 2006 13:00:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/253549</guid>
</item>
<item>
 <title>Mentality Shift: from a RAD tool to Java and back</title>
 <link>http://java.sys-con.com/node/253055</link>
 <description>Mentality of programmers depends on a  programming language or tool they use. Should they even try to learn what&#039;s under the hood in a particular framework?&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/253055&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Thu, 27 Jul 2006 14:45:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/253055</guid>
</item>
<item>
 <title>NetBeans Extends Java Platform</title>
 <link>http://java.sys-con.com/node/204679</link>
 <description>Sun Microsystems, Inc., maker of NetBeans Mobility Pack, announced the availability of the NetBeans Mobility Pack 5.0 for Connected Device Configuration.  The Mobility Pack for CDC was designed to bring the many advantages of the Java platform to a broad range of network-connected consumer and embedded devices, including smart communicators, high-end PDAs, and set-top boxes.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/204679&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Mon, 10 Apr 2006 08:30:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/204679</guid>
</item>
<item>
 <title>SlickEdit Inc. Release of SlickEdit v11 Windows, Linux, UNIX, and Mac OS X Platforms</title>
 <link>http://java.sys-con.com/node/203713</link>
 <description>SlickEdit Inc. announced the release of SlickEdit v11 for Windows, Linux, UNIX, and Mac OS X platforms. SlickEdit v11 introduces new core editing features that allow power programmers to be more productive by reducing busy-work and repetitive tasks.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/203713&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Fri, 07 Apr 2006 10:15:00 EDT</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/203713</guid>
</item>
<item>
 <title>Ping Identity Announces Additions to PingFederate Integration Kit Family</title>
 <link>http://java.sys-con.com/node/198503</link>
 <description>Ping Identity announced the expansion of its PingFederate Integration Kit family to include both Windows Kerberos and Oracle/Oblix COREid. These new Integration Kits join Ping&#039;s existing family of adapters for Windows Login, Java and .NET applications, CA eTrust SiteMinder and Salesforce.com in providing turnkey first and last mile integration when configuring PingFederate to deliver Web SSO using SAML 1.x, SAML 2.0 and WS-Federation.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/198503&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Fri, 24 Mar 2006 09:00:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/198503</guid>
</item>
<item>
 <title>Xenos Announces Updated Java App for Intelligent Transformation of Printed Documents</title>
 <link>http://java.sys-con.com/node/192925</link>
 <description>Xenos Group announced today the release of Xenos d2e Vision version 2.2 for transforming documents into electronic formats. Designed for rapid and seamless integration with other e-Business applications, this version includes enhancements in its handling of images, color and support for additional input and output print streams and formats.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/192925&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Mon, 20 Mar 2006 11:30:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/192925</guid>
</item>
<item>
 <title>CoutureCandy Sweetens Online Retailing with Java-Based Elastic Path Software</title>
 <link>http://java.sys-con.com/node/191558</link>
 <description>Elastic Path Software announced today the successful launch of CoutureCandy, online retailer of designer apparel. CoutureCandy was developed to fill a growing demand for the freshest designer apparel online, without sacrificing the allure, character and personal service distinctive of offline boutiques. They have successfully accomplished this mission through an innovative community based fashion website built around the Elastic Path ecommerce software platform.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/191558&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Mon, 20 Mar 2006 09:15:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/191558</guid>
</item>
<item>
 <title>Elastic Path Optimizes SEO eCommerce Software</title>
 <link>http://java.sys-con.com/node/191583</link>
 <description>Elastic Path Software announced today the general availability of Elastic Path 4.1, an update of its Java-based ecommerce software, enabling marketers to engage in advanced search engine optimization (SEO) campaigns.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/191583&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Fri, 17 Mar 2006 17:00:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/191583</guid>
</item>
<item>
 <title>Quest Software to Deliver Graphical Root-Cause Diagnostics for Oracle RAC IT Application</title>
 <link>http://java.sys-con.com/node/191768</link>
 <description>Quest Software announced today version 1.0 of Quest Spotlight on Oracle RAC, the newest extension of Quest Software&#039;s patented Spotlight product family.  Spotlight on Oracle RAC is the first product available to provide a graphical view on the internal performance of Oracle Real Application Clusters (RAC). Presenting diagnostic data from all perspectives of a multi-level RAC environment node, cluster, interconnect and shared disks the new product enables database administrators to proactively pinpoint and resolve potential cluster database performance problems before they impact end users.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/191768&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Fri, 17 Mar 2006 15:15:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/191768</guid>
</item>
<item>
 <title>MetaMatrix Announces New Product For Java Developers</title>
 <link>http://java.sys-con.com/node/191682</link>
 <description>MetaMatrix announced today a new product, MetaMatrix Query, built for Java application developers. MetaMatrix Query is an embeddable Java distributed query component that streamlines development and maintenance of Java applications that use data from two or more relational databases. When embedded in an application, the MetaMatrix Query data service operates as a single JDBC driver that facilitates access to data from multiple, distributed relational databases, federating data from these sources and optimizing distributed queries. By using MetaMatrix Query, Java developers can reduce development and maintenance time and improve the performance of their applications.&lt;p&gt;&lt;a href=&quot;http://java.sys-con.com/node/191682&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <pubDate>Tue, 14 Mar 2006 11:45:00 EST</pubDate>
 <guid isPermaLink="true">http://java.sys-con.com/node/191682</guid>
</item>
</channel>
</rss>
