Wednesday, March 31, 2010

Scaling Java EE Applications

In this article, Wang Yu takes real world cases as examples to explain ways on how to scale Java applications based on his experiences on the laboratory projects, and at the same time, bring together practice, science, algorithms, frameworks, and experience on failed projects, to help readers on building high scalable Java applications.

Tuesday, March 30, 2010

BI Server & MS Active Directory in 10 minutes

During Pentaho presentation a lot of people ask me "how to  connect Pentaho to MS Active Directory for user authentication/authorization".
So searching on the web I found this very helpfull Sergio Ramazzina post

Monday, March 29, 2010

Is there an alternative to PDF Creator in ubuntu?

The answer is yes.
Just install the package cups-pdf and configure the new virtual printer.
sudo aptitude install cups-pdf
Go to System Menu > Printers
  1. Choose New Printer;
  2. In the dialog box will appear virtual Generic CUPS-PDF Printer, select it;
  3. Continue forward and give a name to the the new printer  (Print-PDF will be fine);
  4. Print test page .
All the printed pdf will be saved in the folder named PDF in your home folder.

Wednesday, March 24, 2010

OpenERP Technical Memento v0.6.3

OpenERP Technical Memento v0.6.3 released
[ v0.6.3 - 2010/03/22 ]
* Added mention of for v5.2
* Corrected OSV generic accessor example
* Improved ORM usage example: indentation, osv name
  and use of context
* Corrected '--relaxng' argument in tip about grammar
* Corrected tree/list example to include state field
  for colors
* Added default value for day_length in calendar view
* Minor typos and formatting

Monday, March 22, 2010

Weka 3: Data Mining Software in Java

Weka is a collection of machine learning algorithms for data mining tasks. The algorithms can either be applied directly to a dataset or called from your own Java code. Weka contains tools for data pre-processing, classification, regression, clustering, association rules, and visualization. It is also well-suited for developing new machine learning schemes.

Friday, March 19, 2010

Pentaho CDA - Community Data Access

have a look at Pentaho CDA an idea from Pedro Alves. The project is available here on Google code. He gave announcement about this two months ago in his blog and  it seems interesting.

Have a nice week end

Wednesday, March 17, 2010

Secure MySQL Database Design

Currently I am working on a project that used MySql. The database needs to be secured by searching the net I found this article written by Kristy Westphal dating from 2003 but still current.


Tuesday, March 16, 2010

jAPS 2.0 version 2.0.10 Released

jAPS 2.0 version 2.0.10 has been released on Sourceforge, where are available the following packages:
  • jAPS2.0-2.0.10-src
  • jAPS2-0-2.0.10-PortalExample-Project
  • jAPS2-0-2.0.10-PortalExample-Standalone
  • jAPS Official Plugin: as usual, all those plugins that were modified to work with the new release of jAPS are released as well; the remaning are intended to be fully compatible
Among the important innovations of jAPS 2.0.10 version there is the new "entity interface" which allows the configuration of the entity types, the CMS content types and the modification of the entity attributes.
jAPS version 2.0.10 also includes:
  • MySQL scripts
  • Search by page code in Page Management
  • Update of moo-jAPS library
  • Two new fields in CMS contents: the version and the username
  • Translation of Javadoc notes in the source code
  • Update of contents preview
  • Links to a page with the current stable version number in the back office
More informations are available in the ChangeLog file.

JavaPassion MySql Course started

The MySQL® database is "The world's most popular open-source database" and for good reasons.  It provides fast performance, high reliability and ease of use. MySQL runs on more than 20 platforms including Linux, Windows, Mac OS, Solaris, HP-UX, IBM AIX, giving you the kind of flexibility that puts you in control. 

So if you want to know more about MySQL I suggest you to have a look at the  Sang Shin course,

Monday, March 15, 2010

Apache Pivot

The Apache Pivot platform for building rich Internet applications (RIA) in Java has become a top-level project.

Thursday, March 11, 2010

Code Bubbles

Rethinking the User Interface Paradigm of Integrated Development Environments.
8 minutes free? Enjoy this presentation

Wednesday, March 10, 2010

Db and Pentaho video tutorials

Today I present you a very useful site for all those who want to start using MySQL and Pentaho


Monday, March 8, 2010

Emailing Reports from the Pentaho User Console.

Prashant Raju present a quick tutorial on how to use a new feature of 3.5.2 which allows end users to email reports directly from the Pentaho User Console (PUC).

Sunday, March 7, 2010

JasForge : the agility in the software development revealed !

Today I want to present a French product JasForge.
  • What is Jasforge?
Jasforge is a JASMINE CONSEIL initiative and like any forge solution Jasforge is a management system of collaborative development of software.
It allows sharing the source code of the projects, tracking bugs, storing and sharing documents, discussions and communications in a common area.
Moreover, Jasforge is a framework of collaborative development which can be installed and used in various contexts.
 Jasforge originality come from the fact that the project is based on standard Open Source tools which collaborate together to form a unified solution which follow the development practice of a Continuous Integration process.
