Tomcat 5.5.20 and JavaMail Sessions

Posted by Lucio Benfante Tue, 13 Mar 2007 06:40:00 GMT

You’ll find an article in italian on the same topic in my personal blog.

In Tomcat you can define a JNDI Resource for a JavaMail session putting the following code in you Context definition:

<Resource name="mail/Session" auth="Container"
            type="javax.mail.Session"
            mail.smtp.host="localhost"/>
Read more...

Posted in ,  | Tags , , ,  | 40 comments | no trackbacks

Bug storico...

Posted by Lucio Benfante Fri, 16 Jun 2006 05:03:00 GMT

...presente nel JDK, e probabilmente nella maggior parte delle implementazioni di algoritmi con approccio “divide et impera”.

Quanti di noi non hanno mai scritto questa semplice e innocente riga di codice (con low e high di tipo int)?

int mid = (low+high)/2;

Il problema è che la somma dei due interi può risultare in un overflow…gosh…

L’implementazione corretta sarebbe qualcosa di simile a:

int mid = low + ((high-low)/2);

Provate a cercare in qualunque libro di algoritmi e vedrete che anche i grandi sbagliano. Io ho guardato in ‘The Art of Computer Programming’), e anche l’implementazione dell’algoritmo di ricerca binaria di Donald E. Knuth soffre dello stesso bug.

Per quanto riguarda il JDK, il bug si trova (almeno) nel metodo binarySearch della classe java.utils.Arrays. A me non è mai capitato, ma ve l’immaginate la sorpresa (per non dire altro) di vedervi sollevare un ArrayIndexOutOfBoundsException da un metodo di quella classe?

L’annuncio e la discussione del bug li fa lo stesso autore della classe, Josh Bloch, in questo blog.

Posted in  | Tags , , ,  | 7 comments | no trackbacks

findbugs to discover bugs

Posted by Enrico Giurin Wed, 17 May 2006 10:15:00 GMT

FindBugs

I was investigating about a good tool for profiling when I met with findbugs. To be honest I found discussion about this tool in a thread of jug milano mailing list. findbugs is a free software which looks for bugs in Java code. In order to execute this program is enough you have installed on your machine Java Web Start. Thereby try to click here , after set parameter of your project (src, jar, etc) and finally push on ‘Find Bugs’ button.
I was amazed at how many bugs it found like comparison of String objects using == or != instead of using equals() method.
By the way…I didn’t generate that code :-)

Posted in  | Tags ,  | 6 comments | no trackbacks