__NS1:!DOCTYPE #text=" " HTML="" #text=" " PUBLIC="" #text=" " "-//W3C//DTD="" #text=" " HTML="" #text=" " 4.01="" #text=" " Transitional//EN"="" xmlns:__NS1="http://www.w3.org/TR/REC-html40">
<!-- Application: TSS Portal -->
<!-- Page: Home -->
<!-- Generated: Tue May 10 06:01:38 EDT 2005 -->
<__NS1:HTML>
<__NS1:HEAD>
<__NS1:META #text=" " name="generator" #text=" " content="Tapestry Application Framework, version 3.0.1" /="">
<__NS1:META #text=" " http-equiv="Content-Type" #text=" " content="text/html;charset=UTF-8" /="">
<__NS1:TITLE>TheServerSide.com - News, Patterns, Reviews, Discussions, Articles, Books
<__NS1:LINK #text=" " rel="stylesheet" #text=" " type="text/css" #text=" " href="/skin/style/sitestyle.css" /="">
<__NS1:LINK #text=" " rel="stylesheet" #text=" " type="text/css" #text=" " href="/style/tapestry.css" /="">
<__NS1:BODY>
<__NS1:SCRIPT #text=" " language="JavaScript"><!--
var tapestry_preload = new Array();
if (document.images)
{
tapestry_preload[0] = new Image();
tapestry_preload[0].src = "/skin/images/tab_news_mo.gif";
tapestry_preload[1] = new Image();
tapestry_preload[1].src = "/skin/images/tab_news_sel.gif";
tapestry_preload[2] = new Image();
tapestry_preload[2].src = "/skin/images/tab_discussions_mo.gif";
tapestry_preload[3] = new Image();
tapestry_preload[3].src = "/skin/images/tab_discussions.gif";
tapestry_preload[4] = new Image();
tapestry_preload[4].src = "/skin/images/tab_techtalks_mo.gif";
tapestry_preload[5] = new Image();
tapestry_preload[5].src = "/skin/images/tab_techtalks.gif";
tapestry_preload[6] = new Image();
tapestry_preload[6].src = "/skin/images/tab_patterns_mo.gif";
tapestry_preload[7] = new Image();
tapestry_preload[7].src = "/skin/images/tab_patterns.gif";
tapestry_preload[8] = new Image();
tapestry_preload[8].src = "/skin/images/tab_reviews_mo.gif";
tapestry_preload[9] = new Image();
tapestry_preload[9].src = "/skin/images/tab_reviews.gif";
tapestry_preload[10] = new Image();
tapestry_preload[10].src = "/skin/images/tab_articles_mo.gif";
tapestry_preload[11] = new Image();
tapestry_preload[11].src = "/skin/images/tab_articles.gif";
tapestry_preload[12] = new Image();
tapestry_preload[12].src = "/skin/images/tab_myprofile_mo.gif";
tapestry_preload[13] = new Image();
tapestry_preload[13].src = "/skin/images/tab_myprofile.gif";
tapestry_preload[14] = new Image();
tapestry_preload[14].src = "/skin/images/tab_mythreads_mo.gif";
tapestry_preload[15] = new Image();
tapestry_preload[15].src = "/skin/images/tab_mythreads.gif";
tapestry_preload[16] = new Image();
tapestry_preload[16].src = "/skin/images/tab_logout_mo.gif";
tapestry_preload[17] = new Image();
tapestry_preload[17].src = "/skin/images/tab_logout.gif";
tapestry_preload[18] = new Image();
tapestry_preload[18].src = "/skin/images/tab_feeds_mo.gif";
tapestry_preload[19] = new Image();
tapestry_preload[19].src = "/skin/images/tab_feeds.gif";
tapestry_preload[20] = new Image();
tapestry_preload[20].src = "/skin/images/tab_about_mo.gif";
tapestry_preload[21] = new Image();
tapestry_preload[21].src = "/skin/images/tab_about.gif";
}
function focus_rollover()
{
if (document.images)
document.rollover.src = tapestry_preload[0].src;
}
function blur_rollover()
{
if (document.images)
document.rollover.src = tapestry_preload[1].src;
}
function focus_rollover$0()
{
if (document.images)
document.rollover$0.src = tapestry_preload[2].src;
}
function blur_rollover$0()
{
if (document.images)
document.rollover$0.src = tapestry_preload[3].src;
}
function focus_rollover$1()
{
if (document.images)
document.rollover$1.src = tapestry_preload[4].src;
}
function blur_rollover$1()
{
if (document.images)
document.rollover$1.src = tapestry_preload[5].src;
}
function focus_rollover$2()
{
if (document.images)
document.rollover$2.src = tapestry_preload[6].src;
}
function blur_rollover$2()
{
if (document.images)
document.rollover$2.src = tapestry_preload[7].src;
}
function focus_rollover$3()
{
if (document.images)
document.rollover$3.src = tapestry_preload[8].src;
}
function blur_rollover$3()
{
if (document.images)
document.rollover$3.src = tapestry_preload[9].src;
}
function focus_rollover$4()
{
if (document.images)
document.rollover$4.src = tapestry_preload[10].src;
}
function blur_rollover$4()
{
if (document.images)
document.rollover$4.src = tapestry_preload[11].src;
}
function focus_myProfileRollover()
{
if (document.images)
document.myProfileRollover.src = tapestry_preload[12].src;
}
function blur_myProfileRollover()
{
if (document.images)
document.myProfileRollover.src = tapestry_preload[13].src;
}
function focus_myThreadsRollover()
{
if (document.images)
document.myThreadsRollover.src = tapestry_preload[14].src;
}
function blur_myThreadsRollover()
{
if (document.images)
document.myThreadsRollover.src = tapestry_preload[15].src;
}
function focus_logoutRollover()
{
if (document.images)
document.logoutRollover.src = tapestry_preload[16].src;
}
function blur_logoutRollover()
{
if (document.images)
document.logoutRollover.src = tapestry_preload[17].src;
}
function focus_feedsRollover()
{
if (document.images)
document.feedsRollover.src = tapestry_preload[18].src;
}
function blur_feedsRollover()
{
if (document.images)
document.feedsRollover.src = tapestry_preload[19].src;
}
function focus_aboutRollover()
{
if (document.images)
document.aboutRollover.src = tapestry_preload[20].src;
}
function blur_aboutRollover()
{
if (document.images)
document.aboutRollover.src = tapestry_preload[21].src;
}
window.onload = function ()
{
var styleclass_inputSearchTerm = document.Form0.inputSearchTerm.className;
document.Form0.inputSearchTerm.onblur = function()
{
var field = document.Form0.inputSearchTerm;
field.className = styleclass_inputSearchTerm;
if (field.value == '') field.value = 'search';
}
document.Form0.inputSearchTerm.onfocus = function()
{
var field = document.Form0.inputSearchTerm;
field.className = 'focus';
if (field.value == 'search') field.value = '';
}
if (document.Form0.inputSearchTerm.value == '') document.Form0.inputSearchTerm.value = 'search';
}
// --></script>
<script src="/skin/script/openwindow.js" language="javascript">
<!--WEBSIDESTORY CODE HBX1.0 (Universal)--
<!--COPYRIGHT 1997-2004 WEBSIDESTORY,INC. ALL RIGHTS RESERVED. U.S.PATENT No.6,393,479B1 & 6,766,370. INFO:http://websidestory.com/privacy-->
<__NS1:SCRIPT #text=" " language="javascript">
var _hbEC=0,_hbE=new Array;function _hbEvent(a,b){b=_hbE[_hbEC++]=new Object();b._N=a;b._C=0;return b;}
var hbx=_hbEvent("pv");hbx.vpc="HBX0103u";hbx.gn="ehg-techtarget.hitbox.com";
function getURLParam(param) {
param = param.toLowerCase() + "=";
var paramq = "?" + param;
var parama = "&" + param;
var wls = "?" + window.location.search.toLowerCase();
if (wls.indexOf(paramq) != -1) wls = wls.substring(wls.indexOf(paramq),wls.length); //first search value
if (wls.indexOf(parama) != -1) wls = wls.substring(wls.indexOf(parama),wls.length); //any other search value
wls = wls.substring(1, wls.length); //remove leading ? or &
if (wls.indexOf("&") != -1) wls = wls.substring(0,wls.indexOf("&")); //remove any additional values
return wls;
}
function urlParamExists(param) {
param = param.toLowerCase() + "=";
var result = false;
var paramq = "?" + param;
var parama = "&" + param;
var wls = "?" + window.location.search.toLowerCase();
if (wls.indexOf(paramq) != -1 || wls.indexOf(parama) != -1) result = true;
return result;
}
//BEGIN EDITABLE SECTION
//CONFIGURATION VARIABLES
hbx.acct="DM54121089AE83EN3;DM5212204PCA83EN3";//ACCOUNT NUMBER(S)
//PAGENAME
var wlp = window.location.pathname.toLowerCase().substring(1,window.location.pathname.length);
var spn = "";
if (window.location.search) {
spn = window.location.search;
spn = spn.replace(/\?/g, "--");
spn = spn.replace(/&/g, "-");
}
hbx.pn=(wlp.length < 2) ? "home" : wlp;//PAGE NAME(S)
hbx.pn = hbx.pn.replace(eval("/\\//g"),"-");
hbx.pn += spn; //add in any search params
hbx.pndef="title";//DEFAULT PAGE NAME
//MULTI-LEVEL CONTENT
hbx.mlc="/theServerSideCom";
if (wlp.length > 1) hbx.mlc += "/" + wlp.substring(0,wlp.indexOf("/", 1));//MULTI-LEVEL CONTENT CATEGORY
hbx.ctdef="full";//DEFAULT CONTENT CATEGORY
//OPTIONAL PAGE VARIABLES
//ACTION SETTINGS
hbx.fv="";//FORM VALIDATION MINIMUM ELEMENTS OR SUBMIT FUNCTION NAME
hbx.lt="none";//LINK TRACKING
hbx.dlf="n";//DOWNLOAD FILTER
hbx.dft="n";//DOWNLOAD FILE NAMING
hbx.elf="n";//EXIT LINK FILTER
//SEGMENTS AND FUNNELS
hbx.seg="";//VISITOR SEGMENTATION
hbx.fnl="";//FUNNELS
//CAMPAIGNS
hbx.cmp="";//CAMPAIGN ID
hbx.cmpn="";//CAMPAIGN ID IN QUERY
hbx.dcmp="";//DYNAMIC CAMPAIGN ID
hbx.dcmpn="";//DYNAMIC CAMPAIGN ID IN QUERY
hbx.dcmpe="";//DYNAMIC CAMPAIGN EXPIRATION
hbx.dcmpre="";//DYNAMIC CAMPAIGN RESPONSE EXPIRATION
hbx.hra="";//RESPONSE ATTRIBUTE
hbx.hqsr="";//RESPONSE ATTRIBUTE IN REFERRAL QUERY
hbx.hqsp="";//RESPONSE ATTRIBUTE IN QUERY
hbx.hlt="";//LEAD TRACKING
hbx.hla="";//LEAD ATTRIBUTE
hbx.gp="";//CAMPAIGN GOAL
hbx.gpn="";//CAMPAIGN GOAL IN QUERY
hbx.hcn="";//CONVERSION ATTRIBUTE
hbx.hcv="";//CONVERSION VALUE
hbx.cp="null";//LEGACY CAMPAIGN
hbx.cpd="";//CAMPAIGN DOMAIN
//CUSTOM VARIABLES
hbx.ci="";//CUSTOMER ID
hbx.hc1="";//CUSTOM 1
hbx.hc2="";//CUSTOM 2
hbx.hc3="";//CUSTOM 3
hbx.hc4="";//CUSTOM 4
hbx.hrf="";//CUSTOM REFERRER
hbx.pec="";//ERROR CODES
//INSERT CUSTOM EVENTS
if (window.location.search.indexOf('wrTest=on') != -1) window.alert(hbx.pn + " :: " + hbx.mlc + " :: " + wlp);
//END EDITABLE SECTION
<__NS1:SCRIPT #text=" " language="javascript1.1" #text=" " src="/skin/script/hbx.js">
<!--END WEBSIDESTORY CODE-->
<__NS1:SCRIPT #text=" " src="/skin/script/dart.js" #text=" " language="javascript">
<__NS1:SCRIPT #text=" " src="/skin/script/doubleclickad.js" #text=" " language="javascript">
<__NS1:TABLE #text=" " cellspacing="0" #text=" " class="head">
<__NS1:TR>
<__NS1:TD #text=" " class="left"><__NS1:A #text=" " href="/" #text=" " class="nodecoration" #text=" " title="Go to the front page news"><__NS1:IMG #text=" " src="/skin/images/header_logotype.gif" #text=" " width="321" #text=" " height="72" #text=" " border="0" /=""><__NS1:IMG #text=" " src="/skin/images/header_div.gif" #text=" " width="71" #text=" " height="72" #text=" " border="0" /="">
<__NS1:TD #text=" " class="right"><!-- begin ZEDO -->
<__NS1:SCRIPT #text=" " language="JavaScript">
//individual ad placement, modify as needed
adWidth = "468";
adHeight = "60";
adString = "<iframe src='http://ad.doubleclick.net/adi/" + adSiteValue + "/" + adZoneValue + ";kw=" + adKW + ";dcopt=" + adDcopt + ";pos=0" + ";sz=" + adWidth + "x" + adHeight + ";ptile=" + adPTile + ";ord=" + adRandom + "?' width='" + adWidth + "' height='" + adHeight + "' border='0' frameborder='0' marginheight='0' marginwidth='0' scrolling='no'>\n";
adString += "<a href='http://ad.doubleclick.net/jump/" + adSiteValue + "/" + adZoneValue + ";kw=" + adKW + ";dcopt=" + adDcopt + ";pos=0" + ";sz=" + adWidth + "x" + adHeight + ";ptile=" + adPTile + ";ord=" + adRandom + "?'>\n";
adString += "<img src='http://ad.doubleclick.net/ad/" + adSiteValue + "/" + adZoneValue + ";kw=" + adKW + ";dcopt=" + adDcopt + ";pos=0" + ";sz=" + adWidth + "x" + adHeight + ";ptile=" + adPTile + ";ord=" + adRandom + "?' width='" + adWidth + "' height='" + adHeight + "' border='0'></a>\n";
adString += "</iframe>\n";
document.write(adString);
//info
if (window.location.search.indexOf("adIframe=on") != -1) window.alert(adString);
if (window.location.search.indexOf("adString=on") != -1) window.alert("site=" + adSiteValue + " zone=" + adZoneValue + "\n " + " kw=" + adKW + " dcopt=" + adDcopt + " pos=0" + " sz=" + adWidth + "x" + adHeight + " ptile=" + adPTile + " ord=" + adRandom + "?");
//continue
adPTile = adPTile + 1;
adDcopt = "";
<!-- end ZEDO -->
<__NS1:TD><__NS1:IMG #text=" " src="/skin/images/header_endbar.gif" #text=" " width="6" #text=" " height="72" /="">
<__NS1:TABLE #text=" " cellspacing="0" #text=" " class="tabs">
<__NS1:TR><__NS1:TD #text=" " colspan="2"><__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " width="1" #text=" " height="1" /="">
<__NS1:TBODY>
<__NS1:TR>
<__NS1:TD #text=" " class="menuimages"><__NS1:A #text=" " href="/index.tss" #text=" " onMouseOut="javascript:blur_rollover();" #text=" " onMouseOver="javascript:focus_rollover();" #text=" " title="News"><__NS1:IMG #text=" " src="/skin/images/tab_news_sel.gif" #text=" " border="0" #text=" " name="rollover" #text=" " vspace="0" #text=" " width="43" #text=" " height="57" /=""><__NS1:A #text=" " href="/discussions/index.tss" #text=" " onMouseOut="javascript:blur_rollover$0();" #text=" " onMouseOver="javascript:focus_rollover$0();" #text=" " title="Discussions"><__NS1:IMG #text=" " src="/skin/images/tab_discussions.gif" #text=" " border="0" #text=" " name="rollover$0" #text=" " vspace="0" #text=" " width="63" #text=" " height="57" /=""><__NS1:A #text=" " href="/talks/index.tss" #text=" " onMouseOut="javascript:blur_rollover$1();" #text=" " onMouseOver="javascript:focus_rollover$1();" #text=" " title="Tech talks"><__NS1:IMG #text=" " src="/skin/images/tab_techtalks.gif" #text=" " border="0" #text=" " name="rollover$1" #text=" " vspace="0" #text=" " width="55" #text=" " height="57" /=""><__NS1:A #text=" " href="/patterns/index.tss" #text=" " onMouseOut="javascript:blur_rollover$2();" #text=" " onMouseOver="javascript:focus_rollover$2();" #text=" " title="Patterns"><__NS1:IMG #text=" " src="/skin/images/tab_patterns.gif" #text=" " border="0" #text=" " name="rollover$2" #text=" " vspace="0" #text=" " width="50" #text=" " height="57" /=""><__NS1:A #text=" " href="/reviews/index.tss" #text=" " onMouseOut="javascript:blur_rollover$3();" #text=" " onMouseOver="javascript:focus_rollover$3();" #text=" " title="Reviews"><__NS1:IMG #text=" " src="/skin/images/tab_reviews.gif" #text=" " border="0" #text=" " name="rollover$3" #text=" " vspace="0" #text=" " width="64" #text=" " height="57" /=""><__NS1:A #text=" " href="/articles/index.tss" #text=" " onMouseOut="javascript:blur_rollover$4();" #text=" " onMouseOver="javascript:focus_rollover$4();" #text=" " title="Articles"><__NS1:IMG #text=" " src="/skin/images/tab_articles.gif" #text=" " border="0" #text=" " name="rollover$4" #text=" " vspace="0" #text=" " width="46" #text=" " height="57" /="">
<__NS1:TD #text=" " class="menuutilimages"><__NS1:TABLE #text=" " cellspacing="0" #text=" " class="borderless" #text=" " align="right">
<__NS1:TR>
<__NS1:TD #text=" " class="divisor"><__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " width="1" #text=" " height="1" /="">
<__NS1:TD #text=" " class="formcontainer">
<__NS1:FORM #text=" " method="post" #text=" " name="Form0" #text=" " action="/tss" #text=" " class="search">
<__NS1:INPUT #text=" " type="hidden" #text=" " name="service" #text=" " value="direct/0/Home/border.search" /="">
<__NS1:INPUT #text=" " type="hidden" #text=" " name="sp" #text=" " value="S0" /="">
<__NS1:INPUT #text=" " type="hidden" #text=" " name="Form0" #text=" " value="inputSearchTerm" /="">
<__NS1:INPUT #text=" " type="text" #text=" " name="inputSearchTerm" #text=" " size="20" /=""> <__NS1:BUTTON #text=" " type="submit">Go<__NS1:BUTTON>
<__NS1:TD #text=" " class="divisor"><__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " width="1" #text=" " height="1" /="">
<__NS1:TD #text=" " class="membercount"><__NS1:SPAN #text=" " style="font-size:120%">
465998
<__NS1:BR>members
<__NS1:TD #text=" " class="divisor"><__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " width="1" #text=" " height="1">
<__NS1:TD><__NS1:A #text=" " href="/user/myprofile.tss" #text=" " onMouseOut="javascript:blur_myProfileRollover();" #text=" " onMouseOver="javascript:focus_myProfileRollover();"><__NS1:IMG #text=" " src="/skin/images/tab_myprofile.gif" #text=" " border="0" #text=" " name="myProfileRollover" #text=" " vspace="0" #text=" " width="62" #text=" " height="57" /="">
<__NS1:TD #text=" " class="divisor"><__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " width="1" #text=" " height="1">
<__NS1:TD><__NS1:A #text=" " href="/user/userthreads.tss" #text=" " onMouseOut="javascript:blur_myThreadsRollover();" #text=" " onMouseOver="javascript:focus_myThreadsRollover();"><__NS1:IMG #text=" " src="/skin/images/tab_mythreads.gif" #text=" " border="0" #text=" " name="myThreadsRollover" #text=" " vspace="0" #text=" " width="62" #text=" " height="57" /="">
<__NS1:TD #text=" " class="divisor"><__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " width="1" #text=" " height="1">
<__NS1:TD><__NS1:A #text=" " href="/tss?service=direct/0/Home/border.logout" #text=" " onMouseOut="javascript:blur_logoutRollover();" #text=" " onMouseOver="javascript:focus_logoutRollover();"><__NS1:IMG #text=" " src="/skin/images/tab_logout.gif" #text=" " border="0" #text=" " name="logoutRollover" #text=" " vspace="0" #text=" " width="46" #text=" " height="57" /="">
<__NS1:TD #text=" " class="divisor"><__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " width="1" #text=" " height="1">
<__NS1:TD><__NS1:A #text=" " href="/rss/index.tss" #text=" " onMouseOut="javascript:blur_feedsRollover();" #text=" " onMouseOver="javascript:focus_feedsRollover();" #text=" " title="RSS Feeds"><__NS1:IMG #text=" " src="/skin/images/tab_feeds.gif" #text=" " border="0" #text=" " name="feedsRollover" #text=" " width="56" #text=" " height="57" /=""> <__NS1:TD #text=" " class="divisor"><__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " width="1" #text=" " height="1">
<__NS1:TD><__NS1:A #text=" " href="/common/about.tss" #text=" " onMouseOut="javascript:blur_aboutRollover();" #text=" " onMouseOver="javascript:focus_aboutRollover();" #text=" " title="About ..."><__NS1:IMG #text=" " src="/skin/images/tab_about.gif" #text=" " border="0" #text=" " name="aboutRollover" #text=" " width="56" #text=" " height="57" /="">
<__NS1:TBODY>
<!--<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr><td><img src="/images/spacer.gif" width="868" height="1"></td></tr>
<tr><td align="center" class="announcement"><span class="quiet">Attention:</span> Registration Is Open for the <a href="#">Third Annual O'Reilly Emerging Technology Conference.</a></td></tr>
</table>-->
<__NS1:TABLE #text=" " class="layout" #text=" " cellspacing="0" #text=" " border="0">
<__NS1:TR>
<__NS1:TD #text=" " class="center" #text=" " width="75%">
<__NS1:TABLE #text=" " class="layout" #text=" " cellspacing="0">
<__NS1:TR>
<__NS1:TD #text=" " width="*">
<!-- Featured content -->
<__NS1:TABLE #text=" " cellspacing="0" #text=" " class="box">
<__NS1:THEAD>
<__NS1:TR>
<__NS1:TH>
<__NS1:IMG #text=" " src="/skin/images/bar_begin.gif" #text=" " width="8" #text=" " height="18" /="">
<__NS1:SPAN #text=" " class="container"><__NS1:SPAN #text=" " class="text">News<__NS1:SPAN #text=" " class="shadow">News<__NS1:SPAN #text=" " class="fill">News
<__NS1:TD>
<__NS1:IMG #text=" " src="/skin/images/bar_div.gif" #text=" " width="17" #text=" " height="18" /="">
<__NS1:SPAN #text=" " class="container">
<__NS1:SPAN #text=" " class="text"><__NS1:A #text=" " href="/news/post.tss">Post a news item
<__NS1:SPAN #text=" " class="shadow">Post a news item
<__NS1:SPAN #text=" " class="fill">Post a news item
<__NS1:IMG #text=" " src="/skin/images/bar_div.gif" #text=" " width="17" #text=" " height="18" /="">
<__NS1:SPAN #text=" " class="container">
<__NS1:SPAN #text=" " class="text"><__NS1:A #text=" " href="/news/morenews.tss?start_at=11">More news
<__NS1:SPAN #text=" " class="shadow">More news
<__NS1:SPAN #text=" " class="fill">More news
<__NS1:IMG #text=" " src="/skin/images/bar_div.gif" #text=" " width="17" #text=" " height="18" /="">
<__NS1:SPAN #text=" " class="container">
<__NS1:SPAN #text=" " class="text"><__NS1:A #text=" " href="/discussions/recentposts.tss">Active Threads
<__NS1:SPAN #text=" " class="shadow">Active Threads
<__NS1:SPAN #text=" " class="fill">Active Threads
<__NS1:IMG #text=" " src="/skin/images/bar_div.gif" #text=" " width="17" #text=" " height="18" /=""> <__NS1:SPAN #text=" " class="container">
<__NS1:SPAN #text=" " class="text"><__NS1:A #text=" " href="/rss/theserverside-rss2.xml"> XML
<__NS1:SPAN #text=" " class="shadow"> XML
<__NS1:SPAN #text=" " class="fill"> XML
<__NS1:IMG #text=" " src="/skin/images/bar_end.gif" #text=" " width="7" #text=" " height="18" /="">
<__NS1:TR>
<__NS1:TD #text=" " colspan="2" #text=" " class="barbottom"><__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " width="10" #text=" " height="10" /="">
<__NS1:THEAD>
<__NS1:TBODY>
<__NS1:TR>
<__NS1:TD #text=" " colspan="2">
<__NS1:P><__NS1:H1><__NS1:A #text=" " href="/news/thread.tss?thread_id=33787" #text=" " title="There are new messages is this thread since your last visit">Article: Using Spring Webflow<__NS1:H1>
<__NS1:DIV #text=" " class="iteminfo">Posted by:
<__NS1:A #text=" " href="/user/userthreads.tss?user_id=1" #text=" " title="view Floyd's recent threads ...">Floyd
Marinescu
on
May 09, 2005
<__NS1:A #text=" " href="/news/thread.tss?thread_id=33787" #text=" " class="widemargin">7 comments last post: May 10, 2005
<__NS1:A #text=" " href="/news/thread.tss?thread_id=33787#lastmsg" #text=" " title="This link takes you to the last message in the thread" #text=" " class="updated">updated
Spring Web Flow (SWF) is an emerging module of The Spring Framework that aims to be the best solution for the management of web application page flow, useable in any web framework. In this latest TSS article, the founders of Spring Webflow illustrate how a complex process can be implemented using the framework.
<__NS1:P>
<__NS1:P><__NS1:H1><__NS1:A #text=" " href="/news/thread.tss?thread_id=33820">Oracle ADF Faces Early Access Release Available<__NS1:H1>
<__NS1:DIV #text=" " class="iteminfo">Posted by:
<__NS1:A #text=" " href="/user/userthreads.tss?user_id=1" #text=" " title="view Floyd's recent threads ...">Floyd
Marinescu
on
May 09, 2005
<__NS1:A #text=" " href="/news/thread.tss?thread_id=33820" #text=" " class="widemargin">11 comments last post: May 09, 2005
Oracle is throwing it's weight behind JSF and has been publishing monthly early access drops of Oracle ADF Faces, a standard JSF component library with features such as client-side validation, Partial Page Rendering, internationalization, multiple client support, and more. EA 16 was just released and features 89 components including a dialog/wizard framework.
<__NS1:P>
<__NS1:SPAN #text=" " id="nointelliTXT">
<__NS1:TABLE #text=" " width="130" #text=" " align="left">
<__NS1:TR>
<__NS1:TD>
<!-- Text Ads -->
<__NS1:TABLE #text=" " width="125" #text=" " align="center" #text=" " cellpadding="0" #text=" " cellspacing="0" #text=" " class="rightbartable">
<__NS1:TR>
<__NS1:TD>
<__NS1:DIV #text=" " class="adtitle" #text=" " align="center">Sponsored Links<__NS1:BR><__NS1:BR>
<__NS1:DIV #text=" " class="adtext" #text=" " align="right">
<__NS1:SCRIPT #text=" " language="JavaScript">
if (typeof textAdNumber == "undefined") var textAdNumber = 5;
adWidth = 125;
adHeight = 100;
iHeight = 82;
if (typeof adColor == "undefined") var adColor = "FFFFFF";
adColor = "F6F6F4";
for (i=0; i < textAdNumber; i++) {
if ( i == 1 )
{
document.write("<br><a href='http://ad.doubleclick.net/clk;15919726;10808373;n?http://oracle.promotionexpert.com/SpaceSweepstakes/en/index.jsp?Src=3559501&Act=746'>Enter Now</a>");
document.write("<br>For the Oracle");
document.write("<br>Space Sweepstakes");
document.write("<br>Win a suborbital");
document.write("<br>Space Flight!");
document.write("<br><img src='/images/spacer.gif' height=5 width=1 border=0>\n");
}
adString = "<iframe src='http://ad.doubleclick.net/adi/" + adSiteValue + "/" + adZoneValue + ";bkg=" + adColor + ";kw=" + adKW + ";dcopt=" + adDcopt + ";pos=" + i + ";sz=" + adWidth + "x" + adHeight + ";ptile=" + adPTile + ";ord=" + adRandom + "?' width='" + adWidth + "' height='" + iHeight + "' border='0' frameborder='0' marginheight='0' marginwidth='0' scrolling='no'>\n";
adString += "<a href='http://ad.doubleclick.net/jump/" + adSiteValue + "/" + adZoneValue + ";bkg=" + adColor + ";kw=" + adKW + ";dcopt=" + adDcopt + ";pos=" + i + ";sz=" + adWidth + "x" + adHeight + ";ptile=" + adPTile + ";ord=" + adRandom + "?'>\n";
adString += "<img src='http://ad.doubleclick.net/ad/" + adSiteValue + "/" + adZoneValue + ";bkg=" + adColor + ";kw=" + adKW + ";dcopt=" + adDcopt + ";pos=" + i + ";sz=" + adWidth + "x" + adHeight + ";ptile=" + adPTile + ";ord=" + adRandom + "?' width='" + adWidth + "' height='" + iHeight + "' border='0'></a>\n";
adString += "</iframe><br><img src='/images/spacer.gif' height=5 width=1 border=0>\n";
document.write(adString);
//info
if (window.location.search.indexOf("adIframe=on") != -1) window.alert(adString);
if (window.location.search.indexOf("adString=on") != -1) window.alert("site=" + adSiteValue + " zone=" + adZoneValue + "\n " + " bkg=" + adColor + " kw=" + adKW + " dcopt=" + adDcopt + " pos=" + i + " sz=" + adWidth + "x" + adHeight + " ptile=" + adPTile + " ord=" + adRandom + "?");
//continue
adPTile = adPTile + 1;
adDcopt = "";
}
<__NS1:BR><__NS1:A #text=" " href="http://ad.doubleclick.net/clk;14176160;10687229;e?http://www.theserverside.net/msft/rc/index.tss">Microsoft U.S. Partner Readiness Center
<__NS1:BR><__NS1:BR>
<!-- Bitpipe Library-->
<__NS1:META #text=" " HTTP-EQUIV="Content-Type" #text=" " CONTENT="text/html; charset=us-ascii">
<__NS1:DIV #text=" " class="adtitle" #text=" " align="center"><__NS1:SPAN #text=" " id="nointelliTXT">White Papers <__NS1:BR><__NS1:BR>
<__NS1:DIV #text=" " class="adtext" #text=" " align="right"> <__NS1:SPAN #text=" " id="nointelliTXT">
<__NS1:A #text=" " href="http://library.theserverside.com" #text=" " onClick="return (true);">Enterprise Java Research Library<__NS1:BR>
Get Java related white papers, case studies and webcasts
<__NS1:BR>
<!-- Skyscrapper Ad -->
<__NS1:TABLE #text=" " width="125" #text=" " cellspacing="0" #text=" " cellpadding="0" #text=" " align="left" #text=" " class="margintable">
<__NS1:TR>
<__NS1:TD #text=" " align="left" #text=" " valign="middle">
<__NS1:SCRIPT #text=" " language="JavaScript">
//individual ad placement, modify as needed
adWidth = "120";
adHeight = "600";
adString = "<iframe src='http://ad.doubleclick.net/adi/" + adSiteValue + "/" + adZoneValue + ";kw=" + adKW + ";dcopt=" + adDcopt + ";pos=0" + ";sz=" + adWidth + "x" + adHeight + ";ptile=" + adPTile + ";ord=" + adRandom + "?' width='" + adWidth + "' height='" + adHeight + "' border='0' frameborder='0' marginheight='0' marginwidth='0' scrolling='no'>\n";
adString += "<a href='http://ad.doubleclick.net/jump/" + adSiteValue + "/" + adZoneValue + ";kw=" + adKW + ";dcopt=" + adDcopt + ";pos=0" + ";sz=" + adWidth + "x" + adHeight + ";ptile=" + adPTile + ";ord=" + adRandom + "?'>\n";
adString += "<img src='http://ad.doubleclick.net/ad/" + adSiteValue + "/" + adZoneValue + ";kw=" + adKW + ";dcopt=" + adDcopt + ";pos=0" + ";sz=" + adWidth + "x" + adHeight + ";ptile=" + adPTile + ";ord=" + adRandom + "?' width='" + adWidth + "' height='" + adHeight + "' border='0'></a>\n";
adString += "</iframe>\n";
document.write(adString);
//info
if (window.location.search.indexOf("adIframe=on") != -1) window.alert(adString);
if (window.location.search.indexOf("adString=on") != -1) window.alert("site=" + adSiteValue + " zone=" + adZoneValue + "\n " + " kw=" + adKW + " dcopt=" + adDcopt + " pos=0" + " sz=" + adWidth + "x" + adHeight + " ptile=" + adPTile + " ord=" + adRandom + "?");
//continue
adPTile = adPTile + 1;
adDcopt = "";
<__NS1:P><__NS1:H1><__NS1:A #text=" " href="/news/thread.tss?thread_id=33809" #text=" " title="There are new messages is this thread since your last visit">Javaworld: "Hiring the phantom Java architect"<__NS1:H1>
<__NS1:DIV #text=" " class="iteminfo">Posted by:
<__NS1:A #text=" " href="/user/userthreads.tss?user_id=194346" #text=" " title="view Joseph's recent threads ...">Joseph
Ottinger
on
May 09, 2005
<__NS1:A #text=" " href="/news/thread.tss?thread_id=33809" #text=" " class="widemargin">50 comments last post: May 10, 2005
<__NS1:A #text=" " href="/news/thread.tss?thread_id=33809#lastmsg" #text=" " title="This link takes you to the last message in the thread" #text=" " class="updated">updated
Javaworld has posted an article on the differences between architects and developers, stating that most people don't seem to know there's a difference or what that difference is, stating that "Knowing how to solve a problem's context verses solving the problem itself distinguishes architects from developers."
<__NS1:P>
<__NS1:P><__NS1:H1><__NS1:A #text=" " href="/news/thread.tss?thread_id=33803">ObjectWeb prepares eXo JCR 1.0 RC1, a JCR implementation<__NS1:H1>
<__NS1:DIV #text=" " class="iteminfo">Posted by:
<__NS1:A #text=" " href="/user/userthreads.tss?user_id=315104" #text=" " title="view Benjamin's recent threads ...">Benjamin
Mestrallet
on
May 09, 2005
<__NS1:A #text=" " href="/news/thread.tss?thread_id=33803" #text=" " class="widemargin">11 comments last post: May 09, 2005
The eXo Platform team is happy to announce the release of eXo JCR 1.0 RC1, an open-source implementation of the Java Content Repository (JCR). This implementation is based on the current final draft of JSR-170, and will go final after adding the optional features of JSR-170 and passing the compatibility tests.
<__NS1:P>
<__NS1:P><__NS1:H1><__NS1:A #text=" " href="/news/thread.tss?thread_id=33808" #text=" " title="There are new messages is this thread since your last visit">dbobjects Inc. has released db4o 4.5, open source object db<__NS1:H1>
<__NS1:DIV #text=" " class="iteminfo">Posted by:
<__NS1:A #text=" " href="/user/userthreads.tss?user_id=194346" #text=" " title="view Joseph's recent threads ...">Joseph
Ottinger
on
May 09, 2005
<__NS1:A #text=" " href="/news/thread.tss?thread_id=33808" #text=" " class="widemargin">3 comments last post: May 10, 2005
<__NS1:A #text=" " href="/news/thread.tss?thread_id=33808#lastmsg" #text=" " title="This link takes you to the last message in the thread" #text=" " class="updated">updated
dbobjects Inc. has released db4o 4.5, an open source object database engine. The new version comes with object replication for distributed databases. It also has improvements in the reflection mechanisms.
<__NS1:P>
<__NS1:P><__NS1:H1><__NS1:A #text=" " href="/news/thread.tss?thread_id=33795">Apache Software Foundation : J2SE Project Proposed<__NS1:H1>
<__NS1:DIV #text=" " class="iteminfo">Posted by:
<__NS1:A #text=" " href="/user/userthreads.tss?user_id=308657" #text=" " title="view Geir's recent threads ...">Geir
Magnusson Jr
on
May 07, 2005
<__NS1:A #text=" " href="/news/thread.tss?thread_id=33795" #text=" " class="widemargin">100 comments last post: May 10, 2005
A project called Harmony to create a compatible, open source implementation of J2SE was proposed to the Apache Incubator. It hasn't been approved yet, but if we get approval, we're on our way.
<__NS1:P>
<__NS1:P><__NS1:H1><__NS1:A #text=" " href="/news/thread.tss?thread_id=33615">Billy Newport on Asymmetric Clustering & Websphere XD<__NS1:H1>
<__NS1:DIV #text=" " class="iteminfo">Posted by:
<__NS1:A #text=" " href="/user/userthreads.tss?user_id=1" #text=" " title="view Floyd's recent threads ...">Floyd
Marinescu
on
May 06, 2005
<__NS1:A #text=" " href="/news/thread.tss?thread_id=33615" #text=" " class="widemargin">32 comments last post: May 09, 2005
Large scale systems such as electronic trading floors have performance and scalability requirements that invalidate the usual clustering & distributed caching best practices adopted in most enterprise deployments. In this TSS Tech Talk, Websphere High Availability Lead Architect Billy Newport introduces the notion of Partitioning & Asymmetric clustering.
<__NS1:P>
<__NS1:P><__NS1:H1><__NS1:A #text=" " href="/news/thread.tss?thread_id=33775">Gurock Software releases SmartInspect, a message-based debugger<__NS1:H1>
<__NS1:DIV #text=" " class="iteminfo">Posted by:
<__NS1:A #text=" " href="/user/userthreads.tss?user_id=577874" #text=" " title="view Dennis's recent threads ...">Dennis
Gurock
on
May 06, 2005
<__NS1:A #text=" " href="/news/thread.tss?thread_id=33775" #text=" " class="widemargin">7 comments last post: May 07, 2005
Gurock Software has released SmartInspect, a message-based debugger and monitoring system for .NET, Delphi and Java. For Java, SmartInspect is installed as a native library that looks like it monitors JVM events and logs them for developer inspection. A demo version and a free personal edition are available for download.
<__NS1:P>
<__NS1:P><__NS1:H1><__NS1:A #text=" " href="/news/thread.tss?thread_id=33773">Apache Lenya 1.2.3 released<__NS1:H1>
<__NS1:DIV #text=" " class="iteminfo">Posted by:
<__NS1:A #text=" " href="/user/userthreads.tss?user_id=467772" #text=" " title="view Gregor J.'s recent threads ...">Gregor J.
Rothfuss
on
May 06, 2005
<__NS1:A #text=" " href="/news/thread.tss?thread_id=33773" #text=" " class="widemargin">8 comments last post: May 09, 2005
The Apache Lenya development community is very proud to announce the 1.2.3 release of Apache Lenya. Lenya is an open-source content-management system written in Java, with a WYSIWYG editor, workflow, internationalization capabilities, search, and more.
<__NS1:P>
<__NS1:P><__NS1:H1><__NS1:A #text=" " href="/news/thread.tss?thread_id=33772">IBM releases ETTK 2.3<__NS1:H1>
<__NS1:DIV #text=" " class="iteminfo">Posted by:
<__NS1:A #text=" " href="/user/userthreads.tss?user_id=435718" #text=" " title="view gham's recent threads ...">gham
Hamilton
on
May 06, 2005
<__NS1:A #text=" " href="/news/thread.tss?thread_id=33772" #text=" " class="widemargin">3 comments last post: May 06, 2005
IBM has released the Emerging Technologies Toolkit (ETTK), a software development kit for designing, developing, and executing emerging autonomic and Web service technologies with a SOAP engine and an embedded application server. The ETTK implements much of the more recently published Web Services specifications.
<__NS1:P>
<__NS1:P><__NS1:H1><__NS1:A #text=" " href="/news/thread.tss?thread_id=33766" #text=" " title="There are new messages is this thread since your last visit">Jahia 4.1 Portal CMS Released<__NS1:H1>
<__NS1:DIV #text=" " class="iteminfo">Posted by:
<__NS1:A #text=" " href="/user/userthreads.tss?user_id=1" #text=" " title="view Floyd's recent threads ...">Floyd
Marinescu
on
May 05, 2005
<__NS1:A #text=" " href="/news/thread.tss?thread_id=33766" #text=" " class="widemargin">14 comments last post: May 10, 2005
<__NS1:A #text=" " href="/news/thread.tss?thread_id=33766#lastmsg" #text=" " title="This link takes you to the last message in the thread" #text=" " class="updated">updated
Integrated content management and corporate portal server Jahia 4.1 has been released, after 2 years since 4.0. The most important change is the migration to Apache Slide 2.2 for the file repository, a Struts-based validation framework, Office and PDF search indexing, and integrated blogging capabilities.
<__NS1:P>
<!-- loop -->
<__NS1:A #text=" " href="/news/morenews.tss?start_at=11">More news
<__NS1:TBODY>
<__NS1:TABLE #text=" " cellspacing="0" #text=" " class="box">
<__NS1:THEAD>
<__NS1:TR>
<__NS1:TH><__NS1:IMG #text=" " src="/skin/images/bar_begin.gif" #text=" " width="8" #text=" " height="18" /="">
<__NS1:SPAN #text=" " class="container"><__NS1:SPAN #text=" " class="text">Older news<__NS1:SPAN #text=" " class="shadow">Older news<__NS1:SPAN #text=" " class="fill">Older news
<__NS1:TD>
<__NS1:IMG #text=" " src="/skin/images/bar_div.gif" #text=" " width="17" #text=" " height="18" /="">
<__NS1:SPAN #text=" " class="container">
<__NS1:SPAN #text=" " class="text"><__NS1:A #text=" " href="/news/morenews.tss?start_at=19">More news
<__NS1:SPAN #text=" " class="shadow">More news
<__NS1:SPAN #text=" " class="fill">More news
<__NS1:IMG #text=" " src="/skin/images/bar_end.gif" #text=" " width="7" #text=" " height="18" /="">
<__NS1:TR>
<__NS1:TD #text=" " colspan="2" #text=" " class="barbottom"><__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " width="10" #text=" " height="10" /="">
<__NS1:THEAD>
<__NS1:TBODY>
<__NS1:TR>
<__NS1:TD #text=" " colspan="2">
<__NS1:TABLE #text=" " cellspace="2" #text=" " class="list">
<__NS1:TR> <__NS1:TD><__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " class="dot" /="">
<__NS1:TD><__NS1:A #text=" " href="/news/thread.tss?thread_id=33754">Design-Time API Promises to make Java more like VB <__NS1:SPAN #text=" " class="quiet">( May 05, 2005 )
<__NS1:TR> <__NS1:TD><__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " class="dot" /="">
<__NS1:TD><__NS1:A #text=" " href="/news/thread.tss?thread_id=33745">WSUnit 1.0, Web Services Testing Tool, released <__NS1:SPAN #text=" " class="quiet">( May 04, 2005 )
<__NS1:TR> <__NS1:TD><__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " class="dot" /="">
<__NS1:TD><__NS1:A #text=" " href="/news/thread.tss?thread_id=33674">Tech Talk: Scott Ambler, on the Agile development process <__NS1:SPAN #text=" " class="quiet">( May 04, 2005 )
<__NS1:TR> <__NS1:TD><__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " class="dot" /="">
<__NS1:TD><__NS1:A #text=" " href="/news/thread.tss?thread_id=33732">Question: How to keep dev and prod databases in sync? <__NS1:SPAN #text=" " class="quiet">( May 04, 2005 )
<__NS1:TR> <__NS1:TD><__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " class="dot" /="">
<__NS1:TD><__NS1:A #text=" " href="/news/thread.tss?thread_id=33731">CodeCrawler 1.0, code searching program, released <__NS1:SPAN #text=" " class="quiet">( May 04, 2005 )
<__NS1:TR> <__NS1:TD><__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " class="dot" /="">
<__NS1:TD><__NS1:A #text=" " href="/news/thread.tss?thread_id=33730">Axis 1.2, web service engine for Java, released <__NS1:SPAN #text=" " class="quiet">( May 04, 2005 )
<__NS1:TR> <__NS1:TD><__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " class="dot" /="">
<__NS1:TD><__NS1:A #text=" " href="/news/thread.tss?thread_id=33712">OASIS creates SOA reference model, adopts SOA blueprints <__NS1:SPAN #text=" " class="quiet">( May 04, 2005 )
<__NS1:TR> <__NS1:TD><__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " class="dot" /="">
<__NS1:TD><__NS1:A #text=" " href="/news/thread.tss?thread_id=33701">A plan to integrate Spring Web Flow and JSF <__NS1:SPAN #text=" " class="quiet">( May 03, 2005 )
<__NS1:TR> <__NS1:TD #text=" " colspan="2">
<__NS1:A #text=" " href="/news/morenews.tss?start_at=19">More news »
<__NS1:TBODY>
<__NS1:TABLE #text=" " cellspacing="0" #text=" " class="box">
<__NS1:THEAD>
<__NS1:TR>
<__NS1:TH>
<__NS1:IMG #text=" " src="/skin/images/bar_begin.gif" #text=" " width="8" #text=" " height="18" /="">
<__NS1:SPAN #text=" " class="container">
<__NS1:SPAN #text=" " class="text"><__NS1:A #text=" " href="/discussions/hotthreads.tss">Hot threads
<__NS1:SPAN #text=" " class="shadow">Hot threads
<__NS1:SPAN #text=" " class="fill">Hot threads
<__NS1:TD #text=" " background="/skin/images/bar_bg_div.gif">
<__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " width="8" #text=" " height="18" /="">
<__NS1:TH>
<__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " width="1" #text=" " height="18" /="">
<__NS1:SPAN #text=" " class="container">
<__NS1:SPAN #text=" " class="text"><__NS1:A #text=" " href="/discussions/recentposts.tss">Recent discussions
<__NS1:SPAN #text=" " class="shadow">Recent discussions
<__NS1:SPAN #text=" " class="fill">Recent discussions
<__NS1:TD #text=" " background="/skin/images/bar_bg_div.gif">
<__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " width="8" #text=" " height="18" /="">
<__NS1:TH>
<__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " width="1" #text=" " height="18" /="">
<__NS1:SPAN #text=" " class="container">
<__NS1:SPAN #text=" " class="text"><__NS1:A #text=" " href="/talks/index.tss">Tech talks
<__NS1:SPAN #text=" " class="shadow">Tech talks
<__NS1:SPAN #text=" " class="fill">Tech talks
<!-- Should have a bar end here, but that messes up the rest of the formatting. -->
<__NS1:TR>
<__NS1:TD #text=" " class="barbottom">
<__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " width="10" #text=" " height="10" /="">
<__NS1:TD #text=" " class="barbottomdiv">
<__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " width="8" #text=" " height="10" /="">
<__NS1:TD #text=" " class="barbottom">
<__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " width="10" #text=" " height="10" /="">
<__NS1:TD #text=" " class="barbottomdiv">
<__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " width="8" #text=" " height="10" /="">
<__NS1:TD #text=" " class="barbottom">
<__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " width="10" #text=" " height="10" /="">
<__NS1:THEAD>
<__NS1:TBODY>
<__NS1:TR>
<__NS1:TD>
<__NS1:TABLE #text=" " cellspacing="2" #text=" " class="list">
<__NS1:TR> <__NS1:TD>
<__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " class="dot" /="">
<__NS1:TD>
<__NS1:A #text=" " href="/news/thread.tss?thread_id=33754" #text=" " title="Posted By: Bill Venners on May 09, 2005 @ 02:31 PM. 167 comments">Design-Time API Promises to make Java more like VB
<__NS1:TR> <__NS1:TD>
<__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " class="dot" /="">
<__NS1:TD>
<__NS1:A #text=" " href="/news/thread.tss?thread_id=33640" #text=" " title="Posted By: Karl Avedal on May 04, 2005 @ 04:24 AM. 12 comments">Will Sun be that target of a management buyout?
<__NS1:TR> <__NS1:TD>
<__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " class="dot" /="">
<__NS1:TD>
<__NS1:A #text=" " href="/news/thread.tss?thread_id=33576" #text=" " title="Posted By: Joseph Ottinger on May 05, 2005 @ 09:59 AM. 184 comments">Opinion: Java with Spring just as productive as a 4GL RAD tool
<__NS1:TR> <__NS1:TD>
<__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " class="dot" /="">
<__NS1:TD>
<__NS1:A #text=" " href="/news/thread.tss?thread_id=30133" #text=" " title="Posted By: Floyd Marinescu on March 07, 2005 @ 07:19 PM. 54 comments">TheServerSide Joins TechTarget, TMC discontinued
<__NS1:TR> <__NS1:TD>
<__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " class="dot" /="">
<__NS1:TD>
<__NS1:A #text=" " href="/news/thread.tss?thread_id=30067" #text=" " title="Posted By: George Last on April 07, 2005 @ 05:23 AM. 115 comments">Comparing Oracle 10g and SQL Server Yukon
<__NS1:TD #text=" " background="/images/bg_div.gif">
<__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " width="8" #text=" " height="10" /="">
<__NS1:TD>
<__NS1:TABLE #text=" " cellspacing="2" #text=" " class="list">
<__NS1:TR> <__NS1:TD>
<__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " class="dot" /="">
<__NS1:TD>
<__NS1:A #text=" " href="/news/thread.tss?thread_id=33766" #text=" " title="Posted By: Floyd Marinescu on May 10, 2005 @ 05:39 AM. 14 comments">Jahia 4.1 Portal CMS Released
<__NS1:TR> <__NS1:TD>
<__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " class="dot" /="">
<__NS1:TD>
<__NS1:A #text=" " href="/discussions/thread.tss?thread_id=22242" #text=" " title="Posted By: walt waltereo on May 10, 2005 @ 05:22 AM. 24 comments">nedd info for presentation of JBoss vs (websphere or weblogic)
<__NS1:TR> <__NS1:TD>
<__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " class="dot" /="">
<__NS1:TD>
<__NS1:A #text=" " href="/discussions/thread.tss?thread_id=33811" #text=" " title="Posted By: Manish Gupta on May 10, 2005 @ 05:12 AM. 2 comments">Interrupting server side execution from client machine
<__NS1:TR> <__NS1:TD>
<__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " class="dot" /="">
<__NS1:TD>
<__NS1:A #text=" " href="/news/thread.tss?thread_id=33787" #text=" " title="Posted By: Floyd Marinescu on May 10, 2005 @ 05:09 AM. 7 comments">Article: Using Spring Webflow
<__NS1:TR> <__NS1:TD>
<__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " class="dot" /="">
<__NS1:TD>
<__NS1:A #text=" " href="/news/thread.tss?thread_id=33808" #text=" " title="Posted By: Joseph Ottinger on May 10, 2005 @ 05:04 AM. 3 comments">dbobjects Inc. has released db4o 4.5, open source object db
<__NS1:TD #text=" " background="/images/bg_div.gif">
<__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " width="8" #text=" " height="10" /="">
<__NS1:TD>
<__NS1:TABLE #text=" " cellspacing="2" #text=" " class="list">
<__NS1:TR><__NS1:TD><__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " class="dot"><__NS1:TD><__NS1:A #text=" " href="/talks/index.tss" #text=" " title="Posted By: Nuno Teixeira on May 4, 2005.">Scott Ambler on Agile Programming
<__NS1:TR><__NS1:TD><__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " class="dot"><__NS1:TD><__NS1:A #text=" " href="/talks/index.tss" #text=" " title="Posted By: Nuno Teixeira on April 21, 2005.">Bruce Snyder on Castor, Geronimo, TranQL, Maven, and more
<__NS1:TR><__NS1:TD><__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " class="dot"><__NS1:TD><__NS1:A #text=" " href="/talks/index.tss" #text=" " title="Posted By: Nuno Teixeira on April 14, 2005.">Gregor Hohpe on EAI and Messaging
<__NS1:TR><__NS1:TD><__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " class="dot"><__NS1:TD><__NS1:A #text=" " href="/talks/index.tss" #text=" " title="Posted By: Nuno Teixeira on April 7, 2005.">Emmanuel Cecchet on ObjectWeb
<__NS1:TR><__NS1:TD><__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " class="dot"><__NS1:TD><__NS1:A #text=" " href="/talks/index.tss" #text=" " title="Posted By: Nuno Teixeira on April 1, 2005.">Jean-Francois Arcand on Tomcat5
<__NS1:TR>
<__NS1:TD>
<__NS1:A #text=" " href="/discussions/hotthreads.tss">More hot threads »
<__NS1:TD #text=" " class="bgdiv">
<__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " width="8" #text=" " height="10" /="">
<__NS1:TD>
<__NS1:A #text=" " href="/discussions/recentposts.tss">More recent discussions »
<__NS1:TD #text=" " class="bgdiv">
<__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " width="8" #text=" " height="10" /="">
<__NS1:TD>
<__NS1:A #text=" " href="/talks/index.tss">More tech talks »
<__NS1:TBODY>
<__NS1:META #text=" " HTTP-EQUIV="Content-Type" #text=" " CONTENT="text/html; charset=us-ascii">
<__NS1:TABLE #text=" " cellspacing="0" #text=" " class="box" #text=" " width="100%">
<__NS1:THEAD>
<__NS1:TR>
<__NS1:TH><__NS1:IMG #text=" " src="http://www.theserverside.com/skin/images/bar_begin.gif" #text=" " width="8" #text=" " height="18" /=""><__NS1:SPAN #text=" " class="container"><__NS1:SPAN #text=" " class="text"><__NS1:A #text=" " href="http://library.theserverside.com" #text=" " onClick="return (true);">Enterprise Java Research Library
<__NS1:TD><__NS1:IMG #text=" " src="http://www.theserverside.com/skin/images/bar_end.gif" #text=" " width="7" #text=" " height="18" /="">
<__NS1:TR>
<__NS1:TD #text=" " colspan="2" #text=" " class="barbottom"><__NS1:IMG #text=" " src="http://www.theserverside.com/images/spacer.gif" #text=" " width="10" #text=" " height="10" /="">
<__NS1:THEAD>
<__NS1:TBODY>
<__NS1:TR>
<__NS1:TD #text=" " colspan="2">
<__NS1:SCRIPT #text=" " language="Javascript" #text=" " src="http://library.theserverside.com/data/bpXchange?b=ka_ssc_morebrowse&d=90&nd=3&f=blat_ssc&hidehead=on&src=ssc_home"><__NS1:A>
<__NS1:TR>
<__NS1:TD #text=" " colspan="2">
<__NS1:A #text=" " href="http://library.theserverside.com/rlist/term/Java.html" #text=" " onClick="return (true);">More White Papers »
<__NS1:TBODY>
<!--
YOU MUST CHANGE THE variable "google_ad_channel" at the bottom of this page
to be one of the following values depending on the page type :
news
discussions
techtalks
patterns
reviews
articles
other
-->
<!-- Begin AdSense -->
<__NS1:SCRIPT>
<!--
function ss(w){window.status=w;return true;}
function cs(){window.status='';}
function ga(o,e){
if (document.getElementById){
a=o.id.substring(1);
p="";
g=e.target;
if(g){
t=g.id;f=g.parentNode;
if(f)p=f.id;
}
else{t=e.srcElement.id;}
if(t==a||p==a)return;location.href=document.getElementById(a).href
}
}
//-->
<__NS1:STYLE>
<!--
.ch{cursor:pointer;cursor:hand}
//-->
<__NS1:SCRIPT #text=" " language="JavaScript">
<!--
function google_ad_request_done(google_ads) {
var i;
var header;
accip = "off";
if(google_ads.length > 0) {
document.write('<table cellspacing="0" class="box">');
document.write('<thead>');
document.write(' <tr>');
document.write(' <th><img src="/skin/images/bar_begin.gif" width="8" height="18"/>');
document.write('<span class="container"><span class="text">Related Links</span><span class="shadow">Related Links</span></span><span class="fill">Related Links</span> </th>');
document.write(' </td>');
document.write(' </tr>');
document.write(' <tr>');
document.write(' <td class="barbottom"><img src="/images/spacer.gif" width="10" height="10"/></td>');
document.write(' </tr>');
document.write('</thead>');
document.write('<tbody>');
document.write(' <tr>');
document.write(' <td>');
document.write(' <table cellspace="2"> ');
document.write('<tr>');
document.write(' <td><span class="text"><b>Ads by Google</b></span>');
document.write(' </td>');
document.write('</tr>');
for(i = 0; i < google_ads.length; ++i) {
document.write('<TR><td width="100%" onClick="window.open(\'' + google_ads[i].url + '\',\'_blank\')" style="cursor:pointer; cursor:hand" onMouseOver="return ss(\'' + google_ads[i].visible_url + '\')" onMouseOut="cs()">');
document.write('<A HREF="#marketplace_top"><b>');
document.write(google_ads[i].line1);
document.write('</b></a><br>');
document.write(' ' + google_ads[i].line2 + ' ');
document.write(' ' + google_ads[i].line3 + ' ');
document.write('<br>');
document.write('<h2><A HREF="#marketplace_top">' + google_ads[i].visible_url + '</a></h2>');
document.write(' </td>');
document.write('</tr>');
}
document.write(' </table>');
document.write(' </td>');
document.write(' </tr>');
document.write('</tbody>');
document.write('</table>');
}
}
// -->
<__NS1:SCRIPT #text=" " language="JavaScript">
<!--
google_ad_client = 'ca-techtargetserver_js';
google_ad_channel = 'news';
google_ad_output = 'js';
google_max_num_ads = 5;
// -->
<__NS1:A #text=" " NAME="marketplace_top">
<__NS1:SCRIPT #text=" " language="JavaScript" #text=" " src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
<__NS1:TD><__NS1:IMG #text=" " height="1" #text=" " src="/images/spacer.gif" #text=" " width="8" /="">
<__NS1:TD #text=" " width="25%" #text=" " id="rightbar">
<__NS1:SPAN #text=" " id="nointelliTXT">
<__NS1:TABLE #text=" " cellspacing="0" #text=" " class="box">
<__NS1:THEAD>
<__NS1:TR>
<__NS1:TH><__NS1:IMG #text=" " src="/skin/images/bar_begin.gif" #text=" " width="8" #text=" " height="18" /=""><__NS1:SPAN #text=" " class="container"><__NS1:SPAN #text=" " class="text">New content around the community<__NS1:SPAN #text=" " class="shadow">New content around the community<__NS1:SPAN #text=" " class="fill">New content around the community
<__NS1:TD><__NS1:IMG #text=" " src="/skin/images/bar_end.gif" #text=" " width="7" #text=" " height="18" /="">
<__NS1:TR>
<__NS1:TD #text=" " colspan="2" #text=" " class="barbottom"><__NS1:IMG #text=" " src="/images/spacer.gif" #text=" " width="10" #text=" " height="10" /="">
<__NS1:THEAD>
<__NS1:TBODY>
<__NS1:TR>
<__NS1:TD #text=" " colspan="2">
<__NS1:H2><__NS1:A #text=" " href="/articles/article.tss?l=SpringWebFlow">Spring Web Flow<__NS1:H2>
<__NS1:A #text=" " href="/articles/article.tss?l=SpringWebFlow"><__NS1:IMG #text=" " src="/articles/content/SpringWebFlow/SpringWebFlowIcon.gif" #text=" " align="right" #text=" " border="0" #text=" " hspace="1" #text=" " vspace="2">
The founders of Spring Web Flow illustrate how a complex process can be implemented using the framework.
<__NS1:BR #text=" " /="">
<__NS1:SPAN #text=" " class="quiet">(May 9, Article)
<__NS1:HR>
<__NS1:H2><__NS1:A #text=" " href="talks/videos/BillyNewportText/interview.tss">Billy Newport - Lead Architect for WebSphere Appserver High Availability and Webpshere XD<__NS1:H2>
<__NS1:A #text=" " href="talks/videos/BillyNewportText/interview.tss"><__NS1:IMG #text=" " src="/talks/videos/BillyNewportText/Newport.jpg" #text=" " align="right" #text=" " border="0" #text=" " hspace="1" #text=" " vspace="2">
Large scale systems such as electronic trading floors have performance and scalability requirements that can't be supported by typical clustering best practices. IBM proposes Partitioning & Asymmetric clustering.
<__NS1:BR #text=" " /="">
<__NS1:SPAN #text=" " class="quiet">(May 5, Tech Talk)
<__NS1:HR>
<!-- --------------------------- EJB Design Patterns Book Download BEGIN Portlet ------------------------------------ -->
<__NS1:H2><__NS1:A #text=" " href="/books/wiley/EJBDesignPatterns/index.tss">Free Book PDF Download: EJB Design Patterns<__NS1:H2>
<__NS1:IMG #text=" " src="/images/patternsbook.jpg" #text=" " align="right" #text=" " border="0" #text=" " hspace="4" #text=" " vspace="8" #text=" " width="54" #text=" " height="70"><__NS1:A>
A companion/standalone book to Mastering EJB 2, EJB Design Patterns seeks to solidify and centralize all the cutting edge strategies and design patterns in use today.<__NS1:BR #text=" " /="">
<__NS1:SPAN #text=" " class="quiet">(Book PDF Download)
<!-- --------------------------- J2EE and XML Development Book Download END Portlet -------------------------------------- -->
<__NS1:HR>
<__NS1:H2><__NS1:A #text=" " href="/talks/index.tss">Scott Ambler on Agile Programming<__NS1:H2>
<__NS1:A #text=" " href="/talks/index.tss"><__NS1:IMG #text=" " src="/talks/videos/ScottAmbler2/AmblerSmall.jpg" #text=" " align="right" #text=" " border="0" #text=" " hspace="1" #text=" " vspace="2">
Scott Ambler, author of a number of books on Agile programming, offers this tech talk on the use of the Agile method, and why it works so well, and why you should use it instead of the traditional development methods.
<__NS1:BR #text=" " /="">
<__NS1:SPAN #text=" " class="quiet">(May 4, Tech Talk)
<__NS1:HR>
<__NS1:H2><__NS1:A #text=" " href="/articles/article.tss?l=OSCacheHelpsDatabases">Taking the load off: OSCache helps databases cope<__NS1:H2>
<__NS1:A #text=" " href="/articles/article.tss?l=OSCacheHelpsDatabases"><__NS1:IMG #text=" " src="/articles/content/OSCacheHelpsDatabases/OSCacheHelpsDatabasesIcon.jpg" #text=" " align="right" #text=" " border="0" #text=" " hspace="1" #text=" " vspace="2">
Andres March shows how OSCache can be used to save your processing requirement by storing data or content, to prevent continually re-reading it or re-generating it.<__NS1:BR #text=" " /="">
<__NS1:SPAN #text=" " class="quiet">(Apr 28, Article)
<__NS1:HR>
<__NS1:H2><__NS1:A #text=" " href="/talks/index.tss">Tech Talk with Bruce Snyder, on Castor, Geronimo, TranQL, Maven, and more<__NS1:H2>
<__NS1:A #text=" " href="/talks/index.tss"><__NS1:IMG #text=" " src="/talks/videos/BruceSnyder/SnyderSmall.jpg" #text=" " align="right" #text=" " border="0" #text=" " hspace="1" #text=" " vspace="2">
Bruce Snyder, lead developer on Castor JDO and developer for Geronimo, talks about Castor, Geronimo, TranQL, and Maven.
<__NS1:BR #text=" " /="">
<__NS1:SPAN #text=" " class="quiet">(Apr 21, Tech Talk)
<__NS1:HR>
<__NS1:H2><__NS1:A #text=" " href="/articles/article.tss?l=ObjectCachingWithAOP">Implementing Object Caching with AOP <__NS1:H2>
<__NS1:A #text=" " href="/articles/article.tss?l=ObjectCachingWithAOP"><__NS1:IMG #text=" " src="/articles/content/ObjectCachingWithAOP/ObjectCachingWithAOPIcon.jpg" #text=" " align="right" #text=" " border="0" #text=" " hspace="1" #text=" " vspace="2">
Object caching has all the characteristics of a cross cutting concern. This article shows how to implement AOP-based caching with OSCache and JBoss Cache & AspectJ.<__NS1:BR #text=" " /="">
<__NS1:SPAN #text=" " class="quiet">(Apr 19, Article)
<__NS1:HR>
<__NS1:H2><__NS1:A #text=" " href="/talks/index.tss">Gregor Hohpe on EAI and Messaging<__NS1:H2>
<__NS1:A #text=" " href="/talks/index.tss"><__NS1:IMG #text=" " src="/talks/videos/GregorHohpe/HohpeSmall.jpg" #text=" " align="right" #text=" " border="0" #text=" " hspace="1" #text=" " vspace="2">
Gregor Hohpe, Integration Architect from ThoughtWorks and co-author of Enterprise Integration Patterns, discusses EAI and messaging from an integration standpoint, from how to think about messaging to the integration of messaging into the enterprise.
<__NS1:BR #text=" " /="">
<__NS1:SPAN #text=" " class="quiet">(Apr 14, Tech Talk)
<__NS1:HR>
<__NS1:H2><__NS1:A #text=" " href="/articles/article.tss?l=BPELJava">BPEL and Java<__NS1:H2>
<__NS1:A #text=" " href="/articles/article.tss?l=BPELJava"><__NS1:IMG #text=" " src="/articles/content/BPELJava/BPELJavaIcon.jpg" #text=" " align="right" #text=" " border="0" #text=" " hspace="1" #text=" " vspace="2">
BPEL4WS co-author Matjaz Juric explains BPEL from a Java developers perspective and shows how to extend BPEL with Java.
<__NS1:BR #text=" " /="">
<__NS1:SPAN #text=" " class="quiet">(Apr 13, Article)
<__NS1:HR>
<__NS1:H2><__NS1:A #text=" " href="/articles/article.tss?l=HivemindBuzz">HiveMind: What's it all about?<__NS1:H2>
<__NS1:A #text=" " href="/articles/article.tss?l=HivemindBuzz"><__NS1:IMG #text=" " src="/articles/content/HivemindBuzz/HivemindBuzzIcon.gif" #text=" " align="right" #text=" " border="0" #text=" " hspace="1" #text=" " vspace="2">
HiveMind is a project that helps implement systems as small, testable services which interact with one another to make up an application. In this article, James Carman explores some of the key features of HiveMind.
<__NS1:BR #text=" " /="">
<__NS1:SPAN #text=" " class="quiet">(Apr 11, Article)
<__NS1:HR>
<__NS1:H2><__NS1:A #text=" " href="/articles/article.tss?l=UnitTesting">Unit-Testing Hibernate With HSQLDB<__NS1:H2>
<__NS1:A #text=" " href="/articles/article.tss?l=UnitTesting"><__NS1:IMG #text=" " src="/articles/content/UnitTesting/UnitTestingIcon.gif" #text=" " align="right" #text=" " border="0" #text=" " hspace="1" #text=" " vspace="2">
Alex Vollmer shows how you can use Hibernate and HSQL to test persisted data.
<__NS1:BR #text=" " /="">
<__NS1:SPAN #text=" " class="quiet">(Apr 8, Article)
<__NS1:HR>
<__NS1:H2><__NS1:A #text=" " href="/talks/index.tss">Emmanuel Cecchet talks about ObjectWeb's product suite<__NS1:H2>
<__NS1:A #text=" " href="/talks/index.tss"><__NS1:IMG #text=" " src="/talks/videos/EmmanuelCecchet/CecchetSmall.jpg" #text=" " align="right" #text=" " border="0" #text=" " hspace="1" #text=" " vspace="2">
Emmanuel Cecchet discusses ObjectWeb's product suite, how ObjectWeb works as an organization, and some of the interesting projects under ObjectWeb's umbrella.
<__NS1:BR #text=" " /="">
<__NS1:SPAN #text=" " class="quiet">(Apr 7, Tech Talk)
<__NS1:HR>
<__NS1:H2><__NS1:A #text=" " href="/talks/index.tss">Jean-Francois Arcand talks about Tomcat5<__NS1:H2>
<__NS1:A #text=" " href="/talks/index.tss"><__NS1:IMG #text=" " src="/talks/videos/Jean-FrancoisArcand/ArcandSmall.jpg" #text=" " align="right" #text=" " border="0" #text=" " hspace="1" #text=" " vspace="2">
Jean-Francois Arcand, Tomcat5 developer, talks about Tomcat5 development, internal architecture, and embedding it into other processes.
<__NS1:BR #text=" " /="">
<__NS1:SPAN #text=" " class="quiet">(Apr 1, Tech Talk)
<__NS1:HR>
<__NS1:H2><__NS1:A #text=" " href="/articles/article.tss?l=JakartaCommons_Chapter6">Jakarta Commons Online Bookshelf: Validator<__NS1:H2>
<__NS1:A #text=" " href="/articles/article.tss?l=JakartaCommons_Chapter6"><__NS1:IMG #text=" " src="/articles/content/JakartaCommons_Chapter6/JakartaCommons_Chapter6Icon.jpg" #text=" " align="right" #text=" " border="0" #text=" " hspace="1" #text=" " vspace="2">
This chapter discusses the uses of Jakarta Commons-Validator, a component that streamlines and centralizes validation mechanisms for Java.
<__NS1:BR #text=" " /="">
<__NS1:SPAN #text=" " class="quiet">(Mar 31, Chapter Excerpt)
<__NS1:HR>
<__NS1:H2><__NS1:A #text=" " href="/articles/article.tss?l=RailsHibernate">Hibernate vs. Rails: The Persistence Showdown<__NS1:H2>
<__NS1:A #text=" " href="/articles/article.tss?l=RailsHibernate"><__NS1:IMG #text=" " src="/articles/content/RailsHibernate/RailsHibernateIcon.gif" #text=" " align="right" #text=" " border="0" #text=" " hspace="1" #text=" " vspace="2">
Ruby on Rails also contains its own ORM. This article makes an investigative comparison between Rails Active Record and Hibernate, looking at architecture, features, and suitability for projects small and large.
<__NS1:BR #text=" " /="">
<__NS1:SPAN #text=" " class="quiet">(Mar 30, Article)
<__NS1:HR>
<__NS1:H2><__NS1:A #text=" " href="/reviews/matrix.tss">Application Server Matrix<__NS1:H2>
<__NS1:A #text=" " href="/reviews/matrix.tss"><__NS1:IMG #text=" " src="/reviews/images/matrixicon.gif" #text=" " align="right" #text=" " border="0" #text=" " hspace="4" #text=" " vspace="4" #text=" " width="60" #text=" " height="44">
The Application Server Matrix is a detailed listing of J2EE vendors and their application server products, with information on latest version numbers, J2EE spec support and licensing, pricing, platform support, and links to product downloads and reviews.<__NS1:BR #text=" " /="">
<__NS1:SPAN #text=" " class="quiet">(Application Server Comparison Matrix)
<__NS1:TBODY>
<__NS1:HR>
<__NS1:DIV #text=" " class="center">
<__NS1:SPAN #text=" " class="smalltext">
<__NS1:A #text=" " href="/news/index.tss">News |
<__NS1:A #text=" " href="/discussions/index.tss">Discussions |
<__NS1:A #text=" " href="/talks/index.tss">Tech talks |
<__NS1:A #text=" " href="/patterns/index.tss">Patterns |
<__NS1:A #text=" " href="/reviews/index.tss">Reviews |
<__NS1:A #text=" " href="/articles/index.tss">Articles |
<__NS1:A #text=" " href="mailto:MWallace@techtarget.com">Media kit |
<__NS1:A #text=" " href="/user/myprofile.tss">My profile |
<__NS1:A #text=" " href="/user/userthreads.tss">My threads |
<__NS1:A #text=" " href="/tss?service=direct/0/Home/border.logout2">Logout |
<__NS1:A #text=" " href="/common/about.tss">About
<__NS1:DIV #text=" " class="center">
<__NS1:SPAN #text=" " class="smalltext">All Content Copyright ©2004 TheServerSide <__NS1:A #text=" " href="/common/privacyPolicy.tss">Privacy Policy
<!-- Render time: ~ 646 ms -->