<?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-9087766</id><updated>2011-12-15T00:49:37.431-02:00</updated><title type='text'>Java ECC Blog</title><subtitle type='html'>Java related news and links.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Elifarley</name><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>33</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-9087766.post-110419880208750117</id><published>2004-12-27T23:45:00.000-02:00</published><updated>2004-12-27T23:53:22.086-02:00</updated><title type='text'>PHP-based application framework: Horde</title><content type='html'>&lt;a href="http://www.horde.org/"&gt;Horde&lt;/a&gt; is a PHP-based application framework providing backend-independent interfaces for dealing with preferences, logfiles, compression, browser detection, connection tracking, MIME handling, hierarchical data, authentication, data formats, encryption, forms, session handling, file storage, remote procedure calls - and more is on the way.&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;Horde also makes heavy use of PEAR, the PHP Extension and Application Repository.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110419880208750117?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.horde.org/' title='PHP-based application framework: Horde'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110419880208750117/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110419880208750117' title='8 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110419880208750117'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110419880208750117'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/12/php-based-application-framework-horde.html' title='PHP-based application framework: Horde'/><author><name>Elifarley</name><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>8</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9087766.post-110383311996588894</id><published>2004-12-23T18:18:00.000-02:00</published><updated>2004-12-23T18:23:18.976-02:00</updated><title type='text'>Text formatting and scanning - Java printf package</title><content type='html'>&lt;a href="http://www.braju.com/index.html"&gt;Henrik Bengtsson's Java printf package&lt;/a&gt; implements common C-style printf formatting and scanf text parsing (includes methods sprintf, fprintf, scanf, sscanf and fprintf).&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;   &lt;li&gt;True C-style printf() with variable number of parameters.&lt;/li&gt;   &lt;li&gt;High quality thanks to thousands of users.&lt;/li&gt;   &lt;li&gt;Can save you hours or even days.&lt;/li&gt;   &lt;li&gt;Compatible with Java 1.0.2, Java 1.1 and Java 2.&lt;/li&gt;   &lt;li&gt;Free for non-commercial use.&lt;/li&gt; &lt;/ul&gt;&lt;br /&gt;You can take a look at &lt;a href="http://www.gkrueger.com/java/printf.html"&gt;Guido Krüger´s printf class&lt;/a&gt; as well.&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110383311996588894?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.braju.com/index.html' title='Text formatting and scanning - Java printf package'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110383311996588894/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110383311996588894' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110383311996588894'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110383311996588894'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/12/text-formatting-and-scanning-java.html' title='Text formatting and scanning - Java printf package'/><author><name>Elifarley</name><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-9087766.post-110383282027760170</id><published>2004-12-23T18:13:00.000-02:00</published><updated>2004-12-27T23:55:52.893-02:00</updated><title type='text'>Measuring execution times: SpeedTimer</title><content type='html'>&lt;a href="http://www.gkrueger.com/java/speed.html"&gt;Guido Krueger's SpeedTimer&lt;/a&gt; gives us an easy way to measure and compare method execution times.&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;   &lt;li&gt;Measures the hardware timer resolution.&lt;/li&gt;   &lt;li&gt;Measures the overhead of empty loop iteration.&lt;/li&gt;   &lt;li&gt;Offers a template to help measure the speed of the code by successively running it in a loop until the elapsed time is long enough to give meaningful results.&lt;/li&gt; &lt;/ul&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110383282027760170?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.gkrueger.com/java/speed.html' title='Measuring execution times: SpeedTimer'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110383282027760170/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110383282027760170' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110383282027760170'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110383282027760170'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/12/measuring-execution-times-speedtimer.html' title='Measuring execution times: SpeedTimer'/><author><name>Elifarley</name><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-9087766.post-110302754687023758</id><published>2004-12-14T10:32:00.000-02:00</published><updated>2004-12-14T10:32:26.870-02:00</updated><title type='text'>OpenLaszlo</title><content type='html'>&lt;a href="http://www.openlaszlo.org/"&gt;OpenLaszlo&lt;/a&gt; is an open source platform for the development and delivery of rich Internet applications on the web.&lt;br /&gt;&lt;br /&gt;With Laszlo, you can:&lt;br /&gt;&lt;br /&gt;    * Develop standards-based rich Internet applications with one code base in XML and JavaScript&lt;br /&gt;    * Deploy them from any J2EE application server or Java servlet container running under Linux, UNIX, Windows or Mac OS X&lt;br /&gt;    * Display them in any Web browser enabled with the Flash 5 Player or above, reaching 97% of all Web-enabled desktops&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110302754687023758?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.openlaszlo.org/' title='OpenLaszlo'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110302754687023758/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110302754687023758' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110302754687023758'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110302754687023758'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/12/openlaszlo.html' title='OpenLaszlo'/><author><name>Elifarley</name><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>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9087766.post-110302335262987007</id><published>2004-12-14T09:22:00.000-02:00</published><updated>2004-12-14T09:22:32.630-02:00</updated><title type='text'>Apache´s persistence tool: OJB</title><content type='html'>&lt;a href="http://db.apache.org/ojb/"&gt;ObJectRelationalBridge - OJB&lt;/a&gt; supports multiple persistence APIs to provide users with their API of choice:&lt;br /&gt;&lt;br /&gt;    *   A full featured ODMG 3.0 compliant API. (See the  ODMG Tutorial for an introduction.)&lt;br /&gt;    * A JDO compliant API. We currently provide a plugin to the JDO Reference Implementation (RI). Combining the JDO RI and our plugin provides a JDO 1.0 compliant o/r solution.&lt;br /&gt;      A full JDO implementation is scheduled for OJB 2.0. (See JDO tutorial for an introduction to the JDO programming model.)&lt;br /&gt;    * An Object Transaction Manager (OTM) layer that contains all features that JDO and ODMG have in common. (See OTM tutorial for details).&lt;br /&gt;    * A low-level PersistenceBroker API which serves as the OJB persistence kernel. The OTM-, ODMG- and JDO-implementations are build on top of this kernel.&lt;br /&gt;      This API can also be used directly by applications that don't need full fledged object level transactions (See the Persistence Broker Tutorial for details).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;More features:&lt;br /&gt;&lt;br /&gt;# Transparent persistence: Persistent classes don't have to inherit from a persistent base class or to implement an interface.&lt;br /&gt;#  Easy use of multiple databases. &lt;br /&gt;#  Extremly flexible design with pluggable implementation of most service classes like PersistenceBroker, ObjectCache, SequenceManager, RowReader, ConnectionFactory, ConnectionManager, IndirectionHandler, SQLGenerator, JdbcAccess, ... and so on.&lt;br /&gt;#  Comes along with fully functional demo applications running against HSQLDB.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110302335262987007?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://db.apache.org/ojb/' title='Apache´s persistence tool: OJB'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110302335262987007/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110302335262987007' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110302335262987007'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110302335262987007'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/12/apaches-persistence-tool-ojb.html' title='Apache´s persistence tool: OJB'/><author><name>Elifarley</name><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-9087766.post-110296694579933425</id><published>2004-12-13T17:42:00.000-02:00</published><updated>2004-12-13T17:45:38.866-02:00</updated><title type='text'>Real-world persistence: Chameleon Persistence</title><content type='html'>&lt;a href="http://www.bull-enterprises.com/aom/persistence/"&gt;Chameleon Persistence&lt;/a&gt; is a different persistence engine. It can be used for JavaBeans (in a classic O/R style), XML or other formats and is not constrained by traditional O/R requirements. Full native query language and complex query requirements are fully supported.&lt;br /&gt;&lt;br /&gt;Features:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;   &lt;li&gt;    Designed for real enterprise needs&lt;/li&gt;   &lt;li&gt;Not tied to JDBC-based databases&lt;/li&gt;   &lt;li&gt;    Cross data store retrievals (the object graph is spread across databases)&lt;/li&gt;   &lt;li&gt;    Very flexible data mapping (with or without JavaBeans)&lt;/li&gt;   &lt;li&gt;    Not limited to JavaBean persistence&lt;/li&gt;   &lt;li&gt;    Native data store query language support&lt;/li&gt;   &lt;li&gt;    Minimum configuration for minimum use cases&lt;/li&gt;   &lt;li&gt;    Expressions and scripts for query parameter substitution&lt;/li&gt;   &lt;li&gt;    Client-Server architecture&lt;/li&gt; &lt;/ul&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110296694579933425?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.bull-enterprises.com/aom/persistence/' title='Real-world persistence: Chameleon Persistence'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110296694579933425/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110296694579933425' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110296694579933425'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110296694579933425'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/12/real-world-persistence-chameleon.html' title='Real-world persistence: Chameleon Persistence'/><author><name>Elifarley</name><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-9087766.post-110270931189536538</id><published>2004-12-10T18:08:00.000-02:00</published><updated>2004-12-10T18:08:31.896-02:00</updated><title type='text'>Fast object persistence: Prevayler</title><content type='html'>&lt;a href="http://www.prevayler.org/wiki.jsp"&gt;Prevayler&lt;/a&gt; is the free-software Prevalence layer for Java.&lt;br /&gt;Ridiculously simple, Prevalence is by far the fastest and most transparent persistence, fault-tolerance and load-balancing architecture for Plain Old Java Objects (POJOs).&lt;br /&gt;&lt;br /&gt;Queries with Prevayler are more than 9000 times faster than querying Oracle through JDBC.&lt;br /&gt;Queries with Prevayler are more than 3000 times faster than querying MySQL through JDBC.&lt;br /&gt;&lt;br /&gt;These results are obtained even with the Oracle and MySQL databases fully cached in RAM and on the same physical machine as the test VM.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110270931189536538?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.prevayler.org/wiki.jsp' title='Fast object persistence: Prevayler'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110270931189536538/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110270931189536538' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110270931189536538'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110270931189536538'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/12/fast-object-persistence-prevayler.html' title='Fast object persistence: Prevayler'/><author><name>Elifarley</name><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-9087766.post-110270890185301158</id><published>2004-12-10T18:01:00.000-02:00</published><updated>2004-12-10T18:01:41.853-02:00</updated><title type='text'>O/R persistence: Hibernate</title><content type='html'>&lt;a href="http://www.hibernate.org/"&gt;Hibernate&lt;/a&gt; is a powerful, ultra-high performance object/relational persistence and query service for Java. Hibernate lets you develop persistent classes following common Java idiom - including association, inheritance, polymorphism, composition and the Java collections framework. The Hibernate Query Language, designed as a 'minimal' object-oriented extension to SQL, provides an elegant bridge between the object and relational worlds. Hibernate also allows you to express queries using native SQL or Java-based Criteria and Example queries. Hibernate is now the most popular object/relational mapping solution for Java.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110270890185301158?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.hibernate.org/' title='O/R persistence: Hibernate'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110270890185301158/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110270890185301158' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110270890185301158'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110270890185301158'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/12/or-persistence-hibernate.html' title='O/R persistence: Hibernate'/><author><name>Elifarley</name><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-9087766.post-110225706242660490</id><published>2004-12-05T12:31:00.000-02:00</published><updated>2004-12-05T12:31:02.426-02:00</updated><title type='text'>A collection of JVM options</title><content type='html'>&lt;a href="http://blogs.sun.com/roller/resources/watt/jvm-options-list.html"&gt;This document&lt;/a&gt; is a compilation of all the JVM options for various versions of the JVM on primarily SPARC/Solaris Platform. The descriptions for each option are taken mostly verbatim from the reference documents.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110225706242660490?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://blogs.sun.com/roller/resources/watt/jvm-options-list.html' title='A collection of JVM options'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110225706242660490/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110225706242660490' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110225706242660490'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110225706242660490'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/12/collection-of-jvm-options.html' title='A collection of JVM options'/><author><name>Elifarley</name><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-9087766.post-110190735429242727</id><published>2004-12-01T11:22:00.000-02:00</published><updated>2004-12-01T11:22:34.293-02:00</updated><title type='text'>Baloon tooltips in Java: jBallon</title><content type='html'>&lt;a href="http://www.jballoon.net/"&gt;jBallon&lt;/a&gt; is a new LGPL library that allows you to have balloon-style tooltips instead of the standard Java tooltips - and there´s no need to change a single line of Java code from your application. No recompilation is needed, either.&lt;br /&gt;To use JBalloonToolTips in your project you have to add this line to the project's startup script:&lt;br /&gt;&lt;strong&gt;-Xbootclasspath/p:jBalloon.jar&lt;/strong&gt;&lt;br /&gt;You can also mix standard and balloon tooltips in one app if you want.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110190735429242727?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.jballoon.net/' title='Baloon tooltips in Java: jBallon'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110190735429242727/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110190735429242727' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110190735429242727'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110190735429242727'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/12/baloon-tooltips-in-java-jballon.html' title='Baloon tooltips in Java: jBallon'/><author><name>Elifarley</name><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-9087766.post-110175326748793560</id><published>2004-11-29T16:34:00.000-02:00</published><updated>2004-11-29T16:34:27.486-02:00</updated><title type='text'>GUI editor for Thinlet: ThinG</title><content type='html'>&lt;a href="http://thing.sourceforge.net/"&gt;ThinG&lt;/a&gt;  is a GUI editor for &lt;a href="http://java-ecc.blogspot.com/2004/11/creating-gui-apps-thinlet.html"&gt;Thinlets&lt;/a&gt;. You can write/edit the XML description of your user interface and instantly see how it looks like or you can visually build it, tweak some parameters, and have the XML code automatically updated to reflect your changes.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110175326748793560?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://thing.sourceforge.net/' title='GUI editor for Thinlet: ThinG'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110175326748793560/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110175326748793560' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110175326748793560'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110175326748793560'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/11/gui-editor-for-thinlet-thing.html' title='GUI editor for Thinlet: ThinG'/><author><name>Elifarley</name><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>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9087766.post-110175290259348192</id><published>2004-11-29T16:28:00.000-02:00</published><updated>2004-11-29T16:28:22.593-02:00</updated><title type='text'>Creating GUI apps: Thinlet</title><content type='html'>Instead of using the Swing API to create your graphical applications, you may consider using &lt;a href="http://thinlet.sourceforge.net/index.html"&gt;Thinlet&lt;/a&gt;, which allows you to quickly create GUI applications, separating layout in XML files and business logic in Java code - easier than using Swing.&lt;br /&gt;&lt;br /&gt;Thinlet is a GUI toolkit in a single Java class (compressed size is less than 40 kB) which runs under Java 1.1 (browser´s default JVM) up to 1.4, Personal Java and Personal Profile.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110175290259348192?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://thinlet.sourceforge.net/index.html' title='Creating GUI apps: Thinlet'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110175290259348192/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110175290259348192' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110175290259348192'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110175290259348192'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/11/creating-gui-apps-thinlet.html' title='Creating GUI apps: Thinlet'/><author><name>Elifarley</name><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-9087766.post-110114293516829932</id><published>2004-11-22T15:02:00.000-02:00</published><updated>2004-11-22T15:59:10.000-02:00</updated><title type='text'>Java app launcher: JSmooth</title><content type='html'>&lt;a href="http://jsmooth.sourceforge.net/features.php"&gt;JSmooth&lt;/a&gt; is a Java application launcher that wraps an existing Jar file so that it becomes an executable Windows binary file (with '.exe' extension).&lt;br /&gt;It makes java deployment much smoother and user-friendly, as it is able to find a Java VM by itself. When no VM is available, it provides feedback to the users, and can launch the default web browser to an URL that explains how to download a Java VM.&lt;br /&gt;Features:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:85%;" &gt;Smooth User Experience&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;   &lt;li&gt;Your users see and use a standard windows Exe binary. No more technical explanation on .jar, on javaw association, etc.&lt;/li&gt;   &lt;li&gt;The Jsmooth EXE is smart: if no VM is found, your users are nicely explained how to install Java and/or are redirected to a web site (depending on the selected wrapper).&lt;/li&gt;   &lt;li&gt;Flexible automatic Java VM detection&lt;/li&gt; &lt;/ul&gt;&lt;br /&gt;&lt;h3&gt;&lt;span style="font-size:85%;"&gt;Flexible automatic Java VM detection&lt;/span&gt;&lt;/h3&gt; &lt;ul&gt;   &lt;li&gt; Detects the location of any Sun JVM installed. The wrappers use several strategies to detect all the JVM available on a computer, using windows registry, environment variables, windows path.&lt;/li&gt;   &lt;li&gt;Detects and uses Microsoft's JView (for 1.0 and 1.1 Java applications), if available.&lt;/li&gt;   &lt;li&gt;The JVM search sequence is fully customizable using the GUI.&lt;/li&gt;   &lt;li&gt;If a JVM is bundled with your software, you can force the wrappers to use it.&lt;/li&gt;   &lt;li&gt;Specify which versions of the JVM are compatible with your software.&lt;/li&gt; &lt;/ul&gt;&lt;br /&gt;&lt;h3&gt;&lt;span style="font-size:85%;"&gt;Graphical User Interface&lt;/span&gt;&lt;/h3&gt; &lt;ul&gt;   &lt;li&gt;    A Swing-based project editor allows you to easily configure the executable binary for your software.&lt;/li&gt;   &lt;li&gt;Associate an icon to your executable, using a .ICO, .PNG, or .GIF file (automatic color reduction is done if necessary).&lt;/li&gt; &lt;/ul&gt;&lt;br /&gt;&lt;h3&gt;&lt;span style="font-size:85%;"&gt;Application configuration&lt;/span&gt;&lt;/h3&gt; &lt;ul&gt;   &lt;li&gt;    Easy java properties configuration: specify the tag=value pairs you want the wrappers to pass to your java application.&lt;/li&gt;   &lt;li&gt;System environment variable are available in the java properties definition: just use the standard Windows %VARIABLE% syntax in your properties definition.&lt;/li&gt;   &lt;li&gt;Pass special variables that are not available to Java program, such as the executable path and name, and even the computer name.&lt;/li&gt;   &lt;li&gt;Specify all the classpath configuration, adding .jar, .zip, or directories, with an intuitive GUI.&lt;/li&gt;   &lt;li&gt;Want to modify the current directory used by your Java application? The wrappers will handle this for you.&lt;/li&gt; &lt;/ul&gt;&lt;br /&gt;&lt;h3&gt;&lt;span style="font-size:85%;"&gt;Wrappers&lt;/span&gt;&lt;/h3&gt; &lt;ul&gt;   &lt;li&gt;    Provided with several exe wrappers skeletons, so that you can choose the one that best suits your needs!&lt;/li&gt;   &lt;li&gt;Use one of the provided wrapper or create your own, and plug-it seamlessly into the jsmooth framework.&lt;/li&gt; &lt;/ul&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110114293516829932?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://jsmooth.sourceforge.net/features.php' title='Java app launcher: JSmooth'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110114293516829932/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110114293516829932' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110114293516829932'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110114293516829932'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/11/java-app-launcher-jsmooth.html' title='Java app launcher: JSmooth'/><author><name>Elifarley</name><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-9087766.post-110114234268742256</id><published>2004-11-22T14:52:00.000-02:00</published><updated>2004-11-22T15:48:07.513-02:00</updated><title type='text'>Feature-rich installer: VAInstall</title><content type='html'>&lt;a href="http://vainstall.sourceforge.net/"&gt;VAInstall&lt;/a&gt; is a multi-platform installer generator written in Java. Using a simple config file, it allows the packager to pick files and directories from various places on disk (unlike other installers which only use one root dir). The packager can completely reorganize the files and dirs on the destination host. The installation mode for the destination host can be graphic, xtra, text or ansi.&lt;br /&gt;VAInstall &lt;span style="font-style: italic;"&gt;doesn´t write any large temporary file on disk&lt;/span&gt;, and has an easy and powerful uninstallation procedure.&lt;br /&gt;Features:&lt;br /&gt;&lt;ul&gt;   &lt;li&gt;Multi-platform installation of applications (Java or not), or other data&lt;/li&gt;   &lt;li&gt;6 formats possible for the auto-installable packaged archive: executable Java class, executable Jar, JavaWebStart JNLP, Windows exe, Linux-i386 exe and Unix/Linux executable shell script&lt;/li&gt;&lt;li&gt;    Easy uninstall process&lt;/li&gt;   &lt;li&gt;    Version control: upgrades apps from existing versions or installs new versions&lt;/li&gt;   &lt;li&gt;    Forced-update mode: for differential updates or module/plug-in installation in existing apps&lt;/li&gt;   &lt;li&gt;    Four possible user-interfaces: graphic-classic, graphic-xtra, text-only or coloured ansi text&lt;/li&gt;   &lt;li&gt;Easy configuration: a config file and a file listing&lt;/li&gt;   &lt;li&gt;Integration with &lt;a href="http://java-ecc.blogspot.com/2004/11/java-based-build-tool-ant.html"&gt;Ant&lt;/a&gt; thru an Ant task&lt;/li&gt;&lt;li&gt; Powerful archiving: you can archive files from different locations, and reorganize them as you want in your auto-install archive.&lt;/li&gt;    &lt;li&gt;    Java launch scripts generation&lt;/li&gt;   &lt;li&gt;    Windows registry management&lt;/li&gt;   &lt;li&gt;    Shortcuts generation (for Debian/Gnome targets only)&lt;/li&gt;   &lt;li&gt;    Support for choosable language during installation&lt;/li&gt;    &lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110114234268742256?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://vainstall.sourceforge.net/' title='Feature-rich installer: VAInstall'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110114234268742256/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110114234268742256' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110114234268742256'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110114234268742256'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/11/feature-rich-installer-vainstall.html' title='Feature-rich installer: VAInstall'/><author><name>Elifarley</name><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-9087766.post-110114161091729068</id><published>2004-11-22T14:40:00.000-02:00</published><updated>2004-11-22T15:50:52.773-02:00</updated><title type='text'>Application deployment with Ant: ROXES ANT Tasks</title><content type='html'>&lt;a href="http://www.roxes.com/produkte/rat.html"&gt;ROXES ANT Tasks&lt;/a&gt; are a collection of 16 &lt;a href="http://java-ecc.blogspot.com/2004/11/java-based-build-tool-ant.html"&gt;Ant&lt;/a&gt; tasks for simplifying application deployment.&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;   &lt;li&gt;&lt;span style="font-weight: bold;"&gt;win32.properties&lt;/span&gt; - provides access to special Windows directories like desktop, program menu, program files and many more.&lt;/li&gt;   &lt;li&gt;&lt;span style="font-weight: bold;"&gt;win32.registry&lt;/span&gt; - lets you create/read/write/delete windows registry subtrees and entries.&lt;/li&gt;   &lt;li&gt;&lt;span style="font-weight: bold;"&gt;win32.shortcut&lt;/span&gt; - is able to create Windows Shortcuts. Both Windows Shortcut file formats (.url and .lnk) can be read and written.&lt;/li&gt;   &lt;li&gt;&lt;span style="font-weight: bold;"&gt;sfx&lt;/span&gt; - creates native self extracting executables out of ZIP archives. Currently supported target platforms are Windows, MacOS X, almost any Unix and self executable JAVA Jar files. For Windows the executable command may contain placeholders for registry, enviroment and executable filename which are evaluated at runtime. The icon for the windows executable can be defined by the task.&lt;/li&gt;   &lt;li&gt;&lt;span style="font-weight: bold;"&gt;jstub&lt;/span&gt; - jstub creates native executables for Windows, MacOS X and almost any Unix System out of a working JAR archive. For Windows the executable command may contain placeholders for registry, enviroment and executable filename which are evaluated at runtime. The icon for the windows executable can be defined be the task.&lt;/li&gt;   &lt;li&gt;&lt;span style="font-weight: bold;"&gt;jnlp&lt;/span&gt; - simplifies the creation of JNLP files for JAVA Web Start. The jnlp task is able to handle ANT Filesets as resources. This feature makes jnlp file creation using the jnlp Task much more easier.&lt;/li&gt;   &lt;li&gt;&lt;span style="font-weight: bold;"&gt;preferences&lt;/span&gt; - lets you access the JAVA Preferences API. You can read, write, import, export and test preferences data and nodes. Using this task is very useful for configuring applications. &lt;/li&gt;   &lt;li&gt;&lt;span style="font-weight: bold;"&gt;properties&lt;/span&gt; - The properties task is able to write Java property files. This task can merge existing properties files with custom properties defined in the ant build file. The custom property definition can be used in conjunction with conditions. properties can be used to store user input during build for later use.&lt;/li&gt;   &lt;li&gt;&lt;span style="font-weight: bold;"&gt;find&lt;/span&gt; - The find task is able find files using a pattern. This task is especially useful when you use libraries which name contain version/build information which may vary over the time. Using the find task you can use the file of your choice without changing the build file again and again.&lt;/li&gt;   &lt;li&gt;&lt;span style="font-weight: bold;"&gt;compare&lt;/span&gt; - This task can compare 2 values either numerical ore aplanumerical and set customziable properties depending of the result.&lt;/li&gt;   &lt;li&gt;&lt;span style="font-weight: bold;"&gt;execute&lt;/span&gt; - executes a block of tasks one ore more times depending of a condition.&lt;/li&gt;   &lt;li&gt;&lt;span style="font-weight: bold;"&gt;call&lt;/span&gt; - executes a task one ore more times depending of a condition.&lt;/li&gt;   &lt;li&gt;&lt;span style="font-weight: bold;"&gt;os.properties&lt;/span&gt; - creates properties containing informations about the underlying os.&lt;/li&gt;   &lt;li&gt;&lt;span style="font-weight: bold;"&gt;unix.properties&lt;/span&gt; - makes important properties of the underlying unix system available as ant properties. espcially common kde directories like program menu, desktop etc. are supported.&lt;/li&gt;   &lt;li&gt;&lt;span style="font-weight: bold;"&gt;unix.link&lt;/span&gt; - creates a unix soft link. works only under unix.&lt;/li&gt;   &lt;li&gt;&lt;span style="font-weight: bold;"&gt;unix.kde.shortcut&lt;/span&gt; - creates a kde shortcut file used to create desktop or program menu entries.&lt;/li&gt;   &lt;li&gt;&lt;span style="font-weight: bold;"&gt;unix.kde.directoryshortcut&lt;/span&gt; - creates a kde directory shortcut file used to create desktop or program menu entries.&lt;/li&gt; &lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110114161091729068?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.roxes.com/produkte/rat.html' title='Application deployment with Ant: ROXES ANT Tasks'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110114161091729068/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110114161091729068' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110114161091729068'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110114161091729068'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/11/application-deployment-with-ant-roxes.html' title='Application deployment with Ant: ROXES ANT Tasks'/><author><name>Elifarley</name><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-9087766.post-110114099700832339</id><published>2004-11-22T14:29:00.000-02:00</published><updated>2004-11-22T14:29:57.006-02:00</updated><title type='text'>Accessing the system tray: SysTray for Java</title><content type='html'>&lt;a href="http://systray.sourceforge.net/"&gt;SysTray for Java&lt;/a&gt; enables Java applications to create an icon in the system tray under Windows and KDE 3. It supports the creation of submenus, multiple independent menus, checkable menus, and everything can be changed at runtime. &lt;br /&gt;The JAR and the DLL needed to run systray4j on Windows are LGPL. The code for KDE is GPL.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110114099700832339?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://systray.sourceforge.net/' title='Accessing the system tray: SysTray for Java'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110114099700832339/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110114099700832339' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110114099700832339'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110114099700832339'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/11/accessing-system-tray-systray-for-java.html' title='Accessing the system tray: SysTray for Java'/><author><name>Elifarley</name><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-9087766.post-110112985554236972</id><published>2004-11-22T11:24:00.000-02:00</published><updated>2004-11-22T11:24:15.543-02:00</updated><title type='text'>Running Java apps as services</title><content type='html'>&lt;a href="http://wrapper.tanukisoftware.org/"&gt;Java Service Wrapper&lt;/a&gt; allows a Java application to be run as a Windows service or a Unix daemon. It works under FreeBSD, GNU-Linux, MacOS X, Solaris, AIX, Windows NT/2000/XP/2003, Irix, HP-UX and DEC OSF1.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110112985554236972?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://wrapper.tanukisoftware.org/' title='Running Java apps as services'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110112985554236972/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110112985554236972' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110112985554236972'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110112985554236972'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/11/running-java-apps-as-services.html' title='Running Java apps as services'/><author><name>Elifarley</name><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-9087766.post-110088446731014486</id><published>2004-11-19T15:14:00.000-02:00</published><updated>2004-11-19T15:16:20.736-02:00</updated><title type='text'>Javadocs knowledge base: JDocs</title><content type='html'>&lt;a href="http://www.jdocs.com/"&gt;JDocs&lt;/a&gt; is a comprehensive online resource for Java API documentation. All the javadocs for a variety of popular packages are loaded into our db-driven system, and users can contribute their own notes to virtually any class, field, method.&lt;br /&gt;&lt;br /&gt;JDocs features:&lt;br /&gt;&lt;ul&gt;   &lt;li&gt;HUGE collection of APIs&lt;/li&gt;   &lt;li&gt;Familiar "javadocs" interface&lt;/li&gt;   &lt;li&gt;Annotated with user notes&lt;/li&gt;   &lt;li&gt;Fully indexed and searchable&lt;/li&gt; &lt;/ul&gt;&lt;br /&gt;(For an example, see the &lt;a href="http://www.jdocs.com/jasperreports/0.6.0/api/index.html"&gt;Javadocs for JasperReports&lt;/a&gt;)&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110088446731014486?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.jdocs.com/' title='Javadocs knowledge base: JDocs'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110088446731014486/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110088446731014486' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110088446731014486'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110088446731014486'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/11/javadocs-knowledge-base-jdocs.html' title='Javadocs knowledge base: JDocs'/><author><name>Elifarley</name><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-9087766.post-110088197505016358</id><published>2004-11-19T14:32:00.000-02:00</published><updated>2004-11-19T14:32:55.050-02:00</updated><title type='text'>User authentication against WinNT: Tagish JAAS Modules</title><content type='html'>If your Java application needs to authenticate users against a Windows NT or Windows 2000 domain, take a look at &lt;a href="http://free.tagish.net/jaas/index.jsp"&gt;JAAS Modules&lt;/a&gt; from free.tagish.net. By installing a small DLL - NTSystem.dll - in your system (the computer which is running your app) and a jar file - tagishauth.jar - you can authenticate users as easily as the following example:&lt;br /&gt;&lt;br /&gt;	public static void checkAuth(String userName, char[] password, String domainName) throws javax.security.auth.login.LoginException {&lt;br /&gt;&lt;br /&gt;		com.tagish.auth.win32.NTSystem ntSystem = new NTSystem();&lt;br /&gt;		ntSystem.logon(userName, password, domainName);&lt;br /&gt;		System.out.println("User validated using domain login");&lt;br /&gt;&lt;br /&gt;	}&lt;br /&gt;&lt;br /&gt;You just have to pass the user name, password, and the NT domain to perform the authentication. When the authentication fails, a LoginException is thrown.&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110088197505016358?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://free.tagish.net/jaas/index.jsp' title='User authentication against WinNT: Tagish JAAS Modules'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110088197505016358/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110088197505016358' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110088197505016358'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110088197505016358'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/11/user-authentication-against-winnt.html' title='User authentication against WinNT: Tagish JAAS Modules'/><author><name>Elifarley</name><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>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9087766.post-110087969235236116</id><published>2004-11-19T13:54:00.000-02:00</published><updated>2004-11-19T14:37:42.496-02:00</updated><title type='text'>Creating distributed applications: TRMI</title><content type='html'>&lt;a href="http://trmi.sourceforge.net/"&gt;Transparent RMI&lt;/a&gt; (TRMI for short) is a Java library based on RMI that simplifies the design of distributed applications. It has two distinct advantages:&lt;br /&gt;&lt;ul&gt;   &lt;li&gt;Allows invoking a method remotely by using any interface, not just those that extend java.rmi.Remote;&lt;/li&gt;   &lt;li&gt;Provides a mechanism for recovering from RemoteExceptions in a centralized location.&lt;/li&gt; &lt;/ul&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110087969235236116?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://trmi.sourceforge.net/' title='Creating distributed applications: TRMI'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110087969235236116/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110087969235236116' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110087969235236116'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110087969235236116'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/11/creating-distributed-applications-trmi.html' title='Creating distributed applications: TRMI'/><author><name>Elifarley</name><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-9087766.post-110071846841841752</id><published>2004-11-17T17:07:00.000-02:00</published><updated>2004-11-17T17:25:53.786-02:00</updated><title type='text'>Complete reporting solution: OpenReports</title><content type='html'>&lt;a href="http://sourceforge.net/projects/oreports/"&gt;OpenReports&lt;/a&gt; is a complete web based reporting solution that provides the ability for users to view dynamically created PDF, HTML or XLS reports in a browser. It is developed in Java and uses &lt;a href="http://java-ecc.blogspot.com/2004/11/java-reporting-tool-jasperreports.html"&gt;JasperReports&lt;/a&gt; as the reporting engine. The goal of OpenReports is to provide a web based reporting solution built upon open source technologies that will compete against&lt;br /&gt;complex and expensive reporting tools such as Crystal Reports and Cognos.&lt;br /&gt;Features:&lt;br /&gt;&lt;ul&gt;      &lt;li&gt;The ability to create groups of reports, and grant users access to reports by group.&lt;/li&gt;   &lt;li&gt;The ability to generate reports as PDF, XLS, HTML, and CSV files&lt;/li&gt;   &lt;li&gt;The ability to generate bar, pie and xy charts for inclusion in reports.&lt;/li&gt;   &lt;li&gt;The ability to &lt;span style="font-weight: bold;"&gt;schedule and email&lt;/span&gt; PDF reports.&lt;/li&gt;      &lt;li&gt;The ability to define reusable report parameters. Available parameter types include Date, Text, Query Parameters.&lt;/li&gt;         &lt;li&gt;The ability to create multiple Datasources for use in generating reports. Support for JNDI Datasources and internal connection pooling via Commons-DBCP is included.&lt;/li&gt;   &lt;li&gt;The ability to upload and hot deploy new reports.&lt;/li&gt;      &lt;li&gt;Web based administration of users, groups, reports, parameters, and datasources.&lt;/li&gt;   &lt;li&gt;Cross platform database support via Hibernate based persistence layer.&lt;/li&gt;   &lt;li&gt;Available in a preconfigured bundle with Apache Tomcat.&lt;/li&gt; &lt;/ul&gt;&lt;br /&gt;This solution also has a visual report designer, &lt;a href="http://opensourcesoft.net/index.php?module=pagemaster&amp;PAGE_user_op=view_page&amp;amp;amp;amp;amp;amp;PAGE_id=13&amp;amp;MMN_position=11:11"&gt;OpenReports Designer&lt;/a&gt;, with the following features:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;   &lt;li&gt;Edit, design, preview, and view Jasper reports.&lt;/li&gt;   &lt;li&gt;Visual report designer.&lt;/li&gt;   &lt;li&gt;XML editor with syntax highlighting.&lt;/li&gt;   &lt;li&gt;Dialogs for editing report properties and elements.&lt;/li&gt;   &lt;li&gt;View and print compiled Jasper reports.&lt;/li&gt;   &lt;li&gt;Export compiled Jasper reports to PDF, HTML, XLS, and CSV files.&lt;/li&gt;   &lt;li&gt;Includes a wizard for creating database driven reports.&lt;/li&gt; &lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110071846841841752?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://sourceforge.net/projects/oreports/' title='Complete reporting solution: OpenReports'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110071846841841752/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110071846841841752' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110071846841841752'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110071846841841752'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/11/complete-reporting-solution.html' title='Complete reporting solution: OpenReports'/><author><name>Elifarley</name><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-9087766.post-110070726941683608</id><published>2004-11-17T14:01:00.000-02:00</published><updated>2004-11-17T14:02:55.110-02:00</updated><title type='text'>Java-based build tool: Ant</title><content type='html'>&lt;a href="http://ant.apache.org/"&gt;Apache Ant&lt;/a&gt; is a cross-platform, Java-based build tool, resembling &lt;code&gt;make&lt;/code&gt; somewhat. Unlike &lt;code&gt;make&lt;/code&gt;, which can be extended with shell-based commands, Ant is extended using Java classes, and instead of writing shell commands, Ant's configuration files are XML-based, calling out a target tree where various tasks get executed. But if you really need to, you can execute a shell command by using Ant's &lt;code&gt;&amp;lt;exec&amp;gt;&lt;/code&gt; task, which allows different commands to be executed based on the host OS.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110070726941683608?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://ant.apache.org/' title='Java-based build tool: Ant'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110070726941683608/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110070726941683608' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110070726941683608'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110070726941683608'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/11/java-based-build-tool-ant.html' title='Java-based build tool: Ant'/><author><name>Elifarley</name><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-9087766.post-110070615714167425</id><published>2004-11-17T13:42:00.000-02:00</published><updated>2004-11-17T13:42:37.140-02:00</updated><title type='text'>Logging framework: Log4j</title><content type='html'>&lt;a href="http://logging.apache.org/log4j/docs/index.html"&gt;Log4j&lt;/a&gt; is an essential logging framework for Java. It helps you debug your application (with minimal impact on performance) by means of logging statements inserted in specific points of your code. Logging can be configured or even turned off at runtime via method calls or with a configuration file, all without changing the application binary.&lt;br /&gt;Logging equips the developer with detailed context for application failures, thus it gets easier to correct them.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110070615714167425?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://logging.apache.org/log4j/docs/index.html' title='Logging framework: Log4j'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110070615714167425/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110070615714167425' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110070615714167425'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110070615714167425'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/11/logging-framework-log4j.html' title='Logging framework: Log4j'/><author><name>Elifarley</name><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-9087766.post-110070437221424443</id><published>2004-11-17T13:12:00.000-02:00</published><updated>2004-11-17T13:49:14.890-02:00</updated><title type='text'>Unit testing framework: JUnit</title><content type='html'>&lt;a href="http://www.junit.org/"&gt;JUnit&lt;/a&gt; is THE unit testing framework for Java. Writing unit tests for your Java classes with JUnit becomes a snap. Check it out if you've never heard of it before - it's quite easy to learn and it will save you a lot of headaches in the future.&lt;br /&gt;(You may be interested to know that there´s a &lt;a href="http://devnet-ecc.blogspot.com/2004/11/unit-testing-for-javascript-jsunit.html"&gt;Javascript unit testing framework&lt;/a&gt; as well)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110070437221424443?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.junit.org/index.htm' title='Unit testing framework: JUnit'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110070437221424443/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110070437221424443' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110070437221424443'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110070437221424443'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/11/unit-testing-framework-junit.html' title='Unit testing framework: JUnit'/><author><name>Elifarley</name><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-9087766.post-110069995068710263</id><published>2004-11-17T11:59:00.000-02:00</published><updated>2004-11-17T11:59:10.686-02:00</updated><title type='text'>Java instant messenger: JIM</title><content type='html'>&lt;a href="http://www.imjim.com/"&gt;JIM&lt;/a&gt;, by Jeffrey Ketterer and Austin Click,  is a Java server/client instant messaging program.  Both the client and the server are free, and anyone can run a server.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110069995068710263?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.imjim.com/' title='Java instant messenger: JIM'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110069995068710263/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110069995068710263' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110069995068710263'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110069995068710263'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/11/java-instant-messenger-jim.html' title='Java instant messenger: JIM'/><author><name>Elifarley</name><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-9087766.post-110063155009823255</id><published>2004-11-16T16:59:00.000-02:00</published><updated>2004-11-16T17:06:07.493-02:00</updated><title type='text'>Barcode generation: Krysalis Barcode</title><content type='html'>&lt;a href="http://www.krysalis.org/barcode/"&gt;Krysalis Barcode&lt;/a&gt; is a free, flexible barcode generator written in Java.&lt;br /&gt;&lt;br /&gt;Features:&lt;br /&gt;&lt;br /&gt;* 1D barcode implementations: &lt;ul&gt;   &lt;li&gt;          Interleaved 2 of 5&lt;/li&gt;   &lt;li&gt;          Code 39&lt;/li&gt;   &lt;li&gt;Codabar&lt;/li&gt;   &lt;li&gt;Code 128&lt;/li&gt;   &lt;li&gt;          UPC-A and UPC-E (with supplementals)&lt;/li&gt;   &lt;li&gt;          EAN-13 and EAN-8 (with supplementals)&lt;/li&gt;   &lt;li&gt;          POSTNET&lt;/li&gt; &lt;/ul&gt;     * Support for multiple output formats:&lt;br /&gt;&lt;ul&gt;   &lt;li&gt;          SVG&lt;/li&gt;   &lt;li&gt;EPS (Encapsulated PostScript)&lt;/li&gt;   &lt;li&gt;          Bitmap images (such as GIF, PNG or JPEG)&lt;/li&gt;   &lt;li&gt;          Java2D (AWT)&lt;/li&gt;   &lt;li&gt;          Text (for testing and debugging only)&lt;/li&gt; &lt;/ul&gt;     * Servlet with support for SVG, EPS and bitmap output&lt;br /&gt;&lt;br /&gt;   * Command-line interface&lt;br /&gt;&lt;br /&gt;   * Plug-ins/extensions for third-party products:&lt;br /&gt;&lt;ul&gt;   &lt;li&gt;&lt;a href="http://xml.apache.org/xalan-j/"&gt;          Apache Xalan&lt;/a&gt;: SVG-generating XSLT extension&lt;/li&gt;   &lt;li&gt;          The &lt;a href="http://saxon.sourceforge.net/"&gt;SAXON XSLT Processor&lt;/a&gt; from Michael Kay: SVG-generating XSLT extension&lt;/li&gt;   &lt;li&gt;&lt;a href="http://xml.apache.org/fop/"&gt;          Apache FOP&lt;/a&gt;: support as fo:instream-foreign-object&lt;/li&gt; &lt;/ul&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110063155009823255?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.krysalis.org/barcode/' title='Barcode generation: Krysalis Barcode'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110063155009823255/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110063155009823255' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110063155009823255'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110063155009823255'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/11/barcode-generation-krysalis-barcode.html' title='Barcode generation: Krysalis Barcode'/><author><name>Elifarley</name><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-9087766.post-110062778811189705</id><published>2004-11-16T15:56:00.000-02:00</published><updated>2004-11-16T17:13:34.096-02:00</updated><title type='text'>Java API To Access Microsoft Format Files: Jakarta POI</title><content type='html'>&lt;a href="http://jakarta.apache.org/poi/"&gt;Jakarta POI&lt;/a&gt; consists of APIs for manipulating various file formats based upon Microsoft's OLE 2 Compound Document format using pure Java. In short, you can read and write MS Excel files using Java. Soon, you'll be able to read and write Word files using Java.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110062778811189705?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://jakarta.apache.org/poi/' title='Java API To Access Microsoft Format Files: Jakarta POI'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110062778811189705/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110062778811189705' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110062778811189705'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110062778811189705'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/11/java-api-to-access-microsoft-format.html' title='Java API To Access Microsoft Format Files: Jakarta POI'/><author><name>Elifarley</name><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-9087766.post-110062749949291828</id><published>2004-11-16T15:51:00.000-02:00</published><updated>2004-11-16T16:53:31.596-02:00</updated><title type='text'>PDF file creation: iText</title><content type='html'>&lt;a href="http://www.lowagie.com/iText/"&gt;iText&lt;/a&gt; is a free Java class library to create PDF files.&lt;br /&gt;&lt;br /&gt;Features:&lt;br /&gt;&lt;ul&gt;   &lt;li&gt;&lt;a href="http://www.lowagie.com/iText/tutorial/ch09.html#barcode"&gt;Barcode generation&lt;/a&gt; with or without fonts (Code 39, Code 128, EAN13, EAN8, UPCA, UPCE, and EAN with supplemental 5, EAN with supplemental 5, EAN with supplemental 2, Interleaved 2 of 5, Postnet and Planet)&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.lowagie.com/iText/tutorial/ch01.html#encryption"&gt;PDF encryption&lt;br /&gt;    &lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.lowagie.com/iText/tutorial/ch04.html#headerfooter"&gt;Headers and footers&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.lowagie.com/iText/tutorial/ch10.html"&gt;Absolute positioning&lt;/a&gt; of graphics (PNG, GIF, JPEG, WMF) and text&lt;/li&gt;   &lt;li&gt;&lt;a href="http://www.lowagie.com/iText/tutorial/ch05.html"&gt;Table&lt;/a&gt; support (see also the more advanced &lt;a href="http://www.lowagie.com/iText/tutorial/ch10.html#abspdfptable"&gt;PDFTable&lt;/a&gt; class)&lt;br /&gt; &lt;/li&gt;   &lt;li&gt;Metadata manipulation&lt;/li&gt;   &lt;li&gt;&lt;a href="http://www.lowagie.com/iText/tutorial/ch07.html#htmlwithCSS"&gt;HTML output&lt;/a&gt;&lt;br /&gt; &lt;/li&gt;   &lt;li&gt;&lt;a href="http://www.lowagie.com/iText/tutorial/ch08.html"&gt;RTF output&lt;/a&gt;&lt;/li&gt;   &lt;li&gt;&lt;a href="http://www.lowagie.com/iText/tutorial/ch11.html" class="chapter"&gt;Local and remote goto, destinations and outlines&lt;/a&gt;&lt;/li&gt;   &lt;li&gt;Includes tools to &lt;a href="http://www.lowagie.com/iText/tutorial/ch13.html#tools" class="topic"&gt;concat, split, create a handout and encrypt PDF files&lt;/a&gt;&lt;/li&gt;   &lt;li&gt;etc...&lt;br /&gt; &lt;/li&gt;  &lt;/ul&gt;&lt;br /&gt;Below is a simple bar code example taken from the documentation:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;PdfContentByte cb = writer.getDirectContent();&lt;br /&gt;BarcodeEAN codeEAN = new BarcodeEAN();&lt;br /&gt;codeEAN.setCodeType(codeEAN.EAN13);&lt;br /&gt;codeEAN.setCode("9780201615883");&lt;br /&gt;Image imageEAN = codeEAN.createImageWithBarcode(cb, null, null);&lt;br /&gt;document.add(new Phrase(new Chunk(imageEAN, 0, 0)));&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;There´s also an &lt;a href="http://fopps.sourceforge.net/related/IText.html"&gt;iText ant task &lt;/a&gt;(from the &lt;a href="http://fopps.sourceforge.net/"&gt;Fopps project&lt;/a&gt;) which takes an XML file as input and generates a PDF file (HTML and RTF are also supported).&lt;br /&gt;Below is an example, which builds a pdf document out of &lt;tt&gt;plain.xml&lt;/tt&gt;. Every page contains the header 'My header' and the footer 'Page x of y':&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;&amp;lt;itext&lt;br /&gt;  src="Plain.xml"&lt;br /&gt;  dest="Test1.pdf"&lt;br /&gt;  header="My header"&lt;br /&gt;  footer="pagenumbering"&amp;gt;&lt;br /&gt;&amp;lt;/itext&amp;gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110062749949291828?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.lowagie.com/iText/' title='PDF file creation: iText'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110062749949291828/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110062749949291828' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110062749949291828'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110062749949291828'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/11/pdf-file-creation-itext.html' title='PDF file creation: iText'/><author><name>Elifarley</name><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-9087766.post-110062646753503816</id><published>2004-11-16T15:34:00.000-02:00</published><updated>2004-11-17T13:45:51.053-02:00</updated><title type='text'>Chart generation library: JFreeChart</title><content type='html'>&lt;a href="http://www.jfree.org/jfreechart/index.html"&gt;JFreeChart&lt;/a&gt; is a free Java class library for generating charts, including:&lt;br /&gt;&lt;ul&gt;   &lt;li&gt;Pie charts (2D and 3D);&lt;/li&gt;   &lt;li&gt;Bar charts (regular and stacked, with an optional 3D effect);&lt;/li&gt;   &lt;li&gt;Line and area charts;&lt;/li&gt;   &lt;li&gt;Scatter plots and bubble charts;&lt;/li&gt;   &lt;li&gt;Time series, high/low/open/close charts and candle stick charts;&lt;/li&gt;   &lt;li&gt;Combination charts;&lt;/li&gt;   &lt;li&gt;Pareto charts;&lt;/li&gt;   &lt;li&gt;Gantt charts;&lt;/li&gt;   &lt;li&gt;Wind plots, meter charts and symbol charts;&lt;/li&gt;   &lt;li&gt;Wafer map charts;&lt;/li&gt; &lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110062646753503816?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.jfree.org/jfreechart/index.html' title='Chart generation library: JFreeChart'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110062646753503816/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110062646753503816' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110062646753503816'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110062646753503816'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/11/chart-generation-library-jfreechart.html' title='Chart generation library: JFreeChart'/><author><name>Elifarley</name><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>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9087766.post-110062586586495010</id><published>2004-11-16T15:24:00.000-02:00</published><updated>2004-11-16T17:15:50.643-02:00</updated><title type='text'>Visual report builder: iReport</title><content type='html'>&lt;a href="http://ireport.sourceforge.net/"&gt;iReport&lt;/a&gt; is a powerful, intuitive and easy to use visual report builder/designer for JasperReports written in java. This tool allows users to visually edit complex reports with charts, images, subreports.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110062586586495010?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://ireport.sourceforge.net/' title='Visual report builder: iReport'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110062586586495010/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110062586586495010' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110062586586495010'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110062586586495010'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/11/visual-report-builder-ireport.html' title='Visual report builder: iReport'/><author><name>Elifarley</name><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-9087766.post-110062505371397351</id><published>2004-11-16T15:10:00.000-02:00</published><updated>2004-11-16T17:16:59.133-02:00</updated><title type='text'>Java reporting tool: JasperReports</title><content type='html'>&lt;a href="http://jasperreports.sourceforge.net/"&gt;JasperReports&lt;/a&gt; is a powerful open source Java reporting tool that has the ability to deliver rich content onto the screen, to the printer or into PDF, HTML, XLS, CSV and XML files.&lt;br /&gt;Its main purpose is to help creating page oriented, ready to print documents in a simple and flexible manner.&lt;br /&gt;&lt;br /&gt; 	&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110062505371397351?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://jasperreports.sourceforge.net/' title='Java reporting tool: JasperReports'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110062505371397351/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110062505371397351' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110062505371397351'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110062505371397351'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/11/java-reporting-tool-jasperreports.html' title='Java reporting tool: JasperReports'/><author><name>Elifarley</name><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-9087766.post-110061370124505541</id><published>2004-11-16T13:01:00.000-02:00</published><updated>2004-11-16T17:19:34.960-02:00</updated><title type='text'>Lightweight installer generator: IzPack</title><content type='html'>&lt;a href="http://www.izforge.com/izpack/"&gt;IzPack&lt;/a&gt; is an installers generator written in Java. It     produces lightweight installers that can be run on any operating system     where a Java virtual machine is available. Depending on the operating     system, it can be launched by a double-click or a simple &lt;em&gt;'java -jar     installer.jar'&lt;/em&gt; on a shell. The most common use is to distribute     applications for the Java platform, but you can also use it for other kinds     of projects.&lt;br /&gt;&lt;br /&gt;Features:&lt;br /&gt;&lt;div class="sectioncontent"&gt;          &lt;ul&gt;&lt;li&gt;XML-based installer descriptors&lt;/li&gt;&lt;li&gt;Uses the maximum Jar archive compression level&lt;/li&gt;&lt;li&gt;Jakarta Ant integration&lt;/li&gt;&lt;li&gt;Great flexibility and modularity, it is very easy to extend       IzPack&lt;/li&gt;&lt;li&gt;No native code is required, but you can extend IzPack with native       code&lt;/li&gt;&lt;li&gt;Shortcut creation system&lt;/li&gt;&lt;li&gt;Flexible and powerful user input panel&lt;/li&gt;&lt;li&gt;Automatic uninstaller creation&lt;/li&gt;&lt;li&gt;Easy localization with XML langpacks: 16 langpacks are provided by       default&lt;/li&gt;&lt;li&gt;Variable substitution system&lt;/li&gt;&lt;li&gt;OS-specific scripts interaction&lt;/li&gt;&lt;/ul&gt;   &lt;/div&gt; You can read more on the &lt;a href="http://www.izforge.com/izpack/"&gt;IzPack homepage&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110061370124505541?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.izforge.com/izpack/' title='Lightweight installer generator: IzPack'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110061370124505541/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110061370124505541' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110061370124505541'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110061370124505541'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/11/lightweight-installer-generator-izpack.html' title='Lightweight installer generator: IzPack'/><author><name>Elifarley</name><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-9087766.post-110003964214701029</id><published>2004-11-09T20:31:00.000-02:00</published><updated>2004-11-16T17:20:43.946-02:00</updated><title type='text'>Installer generator for Java applications: Lift Off</title><content type='html'>Features&lt;br /&gt;&lt;ul&gt;   &lt;li&gt;	Only Java 1.1 &amp;amp; AWT are required on the target platform.&lt;/li&gt; &lt;/ul&gt; &lt;ul&gt;   &lt;li&gt;	Swing application for creating distributions.&lt;/li&gt; &lt;/ul&gt; &lt;ul&gt;   &lt;li&gt; Runs with Linux and Solaris, Windows support will be added soon. Support for other platforms may be available in the future (Contributors?)&lt;/li&gt; &lt;/ul&gt; &lt;ul&gt;   &lt;li&gt; You can place your Software inside a self extracting Java class that can be extracted on any platform that can run Java applications, no system specific binaries anymore!&lt;/li&gt; &lt;/ul&gt; &lt;ul&gt;   &lt;li&gt;	The Software is open source (GPL), you can modify it fit your needs.&lt;/li&gt; &lt;/ul&gt; &lt;ul&gt;   &lt;li&gt;	Localization support (only German and English yet)-&lt;/li&gt; &lt;/ul&gt; &lt;ul&gt;   &lt;li&gt;	The installer can fill out template files with system dependend values.&lt;/li&gt; &lt;/ul&gt;You can read more on the &lt;a href="http://liftoff.sourceforge.net/"&gt;Lift-Off home page&lt;/a&gt;.&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9087766-110003964214701029?l=java-ecc.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://liftoff.sourceforge.net/' title='Installer generator for Java applications: Lift Off'/><link rel='replies' type='application/atom+xml' href='http://java-ecc.blogspot.com/feeds/110003964214701029/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9087766&amp;postID=110003964214701029' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110003964214701029'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9087766/posts/default/110003964214701029'/><link rel='alternate' type='text/html' href='http://java-ecc.blogspot.com/2004/11/installer-generator-for-java.html' title='Installer generator for Java applications: Lift Off'/><author><name>Elifarley</name><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>
