<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-21334459</id><updated>2012-02-17T02:21:58.441+07:00</updated><category term='linux'/><category term='regex'/><category term='Websphere Process Server'/><category term='Websphere Application Server'/><category term='eclipse'/><category term='Websphere Integration Developer'/><category term='javascript'/><category term='sql'/><category term='java'/><category term='Web Service'/><category term='spring'/><title type='text'>java spring hibernate eclipse javascript  linux sql WID WPS WESB SCA SDO</title><subtitle type='html'>Just a collection of programming tips that I've accumulated in my head over the years, which I'm slowly putting into this blog, in case I forget them in future.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://zeitgravity.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://zeitgravity.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>zeitgravity</name><uri>http://www.blogger.com/profile/08232233039900539258</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>27</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-21334459.post-6534430370814573545</id><published>2009-07-22T14:25:00.016+07:00</published><updated>2010-02-11T02:42:53.314+05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Websphere Integration Developer'/><category scheme='http://www.blogger.com/atom/ns#' term='Web Service'/><category scheme='http://www.blogger.com/atom/ns#' term='Websphere Process Server'/><category scheme='http://www.blogger.com/atom/ns#' term='Websphere Application Server'/><title type='text'>Invoking an external web service using WID from behind the firewall</title><content type='html'>&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;So, you imported a WSDL (from an external provider) onto your SCA module in &lt;strong&gt;WID&lt;/strong&gt;, you tried invoking it, but you keep getting&lt;br /&gt;&lt;pre class="brush: plain"&gt;&lt;br /&gt;javax.xml.ws.WebServiceException: java.net.ConnectException: Connection timed out: no further information&lt;br /&gt;at org.apache.axis2.jaxws.ExceptionFactory.createWebServiceException(ExceptionFactory.java:180)&lt;br /&gt;...&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;That's because the machine where the WSDL is being invoked from is behind the &lt;strong&gt;firewall&lt;/strong&gt;.&lt;br /&gt;&lt;br /&gt;So, to invoke an external web service from behind a firewall, you need to set your jvm system properties :&lt;br /&gt;1) Open the administrative console.  Click Servers ==&amp;gt; Application Servers ==&amp;gt; server ==&amp;gt; Java and Process Management ==&amp;gt; Process Definition ==&amp;gt; Java Virtual Machine ==&amp;gt; Custom Properties&lt;br /&gt;&lt;br /&gt;2) Add these into the &lt;strong&gt;Generic JVM Arguments&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre class="brush: plain"&gt;&lt;br /&gt;name=http.proxySet value=true&lt;br /&gt;name=http.proxyHost value=proxy.mycompany.com&lt;br /&gt;name=http.proxyPort value=8080&lt;br /&gt;name=http.proxyUser value=your_proxy_username_if_required&lt;br /&gt;name=http.proxyPassword value=your_proxy_password_if_required&lt;br /&gt;name=http.nonProxyHost value=localhost|*.hosts.to.be.excluded.from.going.thru.proxy&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;p/&gt;&lt;br /&gt;Alternatively, you could add this to the generic JVM arguments of your JVM&lt;br /&gt;&lt;pre class="brush: plain"&gt;&lt;br /&gt;-Dhttp.proxySet=true -Dhttp.proxyHost=proxy.mycompany.com -Dhttp.proxyPort=8080 -Dhttp.proxyUser=yourproxyusername -Dhttp.proxyPassword=yourproxypassword -Dhttp.nonProxyHost=hostNamesOfMachinesToWhichRequestsWillNotBeSentThroughTheProxyServer&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;See &lt;a href="http://publib.boulder.ibm.com/infocenter/wasinfo/v7r0/index.jsp?topic=/com.ibm.websphere.nd.doc/info/ae/ae/twbs_configaddhttppropertiesadmin.html"&gt;Configuring additional HTTP transport properties using the JVM custom property panel in the administrative console&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;p/&gt;&lt;p/&gt;&lt;br /&gt;&lt;br /&gt;Don't forget to set your http.nonProxyHosts. If it is not set, all your http connections will go thru the proxy server, which you don't want to do. You only want your external web service requests to go thru the proxy server, but you want your internal web service requests to not go thru the proxy server. &lt;br /&gt;&lt;p/&gt;&lt;br /&gt;See &lt;br/&gt;&lt;br /&gt;http://java.sun.com/javase/6/docs/technotes/guides/net/proxies.html&lt;br /&gt;&lt;br /&gt;&lt;p/&gt;&lt;p/&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21334459-6534430370814573545?l=zeitgravity.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zeitgravity.blogspot.com/feeds/6534430370814573545/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21334459&amp;postID=6534430370814573545' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/6534430370814573545'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/6534430370814573545'/><link rel='alternate' type='text/html' href='http://zeitgravity.blogspot.com/2009/07/invoking-external-web-service-using-wid.html' title='Invoking an external web service using WID from behind the firewall'/><author><name>zeitgravity</name><uri>http://www.blogger.com/profile/08232233039900539258</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21334459.post-3501092597399263194</id><published>2008-03-19T20:49:00.004+07:00</published><updated>2009-07-22T16:22:21.308+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><title type='text'>java: An algorithm for converting an array to comma delimited/separated string/value (e.g. csv)</title><content type='html'>&lt;pre class="brush: java"&gt;&lt;br /&gt;Long[] array = {new Long("1"), new Long("2"), new Long("3")};&lt;br /&gt;&lt;br /&gt;for (int i = 0; i &amp;lt; array.length(); i++)&lt;br /&gt;{&lt;br /&gt;   if (i &gt; 0) &lt;br /&gt;   {&lt;br /&gt;       sb.append(", ");&lt;br /&gt;   }&lt;br /&gt;&lt;br /&gt;   sb.append(array[i]);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;System.out.println(sb.toString());&lt;br /&gt;&lt;br /&gt;//output: 1, 2, 3&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21334459-3501092597399263194?l=zeitgravity.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zeitgravity.blogspot.com/feeds/3501092597399263194/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21334459&amp;postID=3501092597399263194' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/3501092597399263194'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/3501092597399263194'/><link rel='alternate' type='text/html' href='http://zeitgravity.blogspot.com/2008/03/java-algorithm-for-converting-array-to.html' title='java: An algorithm for converting an array to comma delimited/separated string/value (e.g. csv)'/><author><name>zeitgravity</name><uri>http://www.blogger.com/profile/08232233039900539258</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21334459.post-4216078287671248820</id><published>2008-03-18T20:26:00.004+07:00</published><updated>2008-03-19T20:59:08.316+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><title type='text'>java: How to convert String array to Long array</title><content type='html'>&lt;pre  style="font-family:courier new;"&gt;&lt;span style="font-family:courier new;"&gt;String[] numbersString = {"1", "2", "3"};&lt;br /&gt;&lt;br /&gt;List list = new ArrayList();&lt;br /&gt;&lt;br /&gt;for (int i = 0; i &lt;&gt;&lt;/pre&gt;&lt;pre  style="font-family:courier new;"&gt;&lt;span style="font-family:courier new;"&gt;{&lt;/span&gt;&lt;/pre&gt;&lt;pre  style="font-family:courier new;"&gt;&lt;span style="font-family:courier new;"&gt;    Long tmp = Long.valueOf(s[i]);&lt;/span&gt;&lt;/pre&gt;&lt;pre  style="font-family:courier new;"&gt;&lt;span style="font-family:courier new;"&gt;    list.add(tmp); &lt;/span&gt;&lt;/pre&gt;&lt;pre  style="font-family:courier new;"&gt;&lt;span style="font-family:courier new;"&gt;}    &lt;/span&gt;&lt;/pre&gt;&lt;pre  style="font-family:courier new;"&gt;&lt;span style="font-family:courier new;"&gt;//convert Long ArrayList to Long[] array &lt;/span&gt;&lt;/pre&gt;&lt;pre  style="font-family:courier new;"&gt;&lt;span style="font-family:courier new;"&gt;Long[] numbersLong = (Long[])&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;list.toArray(new Long[0]);&lt;/span&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21334459-4216078287671248820?l=zeitgravity.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zeitgravity.blogspot.com/feeds/4216078287671248820/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21334459&amp;postID=4216078287671248820' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/4216078287671248820'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/4216078287671248820'/><link rel='alternate' type='text/html' href='http://zeitgravity.blogspot.com/2008/03/java-how-to-convert-string-array-to.html' title='java: How to convert String array to Long array'/><author><name>zeitgravity</name><uri>http://www.blogger.com/profile/08232233039900539258</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21334459.post-4490993569951126769</id><published>2008-03-15T22:05:00.005+07:00</published><updated>2008-03-15T22:39:47.077+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><title type='text'>java: How to put checkboxes in DisplayTag using Struts multibox</title><content type='html'>&lt;pre&gt;&lt;span style=";font-family:courier new;font-size:100%;"  &gt;&lt;pre&gt;&lt;br /&gt;&amp;lt;display:table name="sessionScope.myFormBean.&lt;span style="color: rgb(153, 51, 153);"&gt;mySearchResultArrayList&lt;/span&gt;" id="&lt;span style="color: rgb(255, 0, 0);"&gt;myRecord&lt;/span&gt;"&amp;gt;&lt;br /&gt;  &amp;lt;display:column title="Select"&amp;gt;&lt;br /&gt;     &amp;lt;html:multibox property&lt;span style="color: rgb(0, 0, 153);"&gt;="selectedItems"&lt;/span&gt;&lt;br /&gt;             value='&amp;lt;%= (String)((com.abc.def.MyClass)&lt;span style="color: rgb(255, 0, 0);"&gt;myRecord&lt;/span&gt;).getAbc().toString() %&amp;gt;' /&amp;gt;&lt;br /&gt;  &amp;lt;/display:column&amp;gt;&lt;br /&gt;&amp;lt;/display:table&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:arial;"&gt;Note:&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;myFormBean &lt;/span&gt;&lt;span style="font-family:arial;"&gt;is the name of your Form Bean (i.e. MyFormBean.java)&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;mySearchResultArrayList &lt;/span&gt;&lt;span style="font-family:arial;"&gt;is a collection getter in your MyFormBeanName.java.  It will hold a collection of your MyClass.java&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;MyClass &lt;/span&gt;&lt;span style="font-family:arial;"&gt;will represent each row in your DisplayTag (i.e. MyClass.java).  Your &lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;mySearchResultArrayList &lt;/span&gt;&lt;span style="font-family:arial;"&gt;will contain many MyClass.java&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-weight: bold;"&gt;myRecord &lt;/span&gt;represents the reference to the MyClass object.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;selectedItems &lt;/span&gt;&lt;span style="font-family:arial;"&gt;is a String array property in your MyFormBeanName.java with a getter/setter. It will hold the values of the selected checkboxes. It will also be the name of the checkbox group in html.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;MyClass.java&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;public class MyClass&lt;br /&gt;{&lt;br /&gt;  private String abc;&lt;br /&gt;&lt;br /&gt;  public void setAbc(String abc)&lt;br /&gt;  {&lt;br /&gt;     this.abc = abc;&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;  private String getAbc( )&lt;br /&gt;  { &lt;br /&gt;     return abc;&lt;br /&gt;  }&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;&lt;br /&gt;MyFormBean.java&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;pre&gt;public class MyFormBean&lt;br /&gt;{&lt;br /&gt;  private String[ ] &lt;span style="color: rgb(0, 0, 153);"&gt;selectedItems&lt;/span&gt;; &lt;br /&gt;  private List &lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="color: rgb(153, 51, 153);"&gt;mySearchResultArrayList&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;   public void &lt;span style="color: rgb(153, 51, 153);"&gt;setM&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="color: rgb(153, 51, 153);"&gt;ySearchResultArrayList&lt;/span&gt;(List list)&lt;br /&gt;  {&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;span style="font-family:courier new;"&gt;      &lt;span style="color: rgb(153, 51, 153);"&gt;mySearchResultArrayList &lt;/span&gt;= list;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;      String[] &lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 153);font-family:courier new;font-size:85%;"  &gt;selectedItems &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;= (String[]) &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;span style="font-family:courier new;"&gt;mySearchResultArrayList&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;.toArray(new String[0]);&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;span style="font-family:courier new;"&gt;   }&lt;br /&gt;&lt;br /&gt;  public List &lt;span style="color: rgb(153, 51, 153);"&gt;get&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="color: rgb(153, 51, 153);"&gt;MySearchResultArrayList( &lt;/span&gt;)&lt;br /&gt;  {&lt;br /&gt;     return &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="color: rgb(153, 51, 153);"&gt;mySearchResultArrayList&lt;/span&gt;;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;span style="font-family:courier new;"&gt;   }&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;   public String[ } &lt;span style="color: rgb(0, 0, 153);"&gt;getSelectedItems&lt;/span&gt;( )&lt;br /&gt;  {&lt;br /&gt;     return &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;span style="color: rgb(51, 51, 153);"&gt;selectedItems&lt;/span&gt;;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;   }&lt;br /&gt;&lt;br /&gt;  public void &lt;span style="color: rgb(0, 0, 153);"&gt;setSelectedItems&lt;/span&gt;(String[ ] selectedItems)&lt;br /&gt;  {&lt;br /&gt;     this.&lt;span style="color: rgb(0, 0, 153);"&gt;selectedItems &lt;/span&gt;= selectedItems; &lt;br /&gt;  }&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-family:courier new;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21334459-4490993569951126769?l=zeitgravity.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zeitgravity.blogspot.com/feeds/4490993569951126769/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21334459&amp;postID=4490993569951126769' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/4490993569951126769'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/4490993569951126769'/><link rel='alternate' type='text/html' href='http://zeitgravity.blogspot.com/2008/03/how-to-put-checkboxes-in-displaytag.html' title='java: How to put checkboxes in DisplayTag using Struts multibox'/><author><name>zeitgravity</name><uri>http://www.blogger.com/profile/08232233039900539258</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21334459.post-6325919525854846509</id><published>2008-03-15T20:12:00.003+07:00</published><updated>2008-03-15T22:05:23.446+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><title type='text'>javascript: How to select/deselect checkboxes</title><content type='html'>&lt;span style="font-size:85%;"&gt;This function will select/deselect, tick/untick, check/uncheck all checkboxes belonging to a group. It can be used by a button to toggle a checkbox collection (e.g. Struts multibox in DisplayTag).&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;function toggle (checkboxes, isSelectAll)&lt;br /&gt;{&lt;br /&gt; if (checkboxes != null)&lt;br /&gt; {&lt;br /&gt;     for (i = 0; i &amp;lt; checkboxes.length; i++)&lt;br /&gt;     {&lt;br /&gt;         checkboxes[i].checked = isSelectAll;       &lt;br /&gt;     }&lt;br /&gt; }&lt;br /&gt;}&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Usage: You can call this function on two buttons:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;- &lt;span style="font-weight: bold;"&gt;select &lt;/span&gt;button: onclick="CheckboxUtil.toggle(document.formName.checkboxName, &lt;span style="font-weight: bold;"&gt;true&lt;/span&gt;)"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;- &lt;span style="font-weight: bold;"&gt;deselect &lt;/span&gt;button: onclick="CheckboxUtil.toggle(document.formName.checkboxName, &lt;span style="font-weight: bold;"&gt;false&lt;/span&gt;)"&lt;/span&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;where:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;- formName = name of the form.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;- checkboxName = name of the checkbox group&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Make sure all your checkboxes have the same checkboxName.&lt;/span&gt;&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21334459-6325919525854846509?l=zeitgravity.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zeitgravity.blogspot.com/feeds/6325919525854846509/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21334459&amp;postID=6325919525854846509' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/6325919525854846509'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/6325919525854846509'/><link rel='alternate' type='text/html' href='http://zeitgravity.blogspot.com/2008/03/javascript-how-to-selectdeselect.html' title='javascript: How to select/deselect checkboxes'/><author><name>zeitgravity</name><uri>http://www.blogger.com/profile/08232233039900539258</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21334459.post-5929776129999705304</id><published>2008-03-15T18:36:00.004+07:00</published><updated>2008-03-15T20:31:23.156+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><title type='text'>java: How to get DisplayTag sorting URL to work in Struts Tiles</title><content type='html'>Simply put requestURI with blank value onto the DisplayTag attribute.&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:100%;"  &gt;&amp;lt;display:table name="sessionScope.myForm.searchResult"&lt;br /&gt;              id="record"&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;               &lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;font-size:100%;"  &gt;requestURI=""&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:100%;"  &gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;/display:table&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21334459-5929776129999705304?l=zeitgravity.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zeitgravity.blogspot.com/feeds/5929776129999705304/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21334459&amp;postID=5929776129999705304' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/5929776129999705304'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/5929776129999705304'/><link rel='alternate' type='text/html' href='http://zeitgravity.blogspot.com/2008/03/how-to-get-displaytag-sorting-url-to.html' title='java: How to get DisplayTag sorting URL to work in Struts Tiles'/><author><name>zeitgravity</name><uri>http://www.blogger.com/profile/08232233039900539258</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21334459.post-8698742427256166899</id><published>2008-03-15T14:19:00.002+07:00</published><updated>2008-03-15T20:31:46.521+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><title type='text'>java: How to convert a String ArrayList into String array</title><content type='html'>String[] stringArray = (String[]) stringArrayList.toArray(new String[0]);&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21334459-8698742427256166899?l=zeitgravity.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zeitgravity.blogspot.com/feeds/8698742427256166899/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21334459&amp;postID=8698742427256166899' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/8698742427256166899'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/8698742427256166899'/><link rel='alternate' type='text/html' href='http://zeitgravity.blogspot.com/2008/03/how-to-convert-string-arraylist-into.html' title='java: How to convert a String ArrayList into String array'/><author><name>zeitgravity</name><uri>http://www.blogger.com/profile/08232233039900539258</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21334459.post-3549934773284975866</id><published>2008-03-15T13:21:00.005+07:00</published><updated>2008-03-15T20:32:06.079+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><title type='text'>java: The difference between the HTML comment &amp;lt!-- --&amp;gt and the JSP comment &amp;lt%-- --%&amp;gt</title><content type='html'>&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:arial;"&gt;The HTML comment &lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;&lt;!-- --&gt;&lt;/span&gt; will show up in browser view  source.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;The JSP comment &lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;&lt;%-- --%&gt;&lt;/span&gt; will &lt;/span&gt;&lt;b style="font-family: arial;"&gt;&lt;u&gt;not&lt;/u&gt;&lt;/b&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt; show up  in browser view source.&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21334459-3549934773284975866?l=zeitgravity.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zeitgravity.blogspot.com/feeds/3549934773284975866/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21334459&amp;postID=3549934773284975866' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/3549934773284975866'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/3549934773284975866'/><link rel='alternate' type='text/html' href='http://zeitgravity.blogspot.com/2008/03/difference-between-html-comment-and-jsp.html' title='java: The difference between the HTML comment &amp;lt!-- --&amp;gt and the JSP comment &amp;lt%-- --%&amp;gt'/><author><name>zeitgravity</name><uri>http://www.blogger.com/profile/08232233039900539258</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21334459.post-1595939389297005934</id><published>2008-03-10T20:12:00.002+07:00</published><updated>2008-03-10T20:15:54.487+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><title type='text'>java: Why Log4J's Logger should be declared static final</title><content type='html'>&lt;span style="font-family: courier new;font-size:85%;" &gt;Declaring Logger to be static final is recommended, particularly for long lived objects such as the Struts Action class&lt;br /&gt;http://www.owasp.org/index.php/Poor_Logging_Practice:_Logger_Not_Declared_Static_Final&lt;br /&gt;&lt;br /&gt;e.g. &lt;/span&gt;&lt;span style="font-family: courier new;font-size:85%;" &gt;private static final Logger LOGGER = Logger.getLogger(Donkey.class)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;font-size:85%;" &gt;&lt;br /&gt;The Struts framework creates only one instance of an Action class for all client requests. e.g. FooAction and BarAction will only be created once.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Static&lt;/span&gt; means the Logger is not specific to a particular client request, but is shared by all requests.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Final&lt;/span&gt; means the Logger will only be instantiated once.&lt;br /&gt;&lt;br /&gt;Logger is tread safe because it doesn't hold a state.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21334459-1595939389297005934?l=zeitgravity.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zeitgravity.blogspot.com/feeds/1595939389297005934/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21334459&amp;postID=1595939389297005934' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/1595939389297005934'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/1595939389297005934'/><link rel='alternate' type='text/html' href='http://zeitgravity.blogspot.com/2008/03/java-why-log4js-logger-should-be.html' title='java: Why Log4J&apos;s Logger should be declared static final'/><author><name>zeitgravity</name><uri>http://www.blogger.com/profile/08232233039900539258</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21334459.post-5122491171475378571</id><published>2008-02-24T07:32:00.010+07:00</published><updated>2008-02-24T08:38:50.865+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='spring'/><title type='text'>Java: Eclipe's notion of classpath 101</title><content type='html'>In Eclipse, if you don't specify the build path, your classes by default will be placed in the base classpath of your project module. E.g.&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;C:\workspaces\myproject\myModuleEJB\classes\&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;xxx&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Therefore, your base classpath is  &lt;span style="font-family:courier new;"&gt;C:\workspaces\myproject\myModuleEJB\classes\&lt;span style="font-weight: bold;"&gt;xxx&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Consider two spring config source folders :&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;C:\workspaces\myproject\myModuleEJB\&lt;span style="font-weight: bold;"&gt;testsrc&lt;/span&gt;\spring\testApplicationContext.xml&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;C:\workspaces\myproject\myModuleEJB\&lt;span style="font-weight: bold;"&gt;configsrc&lt;/span&gt;\spring\businessRules.xml&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;testApplicationContext.xml is referring to businessRules.xml e.g.&lt;br /&gt;&lt;br /&gt;testApplicationContext.xml&lt;br /&gt;===================&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&lt;span style="font-family: courier new;font-size:85%;" &gt;&amp;lt;bean id="businessRules" init="false" class="org.springframework.context.support.ClassPathXmlApplicationContext"&amp;gt;&lt;br /&gt;  &amp;lt;constructor-arg&amp;gt;&lt;br /&gt;     &amp;lt;list&amp;gt;&amp;lt;value&amp;gt;spring/businessRules.xml&amp;lt;/value&amp;gt;&amp;lt;/list&amp;gt;&lt;br /&gt;  &amp;lt;/constructor-arg&amp;gt;&lt;br /&gt;&amp;lt;/bean&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;both testApplicationContext.xml and businessRules.xml are compiled by Eclipse into&lt;br /&gt;C:\workspaces\myproject\myModuleEJB\classes\&lt;span style="font-weight: bold;"&gt;spring\testApplicationContext.xml&lt;/span&gt;&lt;br /&gt;C:\workspaces\myproject\myModuleEJB\classes\&lt;span style="font-weight: bold;"&gt;spring\&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;businessRules.xml&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;therefore, if testApplicationContext.xml wants to refer to businessRules.xml, the testApplicationContext.xml has to refer to the &lt;span style="font-weight: bold;"&gt;base classpath&lt;/span&gt; location of businessRules.xml&lt;br /&gt;ie. &lt;span style="font-weight: bold;"&gt;/spring/&lt;/span&gt;businessRules.xml&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21334459-5122491171475378571?l=zeitgravity.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zeitgravity.blogspot.com/feeds/5122491171475378571/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21334459&amp;postID=5122491171475378571' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/5122491171475378571'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/5122491171475378571'/><link rel='alternate' type='text/html' href='http://zeitgravity.blogspot.com/2008/02/java-eclipes-notion-of-classpath-101.html' title='Java: Eclipe&apos;s notion of classpath 101'/><author><name>zeitgravity</name><uri>http://www.blogger.com/profile/08232233039900539258</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21334459.post-5519407707688323965</id><published>2008-02-24T07:26:00.003+07:00</published><updated>2008-03-15T20:32:27.482+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='spring'/><title type='text'>java: Spring's Hibernate Template now obsolete as of Hibernate 3.0.1</title><content type='html'>See&lt;br /&gt;&lt;a href="http://blog.springsource.com/main/2007/06/26/so-should-you-still-use-springs-hibernatetemplate-andor-jpatemplate/"&gt;http://blog.springsource.com/main/2007/06/26/so-should-you-still-use-springs-hibernatetemplate-andor-jpatemplate/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Also, see&lt;br /&gt;- Spring in Action (2nd ed) page 193&lt;br /&gt;&lt;br /&gt;- Beginning Spring 2 page 70&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21334459-5519407707688323965?l=zeitgravity.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zeitgravity.blogspot.com/feeds/5519407707688323965/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21334459&amp;postID=5519407707688323965' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/5519407707688323965'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/5519407707688323965'/><link rel='alternate' type='text/html' href='http://zeitgravity.blogspot.com/2008/02/springs-hibernate-template-now-obsolete.html' title='java: Spring&apos;s Hibernate Template now obsolete as of Hibernate 3.0.1'/><author><name>zeitgravity</name><uri>http://www.blogger.com/profile/08232233039900539258</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21334459.post-2707799595145980536</id><published>2008-02-13T16:30:00.001+07:00</published><updated>2008-02-13T16:46:10.677+07:00</updated><title type='text'>java: How to deploy EJB in WebSphere using Ant</title><content type='html'>&lt;pre&gt;&lt;br /&gt;    &amp;lt;property name="package.lib.dir"  value="${lib.dir}/package" /&amp;gt;&lt;br /&gt;&lt;br /&gt;    &amp;lt;target name="create-was-ejb"&amp;gt;&lt;br /&gt;        &amp;lt;property name="ejbdeploy.classpath.prop" refid="ejbdeploy.classpath" /&amp;gt;&lt;br /&gt;&lt;br /&gt;        &amp;lt;path id="ejbdeploy.classpath"&amp;gt;&lt;br /&gt;            &amp;lt;fileset dir="${package.lib.dir}" includes="*.jar" /&amp;gt;&lt;br /&gt;            &amp;lt;pathelement location="${was.home}/java/jre/lib/ibmorb.jar" /&amp;gt;&lt;br /&gt;        &amp;lt;/path&amp;gt;&lt;br /&gt;&lt;br /&gt;        &amp;lt;taskdef&lt;br /&gt;                name="wsejbdeploy"&lt;br /&gt;                classname="com.ibm.websphere.ant.tasks.WsEjbDeploy"&lt;br /&gt;                classpath="${was.home}/lib/wsanttasks.jar" /&amp;gt;&lt;br /&gt;&lt;br /&gt;        &amp;lt;wsejbdeploy&lt;br /&gt;                inputJar="${build.dir}/${ant.project.name}-${version}-tmp.jar"&lt;br /&gt;                wasHome="${was.home}"&lt;br /&gt;                workingDirectory="${build.dir}/ejb-tmp"&lt;br /&gt;                classpath="${ejbdeploy.classpath.prop}"&lt;br /&gt;                outputJar="${build.dir}/${ant.project.name}-${version}.jar"&lt;br /&gt;                compatible35="false"&lt;br /&gt;                keepGenerated="true"&lt;br /&gt;                quiet="true"&lt;br /&gt;                failonerror="true" /&amp;gt;&lt;br /&gt;    &amp;lt;/target&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21334459-2707799595145980536?l=zeitgravity.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zeitgravity.blogspot.com/feeds/2707799595145980536/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21334459&amp;postID=2707799595145980536' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/2707799595145980536'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/2707799595145980536'/><link rel='alternate' type='text/html' href='http://zeitgravity.blogspot.com/2008/02/java-how-to-deploy-ejb-in-websphere.html' title='java: How to deploy EJB in WebSphere using Ant'/><author><name>zeitgravity</name><uri>http://www.blogger.com/profile/08232233039900539258</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21334459.post-744629683725583204</id><published>2008-02-04T21:26:00.001+07:00</published><updated>2008-03-15T20:32:46.427+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><title type='text'>linux: Linux directory structure</title><content type='html'>&lt;tt class="user"&gt;Below is a typical linux directory structure of interest to me :&lt;br /&gt;&lt;br /&gt;&lt;/tt&gt;&lt;tt style="font-weight: bold;" class="user"&gt;/etc&lt;/tt&gt;&lt;tt class="user"&gt; - &lt;/tt&gt;contains the configuration files for the   system.  &lt;tt style="font-weight: bold;" class="user"&gt;/etc/rc.d&lt;/tt&gt; contains the scripts    that get the system started.&lt;br /&gt;&lt;br /&gt;&lt;tt class="user"&gt;&lt;span style="font-weight: bold;"&gt;/bin&lt;/span&gt; - &lt;/tt&gt;has the essential   programs that the system requires to operate.&lt;br /&gt;&lt;br /&gt;&lt;tt style="font-weight: bold;" class="user"&gt;/usr/bin&lt;/tt&gt; - contains   applications for the system's users.&lt;br /&gt;&lt;tt class="user"&gt;&lt;br /&gt;&lt;/tt&gt;&lt;tt style="font-weight: bold;" class="user"&gt;/sbin,   /usr/sbin &lt;/tt&gt;&lt;tt class="user"&gt;-&lt;/tt&gt;&lt;tt style="font-weight: bold;" class="user"&gt; &lt;/tt&gt;contain programs for system administration,   mostly for use by the &lt;span style="font-weight: bold;"&gt;s&lt;/span&gt;uperuser.&lt;br /&gt;&lt;tt class="user"&gt;&lt;br /&gt;&lt;/tt&gt;&lt;tt style="font-weight: bold;" class="user"&gt;/usr/local&lt;/tt&gt; - used for the installation   of software and other files for use on the   local machine. What this really means is that   software that is not part of the official   distribution.      When you find interesting programs to   install on your system, they should be   installed in one of the &lt;tt style="font-weight: bold;" class="user"&gt;/usr/local&lt;/tt&gt; directories. Most   often, the directory of choice is &lt;tt style="font-weight: bold;" class="user"&gt;/usr/local/bin&lt;/tt&gt;.&lt;br /&gt;&lt;br /&gt;&lt;tt style="font-weight: bold;" class="user"&gt;/tmp&lt;/tt&gt; - is a directory   in which programs can write their temporary   files.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;tt class="user"&gt;&lt;br /&gt;Source: http://www.linuxcommand.org/lts0040.php&lt;br /&gt;&lt;/tt&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21334459-744629683725583204?l=zeitgravity.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zeitgravity.blogspot.com/feeds/744629683725583204/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21334459&amp;postID=744629683725583204' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/744629683725583204'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/744629683725583204'/><link rel='alternate' type='text/html' href='http://zeitgravity.blogspot.com/2008/02/linux-directory-structure.html' title='linux: Linux directory structure'/><author><name>zeitgravity</name><uri>http://www.blogger.com/profile/08232233039900539258</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21334459.post-6258078422799829424</id><published>2008-02-03T19:45:00.000+07:00</published><updated>2008-02-08T21:26:41.413+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><title type='text'>java: A simple ANT template</title><content type='html'>&lt;pre&gt;&lt;br /&gt;&amp;lt;?xml version="1.0" ?&amp;gt;&lt;br /&gt;&amp;lt;project name="secondbuildJAR" default="compile"&amp;gt;&lt;br /&gt;&lt;br /&gt; &amp;lt;property file="${user.home}/build.properties"/&amp;gt;&lt;br /&gt; &lt;br /&gt; &amp;lt;property name="source.dir"           location="src"/&amp;gt;&lt;br /&gt; &amp;lt;property name="build.dir"            location="build"/&amp;gt;&lt;br /&gt; &amp;lt;property name="build.classes.dir"    location="${build.dir}/classes"/&amp;gt;&lt;br /&gt; &amp;lt;property name="distribution.dir"     location="dist"/&amp;gt;&lt;br /&gt; &amp;lt;property name="distribution.doc.dir" location="${distribution.dir}/doc" /&amp;gt;&lt;br /&gt;&lt;br /&gt; &lt;br /&gt; &amp;lt;property name="project.name"    value="${ant.project.name}" /&amp;gt;&lt;br /&gt; &amp;lt;property name="project.version" value="0.1.alpha" /&amp;gt;&lt;br /&gt; &amp;lt;property name="target.name"     value="${project.name}-${project.version}.jar" /&amp;gt;&lt;br /&gt; &amp;lt;property name="target.jar"      location="${distribution.dir}/${target.name}" /&amp;gt; &lt;br /&gt; &lt;br /&gt;    &lt;br /&gt; &amp;lt;patternset id="meta.files"&amp;gt;&lt;br /&gt;        &amp;lt;include name="**/*.xml"/&amp;gt;&lt;br /&gt;        &amp;lt;include name="**/*.properties"/&amp;gt;&lt;br /&gt;    &amp;lt;/patternset&amp;gt; &lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &amp;lt;path id="compile.classpath"&amp;gt;&lt;br /&gt;   &amp;lt;fileset dir="lib"&amp;gt;&lt;br /&gt;     &amp;lt;include name="*.jar"/&amp;gt;&lt;br /&gt;     &amp;lt;include name="*.zip"/&amp;gt;    &lt;br /&gt;   &amp;lt;/fileset&amp;gt;&lt;br /&gt; &amp;lt;/path&amp;gt;&lt;br /&gt; &lt;br /&gt; &lt;br /&gt; &lt;br /&gt; &amp;lt;path id="run.classpath"&amp;gt;&lt;br /&gt;   &amp;lt;path refid="compile.classpath"/&amp;gt;&lt;br /&gt;   &amp;lt;pathelement location="${target.jar}"/&amp;gt;&lt;br /&gt; &amp;lt;/path&amp;gt;&lt;br /&gt;&lt;br /&gt; &lt;br /&gt; &lt;br /&gt; &amp;lt;target name="clean"&amp;gt;&lt;br /&gt;  &amp;lt;delete dir="${build.dir}" /&amp;gt;      &lt;br /&gt;  &amp;lt;delete dir="${distribution.dir}" /&amp;gt; &amp;lt;!--this will delete both dist and dist/doc --&amp;gt;&lt;br /&gt;&lt;br /&gt;  &amp;lt;mkdir dir="${build.classes.dir}" /&amp;gt;&lt;br /&gt;  &amp;lt;mkdir dir="${distribution.doc.dir}" /&amp;gt;&lt;br /&gt; &amp;lt;/target&amp;gt;&lt;br /&gt;&lt;br /&gt; &lt;br /&gt; &lt;br /&gt;    &amp;lt;!-- Copy metadata to build classpath --&amp;gt;&lt;br /&gt;    &amp;lt;target name="copymetafiles" depends="clean"&amp;gt;&lt;br /&gt;        &amp;lt;copy todir="${build.classes.dir}"&amp;gt;&lt;br /&gt;            &amp;lt;fileset dir="${source.dir}"&amp;gt;&lt;br /&gt;                &amp;lt;patternset refid="meta.files"/&amp;gt;&lt;br /&gt;            &amp;lt;/fileset&amp;gt;&lt;br /&gt;        &amp;lt;/copy&amp;gt;&lt;br /&gt;    &amp;lt;/target&amp;gt; &lt;br /&gt; &lt;br /&gt; &lt;br /&gt;&lt;br /&gt; &amp;lt;target name="compile" depends="copymetafiles" description="Compiles the project"&amp;gt;&lt;br /&gt;  &amp;lt;javac srcdir="${source.dir}" &lt;br /&gt;      destdir="${build.classes.dir}" &lt;br /&gt;      debug="${build.debug}"&amp;gt;&lt;br /&gt;      &amp;lt;classpath refid="compile.classpath"/&amp;gt;&lt;br /&gt;  &amp;lt;/javac&amp;gt;&lt;br /&gt; &amp;lt;/target&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; &amp;lt;target name="archive" depends="compile" description="JARs up the project"&amp;gt;&lt;br /&gt;  &amp;lt;jar destfile="${target.jar}"&lt;br /&gt;    duplicate="preserve"&lt;br /&gt;    manifest="${source.dir}/META-INF/MANIFEST.MF"&amp;gt;&lt;br /&gt;   &amp;lt;fileset dir="${build.classes.dir}"/&amp;gt;&lt;br /&gt;  &amp;lt;/jar&amp;gt;&lt;br /&gt; &amp;lt;/target&amp;gt;&lt;br /&gt;     &lt;br /&gt;     &lt;br /&gt;&lt;br /&gt; &amp;lt;target name="execute" depends="archive" description="Executes the main class"&amp;gt;&lt;br /&gt;  &amp;lt;echo&amp;gt;running this program now!!!&amp;lt;/echo&amp;gt;&lt;br /&gt;  &amp;lt;java classname="org.antbook.welcome.Main" classpathref="run.classpath" failonerror="true"&amp;gt;&lt;br /&gt;   &amp;lt;arg value="a" /&amp;gt;&lt;br /&gt;   &amp;lt;arg value="b" /&amp;gt;&lt;br /&gt;   &amp;lt;arg file="." /&amp;gt;&lt;br /&gt;  &amp;lt;/java&amp;gt;&lt;br /&gt;  &amp;lt;echo&amp;gt;end running the program!!!&amp;lt;/echo&amp;gt;  &lt;br /&gt; &amp;lt;/target&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; &amp;lt;target name="echo"&amp;gt;&lt;br /&gt;  &amp;lt;echo message="ant.file = ${ant.file}" /&amp;gt;&amp;lt;!--where this ant file is located--&amp;gt;&lt;br /&gt;  &amp;lt;echo message="ant.home = ${ant.home}" /&amp;gt;&lt;br /&gt;  &amp;lt;echo&amp;gt;ant.version = ${ant.version}&amp;lt;/echo&amp;gt;&lt;br /&gt;  &amp;lt;echo&amp;gt;java.home = ${java.home}&amp;lt;/echo&amp;gt;&lt;br /&gt;  &amp;lt;echo message="ant.java.version = ${ant.java.version}" /&amp;gt;&lt;br /&gt;  &amp;lt;echo&amp;gt;ant.project.name = ${ant.project.name}&amp;lt;/echo&amp;gt;&lt;br /&gt;  &amp;lt;echo&amp;gt;user.name = ${user.name}&amp;lt;/echo&amp;gt;&lt;br /&gt;  &amp;lt;echo&amp;gt;user.home = ${user.home}&amp;lt;/echo&amp;gt;&lt;br /&gt;  &amp;lt;echo&amp;gt;basedir = ${basedir}&amp;lt;/echo&amp;gt;&lt;br /&gt;  &amp;lt;echo&amp;gt;build.debug = ${build.debug}&amp;lt;/echo&amp;gt;&lt;br /&gt; &amp;lt;/target&amp;gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;/project&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21334459-6258078422799829424?l=zeitgravity.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zeitgravity.blogspot.com/feeds/6258078422799829424/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21334459&amp;postID=6258078422799829424' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/6258078422799829424'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/6258078422799829424'/><link rel='alternate' type='text/html' href='http://zeitgravity.blogspot.com/2008/02/java-simple-ant-template.html' title='java: A simple ANT template'/><author><name>zeitgravity</name><uri>http://www.blogger.com/profile/08232233039900539258</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21334459.post-7081268481458127291</id><published>2008-01-06T14:30:00.000+07:00</published><updated>2008-01-06T14:34:57.273+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><title type='text'>linux: bootloader file location</title><content type='html'>I have an ASUS F3SV laptop.  It's dual boot Vista / Ubuntu.  In the boot menu, if I choose the first Vista menu option, the boot loader will be corrupted, making me unable to start up Ubuntu and Vista. &lt;br /&gt;&lt;br /&gt;I have no problems getting if into Vista if I choose the 2nd Vista menu option.  So, to prevent me from choosing the first Vista option in the first place, I simply commented that option in&lt;br /&gt;&lt;br /&gt;/boot/grub/menu.lst&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21334459-7081268481458127291?l=zeitgravity.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zeitgravity.blogspot.com/feeds/7081268481458127291/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21334459&amp;postID=7081268481458127291' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/7081268481458127291'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/7081268481458127291'/><link rel='alternate' type='text/html' href='http://zeitgravity.blogspot.com/2008/01/linux-bootloader-file-location.html' title='linux: bootloader file location'/><author><name>zeitgravity</name><uri>http://www.blogger.com/profile/08232233039900539258</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21334459.post-4876512324321831126</id><published>2008-01-06T13:46:00.000+07:00</published><updated>2008-02-01T06:22:12.312+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><title type='text'>java/linux: Setup ClassPath in Unix/Linux (ubuntu) on your .bashrc</title><content type='html'>If you want to be able to call eclipse / ant / java from any prompt in your linux system, then&lt;br /&gt;edit your &lt;code&gt;.bashrc&lt;/code&gt; and add this lines :&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;# User specific environment and startup programs&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;export ECLIPSE_HOME=/usr/local/eclipse&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;export JAVA_HOME=/usr/lib/jvm/java-6-sun&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;export ANT_HOME=/usr/share/ant&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;PATH=$PATH:$ECLIPSE_HOME:$JAVA_HOME/bin:$ANT_HOME/bin&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;export PATH&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:arial;"&gt;note: &lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;$PATH&lt;/span&gt;&lt;/span&gt; is how your current path is configured.  If you type in echo $PATH in the command line,  you should see something like this &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:arial;"&gt;The colon ":" is simply just the delimiter.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Once you've edited your .bashrc, reboot your pc (or type ctrl + alt + backspace) for your new settings to take effect.  After you've rebooted, type the following from the command line and see the results :&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;echo $JAVA_HOME&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;See :&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;http://java.sun.com/docs/books/tutorial/essential/environment/paths.html&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21334459-4876512324321831126?l=zeitgravity.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zeitgravity.blogspot.com/feeds/4876512324321831126/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21334459&amp;postID=4876512324321831126' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/4876512324321831126'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/4876512324321831126'/><link rel='alternate' type='text/html' href='http://zeitgravity.blogspot.com/2008/01/java-setup-classpath-in-unixlinux-using.html' title='java/linux: Setup ClassPath in Unix/Linux (ubuntu) on your .bashrc'/><author><name>zeitgravity</name><uri>http://www.blogger.com/profile/08232233039900539258</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21334459.post-3149334180385106990</id><published>2008-01-06T13:40:00.000+07:00</published><updated>2008-01-06T14:39:55.762+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><title type='text'>linux: Add RealPlayer in your Ubuntu</title><content type='html'>wget -c http://www.debian-multimedia.org/pool/main/r/realplay/realplayer_10.0.9-0.1_i386.deb&lt;br /&gt;sudo dpkg -i realplayer_10.0.9-0.1_i386.deb&lt;br /&gt;&lt;br /&gt;See :&lt;br /&gt;http://www.howtoforge.com/the_perfect_desktop_ubuntu_gutsy_gibbon_p6&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21334459-3149334180385106990?l=zeitgravity.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zeitgravity.blogspot.com/feeds/3149334180385106990/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21334459&amp;postID=3149334180385106990' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/3149334180385106990'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/3149334180385106990'/><link rel='alternate' type='text/html' href='http://zeitgravity.blogspot.com/2008/01/linux-add-realplayer-in-your-ubuntu.html' title='linux: Add RealPlayer in your Ubuntu'/><author><name>zeitgravity</name><uri>http://www.blogger.com/profile/08232233039900539258</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21334459.post-77320180021812341</id><published>2008-01-06T13:36:00.001+07:00</published><updated>2008-02-14T22:39:39.886+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='eclipse'/><title type='text'>eclipse: Installing JBoss Tools (formerly known asn JBoss IDE or Hibernate Tools) and SpringIDE via Update Manager</title><content type='html'>&lt;span style="font-weight: bold;"&gt;Hibernate tools&lt;/span&gt; can be obtained from JBoss tools.  To add JBoss tools in eclipse, add this as a "Remote Site" in your Eclipse Update Manager&lt;br /&gt;&lt;del&gt;&lt;a href="http://download.jboss.org/jbosside/updates/stable" target="_top"&gt;http://download.jboss.org/jbosside/updates/stable&lt;/a&gt;&lt;/del&gt;&lt;br /&gt;&lt;a href="http://download.jboss.org/jbosstools/updates/stable"&gt;http://download.jboss.org/jbosstools/updates/stable&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;For more info, see :&lt;br /&gt;&lt;del&gt;http://docs.jboss.com/jbosside/install/build/en/html/installation.html&lt;br /&gt;&lt;/del&gt;&lt;a href="http://download.jboss.org/jbosstools/updates/stable"&gt;http://labs.jboss.com/tools/download/index.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;SpringIDE&lt;/span&gt; - just add this to your download manager&lt;br /&gt;http://springide.org/updatesite&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21334459-77320180021812341?l=zeitgravity.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zeitgravity.blogspot.com/feeds/77320180021812341/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21334459&amp;postID=77320180021812341' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/77320180021812341'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/77320180021812341'/><link rel='alternate' type='text/html' href='http://zeitgravity.blogspot.com/2008/01/eclipse-installing-jboss-ide-hibernate.html' title='eclipse: Installing JBoss Tools (formerly known asn JBoss IDE or Hibernate Tools) and SpringIDE via Update Manager'/><author><name>zeitgravity</name><uri>http://www.blogger.com/profile/08232233039900539258</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21334459.post-2880574152392097784</id><published>2007-12-17T11:05:00.000+07:00</published><updated>2008-02-01T06:21:50.468+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sql'/><title type='text'>sql: querying date column</title><content type='html'>select * from TABLE_NAME&lt;br /&gt;where&lt;br /&gt;COLUMN_NAME &gt; TO_DATE('2007-12-07 23:59:05','yyyy-mm-dd HH24:mi:SS')&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21334459-2880574152392097784?l=zeitgravity.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zeitgravity.blogspot.com/feeds/2880574152392097784/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21334459&amp;postID=2880574152392097784' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/2880574152392097784'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/2880574152392097784'/><link rel='alternate' type='text/html' href='http://zeitgravity.blogspot.com/2007/12/sql-querying-date-column.html' title='sql: querying date column'/><author><name>zeitgravity</name><uri>http://www.blogger.com/profile/08232233039900539258</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21334459.post-973374974919819993</id><published>2007-10-25T09:06:00.002+07:00</published><updated>2008-02-18T15:47:07.283+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='regex'/><title type='text'>java: Short regular expression tutorial</title><content type='html'>&lt;span style="font-family:courier new;"&gt;&lt;span style="font-weight: bold;"&gt;^&lt;/span&gt; = logical not&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-weight: bold;"&gt;\w&lt;/span&gt; = shortcut for alphanumeric. i.e. a-z, A-Z, 0-9, _&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-weight: bold;"&gt;-&lt;/span&gt; = dash&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-weight: bold;"&gt;.&lt;/span&gt; = full stop&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;space bar pressed here = space bar&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-weight: bold;"&gt;[\\w-. ]&lt;/span&gt; = regular expression for valid characters.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-weight: bold;"&gt;[^\\w-. ]&lt;/span&gt; = regular expression for not valid characters (i.e.invalid characters).&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;//find a character that is not valid (ie. invalid characters are a-z, A-Z, 0-9, _, dash, full stop, and space bar&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;String regex = "&lt;span style="color: rgb(51, 51, 255);"&gt;[^\\w-. ]&lt;/span&gt;";&lt;br /&gt;&lt;br /&gt;---------------------------------------------------------&lt;br /&gt;&lt;br /&gt;Below are the common symbols you will often find:&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;^&lt;/span&gt;   The beginning of the line.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;$&lt;/span&gt;   The end of the line.&lt;br /&gt;&lt;br /&gt;.   Any single character.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;*&lt;/span&gt;   Zero or more repetitions of the previous expression.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;+&lt;/span&gt;   One or more repetitions of the previous expression.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;[]&lt;/span&gt; Any of the characters inside the brackets will match—e.g., [abc] matches any of a, b, c. Ranges are allowed too—e.g., [a-z].&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21334459-973374974919819993?l=zeitgravity.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zeitgravity.blogspot.com/feeds/973374974919819993/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21334459&amp;postID=973374974919819993' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/973374974919819993'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/973374974919819993'/><link rel='alternate' type='text/html' href='http://zeitgravity.blogspot.com/2007/10/java-short-regular-expression-tutorial.html' title='java: Short regular expression tutorial'/><author><name>zeitgravity</name><uri>http://www.blogger.com/profile/08232233039900539258</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21334459.post-115979852080016676</id><published>2006-10-02T21:03:00.000+07:00</published><updated>2008-02-01T06:22:44.389+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><title type='text'>linux: creating symbolic link for java</title><content type='html'>Symbolic link (aka symlink or shortcut in windoze)&lt;br /&gt;&lt;br /&gt;ln -s /usr/java/jdk1.5.0_09/bin/java /usr/local/bin/java&lt;br /&gt;ln -s /usr/java/jdk1.5.0_09/bin/javac /usr/local/bin/javac&lt;br /&gt;ln -s /usr/java/jdk1.5.0_09/bin/javadoc /usr/local/bin/javadoc&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21334459-115979852080016676?l=zeitgravity.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zeitgravity.blogspot.com/feeds/115979852080016676/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21334459&amp;postID=115979852080016676' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/115979852080016676'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/115979852080016676'/><link rel='alternate' type='text/html' href='http://zeitgravity.blogspot.com/2006/10/linux-creating-symbolic-link-for-java.html' title='linux: creating symbolic link for java'/><author><name>zeitgravity</name><uri>http://www.blogger.com/profile/08232233039900539258</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21334459.post-115979769948530213</id><published>2006-10-02T20:51:00.000+07:00</published><updated>2008-02-01T06:23:17.707+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><title type='text'>linux: How to find where a program is located</title><content type='html'>To find where firefox is installed, type:&lt;br /&gt;which firefox&lt;br /&gt;&lt;br /&gt;To find where java is installed, type:&lt;br /&gt;which java&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21334459-115979769948530213?l=zeitgravity.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zeitgravity.blogspot.com/feeds/115979769948530213/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21334459&amp;postID=115979769948530213' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/115979769948530213'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/115979769948530213'/><link rel='alternate' type='text/html' href='http://zeitgravity.blogspot.com/2006/10/linux-how-to-find-where-program-is.html' title='linux: How to find where a program is located'/><author><name>zeitgravity</name><uri>http://www.blogger.com/profile/08232233039900539258</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21334459.post-115979683700495811</id><published>2006-10-02T20:39:00.000+07:00</published><updated>2008-02-01T06:24:46.871+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><title type='text'>java/linux: Installing JDK/JavaSE</title><content type='html'>From command prompt, su as root.&lt;br /&gt;&lt;br /&gt;create dir /usr/java&lt;br /&gt;place  jdk-1_5_0_09-linux-i586.bin in /usr/java&lt;br /&gt;&lt;br /&gt;chmod 777 jdk-1_5_0_09-linux-i586.bi&lt;br /&gt;&lt;br /&gt;From /usr/java type&lt;br /&gt;./jdk-1_5_0_09-linux-i586.bin&lt;br /&gt;&lt;br /&gt;JDK is now installed in /usr/java/jdk1.5.0_09&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21334459-115979683700495811?l=zeitgravity.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zeitgravity.blogspot.com/feeds/115979683700495811/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21334459&amp;postID=115979683700495811' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/115979683700495811'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/115979683700495811'/><link rel='alternate' type='text/html' href='http://zeitgravity.blogspot.com/2006/10/linux-installing-jdkjavase.html' title='java/linux: Installing JDK/JavaSE'/><author><name>zeitgravity</name><uri>http://www.blogger.com/profile/08232233039900539258</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21334459.post-115979630876777207</id><published>2006-10-02T20:36:00.000+07:00</published><updated>2008-02-01T06:24:22.568+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><title type='text'>linux: How to uninstall a (non-rpm) program</title><content type='html'>User brute force uninstall :&lt;br /&gt;&lt;span style=";font-family:Verdana,Arial;font-size:85%;"  &gt;rm -rf /thedirwhereyourprogramresides&lt;br /&gt;&lt;dir&gt;&lt;br /&gt;&lt;/dir&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21334459-115979630876777207?l=zeitgravity.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zeitgravity.blogspot.com/feeds/115979630876777207/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21334459&amp;postID=115979630876777207' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/115979630876777207'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/115979630876777207'/><link rel='alternate' type='text/html' href='http://zeitgravity.blogspot.com/2006/10/linux-how-to-uninstall-non-rpm-program.html' title='linux: How to uninstall a (non-rpm) program'/><author><name>zeitgravity</name><uri>http://www.blogger.com/profile/08232233039900539258</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21334459.post-113792931102847124</id><published>2006-01-22T18:23:00.000+07:00</published><updated>2008-02-01T06:24:08.537+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><title type='text'>java: Generating unique sequence of numbers</title><content type='html'>&lt;span style="font-family:courier new;"&gt;Calendar calendar = Calendar.getInstance(TimeZone.getDefault());&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 204, 0);font-family:courier new;" &gt;//generate a unique sequential number. We derive this from the&lt;br /&gt;//number of &lt;/span&gt;&lt;span style="color: rgb(51, 204, 0);font-family:courier new;" &gt;milliseconds since 00:00:00 GMT Jan. 1, 1970 using //calendar object.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;String runNumber = new Long(calendar.getTime().getTime()).toString(); &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;System.out.println(runNumber);&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21334459-113792931102847124?l=zeitgravity.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zeitgravity.blogspot.com/feeds/113792931102847124/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21334459&amp;postID=113792931102847124' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/113792931102847124'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/113792931102847124'/><link rel='alternate' type='text/html' href='http://zeitgravity.blogspot.com/2006/01/java-generating-unique-sequence-of.html' title='java: Generating unique sequence of numbers'/><author><name>zeitgravity</name><uri>http://www.blogger.com/profile/08232233039900539258</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21334459.post-113792790021242242</id><published>2006-01-22T18:01:00.000+07:00</published><updated>2008-02-01T06:23:53.246+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><title type='text'>java: Sorting Dates in a List (Collection)</title><content type='html'>&lt;pre&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;final String DATE_FORMAT = "dd/MM/yy";&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SimpleDateFormat dateFormat = new SimpleDateFormat(DATE_FORMAT);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;dateFormat.setTimeZone(TimeZone.getDefault());&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 204, 0);font-family:courier new;" &gt;//we store date as time in milliseconds.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 204, 0);font-family:courier new;" &gt;//getTime() returns the number of milliseconds since&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 204, 0);font-family:courier new;" &gt;//midnight of January 1, 1970. This method is also very&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 204, 0);font-family:courier new;" &gt;//useful for generating a unique sequence of numbers.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Long date0 = new Long(dateFormat.parse("29/01/1995").getTime());&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Long date1 = new Long(dateFormat.parse("13/12/2007").getTime());&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Long date2 = new Long(dateFormat.parse("01/04/2000").getTime());&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;List dateList = new ArrayList();&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;dateList.add(date0);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;dateList.add(date1);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;dateList.add(date2);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Collections.sort(dateList);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 204, 0);font-family:courier new;" &gt;//Get wrapper Long from list. convert Long to String. &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 204, 0);font-family:courier new;" &gt;//Convert String to primitive long. Convert primitive long to Date.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Date dateLatest = new Date(Long.parseLong(((Long) dateList.get(dateList.size()-1)).toString()));&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;String dateLatestString = dateFormat.format(dateLatest);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;System.out.println(dateLatestString);&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21334459-113792790021242242?l=zeitgravity.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zeitgravity.blogspot.com/feeds/113792790021242242/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21334459&amp;postID=113792790021242242' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/113792790021242242'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/113792790021242242'/><link rel='alternate' type='text/html' href='http://zeitgravity.blogspot.com/2006/01/java-sorting-dates-in-list-collection.html' title='java: Sorting Dates in a List (Collection)'/><author><name>zeitgravity</name><uri>http://www.blogger.com/profile/08232233039900539258</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21334459.post-113792322833836604</id><published>2006-01-22T16:17:00.005+07:00</published><updated>2009-07-22T16:17:43.719+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><title type='text'>javascript: Sorting Date in an Array (Collection)</title><content type='html'>&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;pre class="brush: js"&gt;&lt;br /&gt;function getDateLatest()&lt;br /&gt;{&lt;br /&gt;  var date0 = new Date('12/31/2005');&lt;br /&gt;  var date1 = new Date('11/29/2007');&lt;br /&gt;  var date2 = new Date('01/13/1999');&lt;br /&gt;  &lt;br /&gt;  var dateArray = new Array();&lt;br /&gt;&lt;br /&gt;  //we store date as time in milliseconds.&lt;br /&gt;  //getTime() returns the number of milliseconds since&lt;br /&gt;  //midnight of January 1, 1970. This method is also very&lt;br /&gt;  //useful for generating a unique sequence of numbers.&lt;br /&gt;  dateArray[0] = date0.getTime();&lt;br /&gt;  dateArray[1] = date1.getTime();&lt;br /&gt;  dateArray[2] = date2.getTime();&lt;br /&gt;  dateArray.sort(sortNumber);&lt;br /&gt;&lt;br /&gt;  var dateLatest = new Date(dateArray[dateArray.length - 1]);&lt;br /&gt;  alert(dateLatest);}        &lt;br /&gt;&lt;br /&gt;  //By default, Array sorts alphabetically.  To get it to sort&lt;br /&gt;  //numerically, we write a function that compares numbers.&lt;br /&gt;  function sortNumber(a, b)&lt;br /&gt;  {&lt;br /&gt;     return a - b&lt;br /&gt;  }&lt;br /&gt;&lt;/pre&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21334459-113792322833836604?l=zeitgravity.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zeitgravity.blogspot.com/feeds/113792322833836604/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21334459&amp;postID=113792322833836604' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/113792322833836604'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21334459/posts/default/113792322833836604'/><link rel='alternate' type='text/html' href='http://zeitgravity.blogspot.com/2006/01/javascript-sorting-date-in-array.html' title='javascript: Sorting Date in an Array (Collection)'/><author><name>zeitgravity</name><uri>http://www.blogger.com/profile/08232233039900539258</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