Jasforge solution will help to organize software project processes, improve schedule management, increase software delivery quality and facilitate collaboration between project teams.
In order to carry out these objectives, Jasforge aims
     -   To integrate several tools of the open source world to carry out all the considered features.
     -   To implement a module that manages user’s profile in all the system.
     -   To Develop a GUI for administration and users that has to be friendly and ergonomic.
To summarize Jasforge must provide a common access point and unify all the tools necessary for the establishment of a platform for collaborative work using the techniques of continues integration.

  • What distinguish Jasforge?
Jasforge uses new concepts which made it very different compared to all existing forges.
First used concept:
Continuous Integration
Jasforge follows the development practice of a Continuous Integration process which will increasev the quality of the delivery by improving the use of software development best practices.
Second used concept: Plug-in based architecture 
The power of Jasforge is that it defines a Jasforge plug-in for each integrated tool. This will give it the capability to integrate easily new tools and versions and give the user the ability to define a customized Jasforge with his preferred set of tools. (The Jasforge architecture will be explained later).
Other Jasforge particularities
Jasforge is software that can be installed in any local or extended network or even in one single machine. Its installation will automatically setup a forge and by this way we avoid configuration time.
Other advantage is that Jasforge offer a friendly environment to interact with tools. That means that we can be a non-expert user and use the Jasforge solution.
Jasforge platform will offer a large range of tools and services needed daily by software development teams to supply high quality software.
The figure bellow illustrates features integrated in each module.

The particularity of Jasforge is it uses a continuous integration process. This assures the best practices of development and quality guaranty.
Hudson communicates with SVN to check a change in the project, if there any change, it launches a build, and we can also force a build manually.

Note That: the build can be an ANT build or a maven build. For Jasforge we use Maven build.
Hudson is a war file so it needs to deploy it in a server and to make a module to synchronize between Hudson and Jasforge.

Hudson contain different controller for each functionality like build or authenticate and we can call these controller from a URL. So we implement a process based on a HTTP communication and can call a function from Hudson and pass the different parameter in the URL.
For the authentication, Hudson use HTTP BASIC authentication to specify the user name and the password and can use the LDAP authentication because both Hudson and security Realms use the servlet J_Security_Check where we define the J_username and J_password.

If you need further information, contact:

  • Karim DJAAFAR  (kdjaafar[ at ] the chief leader of this open source projet, which can be pleased to respond to your questions ! 
  • me (Rinaldo Bonazzo rbonazzo[ at ]

Thursday, March 4, 2010

Maatkit Power tools for open-source databases

Maatkit, a set of command-line tool f not only for MySql, released under the GPL, written in Perl
I will suggest it to all DBA.
List of commands:

  • mk-archiver Archive rows from a MySQL table into another table or a file.
  • mk-checksum-filter Filter checksums from mk-table-checksum.
  • mk-deadlock-logger Extract and log MySQL deadlock information.
  • mk-duplicate-key-checker Find duplicate indexes and foreign keys on MySQL tables.
  • mk-error-log Find new and different MySQL error log entries.
  • mk-fifo-split Split files and pipe lines to a fifo without really splitting.
  • mk-find Find MySQL tables and execute actions, like GNU find.
  • mk-heartbeat Monitor MySQL replication delay.
  • mk-kill Kill MySQL queries that match certain criteria.
  • mk-loadavg Watch MySQL load and take action when it gets too high.
  • mk-log-player Split and play MySQL slow logs.
  • mk-parallel-dump Dump MySQL tables in parallel.
  • mk-parallel-restore Load files into MySQL in parallel.
  • mk-profile-compact Compact the output from mk-query-profiler.
  • mk-query-digest Parses logs and more. Analyze, transform, filter, review and report on queries.
  • mk-query-profiler Execute SQL statements and print statistics, or measure activity caused by other processes.
  • mk-show-grants Canonicalize and print MySQL grants so you can effectively replicate, compare and version-control them.
  • mk-slave-delay Make a MySQL slave server lag behind its master.
  • mk-slave-find Find and print replication hierarchy tree of MySQL slaves.
  • mk-slave-move Move a MySQL slave around in the replication hierarchy.
  • mk-slave-prefetch Pipeline relay logs on a MySQL slave to pre-warm caches.
  • mk-slave-restart Watch and restart MySQL replication after errors.
  • mk-table-checksum Perform an online replication consistency check, or checksum MySQL tables efficiently on one or many servers.
  • mk-table-sync Synchronize MySQL tables efficiently.
  • mk-upgrade Execute queries on multiple servers and check for differences.
  • mk-visual-explain Format EXPLAIN output as a tree.
References: Maatic web site

Wednesday, March 3, 2010

MySQL Sandbox

MySQL Sandbox is a tool that installs one or more MySQL servers within seconds, easily, securely, and with full control. Once installed, the sandbox is easily used and maintained, without using complex options.
Replicated and multiple sandboxes can be used individually or all at once

Have a look at this tool,created and initially developed by Giuseppe Maxia