Showing posts with label opensource. Show all posts
Showing posts with label opensource. Show all posts
Hibernate is a powerful object relational mapping tool written in Java. Hibernate allows you to develop persistent classes mirroring object oriented paradigm - including association, inheritance, polymorphism, composition, and collections. Hibernate has its own portable SQL based langugage (HQL) or can work with native SQL. Hibernate simplifies persistence programming tasks by providing a higher abstraction.

Hibernate is a suite of tools for ORM, including Hibernate core, Hibernate Tools, Hibernate search etc. Only core is required for basic ORM. Each component is available as a separate download.
Hibernate stores table to class mapping in an external XML file. Following is a sample,
<hibernate-mapping>
    <class name=”tasks.Task” table=”TASKS”>
        <id name=”id” column=”TASK_ID”>
            <generator class=”native”/>
        </id>
        <property name=”date” type=”timestamp” column=”TASK_DATE”/>
        <property name=”title”/>
    </class>
</hibernate-mapping>


POJO deployment is the one way of web service deployment in Axis2. Here we are dropping the .class file or .jar file into the POJO directory in the repository. If it is a web application Axis2 is considering WEB-INF as its repository. The main features of the Axis2 POJO are...
  • Support for primitive types (int, boolean, long, String, and so on)
  • Support for method excludes
  • Support for any kind of "Java Beans"
  • Support for Object Arrays
  • Binary support using byte[] and DataHandlers
  • Support of Axiom
  • Serialization support for List
  • Namespaces handling
  • Inheritances support
  • Support for Bean property excludes
  • Method overloading support using annotations
Technorati Tags: ,

Continuum, Cruise Control and Hudson are some of the famous continuous integration tools which people are using nowadays. Cruise Control is the pioneer one and people are using from a long period of time. Continuum is from the Maven team and very high integration with Maven 1 and 2. Hudson is the new one but it is more popular now.
In our department my PM asked me and to my friend, to do the Cruise Control + SVN +Maven based continuous build mechanism. During this process I had gone through some more R&D on the tools which are available for the continuous build process. In that process I found some of the comments about Hudson. Those were very interesting.. So I thought of comparing this with our Cruise control.
Here in this post I am trying to compare Hudson and Cruise Control. The basic TEN points or features listed below are taken from Hudson's official site and I am just trying to compare these all with the capabilities of cruise Control. I had tried to add my own experience with these. Correct me if there is any features that were wrongly entered or any new features that you know about these.
Versions and platform:
Hudson            : 1.213
Cruise Control : 2.7.1
Plat form         : Windows
images Hudson
banner Cruise Control
1 Open Source     1 Open Source
2 Easy installation: Just java -jar Hudson.war, or deploy it in a servlet container. No additional install, no database.
2.
It also gives us very easy installation. Just unzip the downloaded zip file. That's it. It is actually using an internal Jetty server. No Database, no install here also.
3 Easy configuration: Hudson can be configured entirely from its friendly web GUI with extensive on-the-fly error checks and inline help. There's no need to tweak XML manually anymore, although if you'd like to do so, you can do that, too.
3.
Big difference comes here. The GUI providing by Cruise control for configuration is not at all good. It just displays the config.xml file. :( Its no way near to Hudson for Configuration GUI part. If you want to configure Cruise Control then you must study about the structure of the Config.xml first.
4 Change set support: Hudson can generate a list of changes made into the build from CVS/Subversion. This is also done in a fairly efficient fashion, to reduce the load of the repository.
4.
Cruise control also show the list of files which are changes at this check-in process.
5 Permanent links: Hudson gives you clean readable URLs for most of its pages, including some permanent links link "latest build"/"latest successful build", so that they can be easily linked from elsewhere.
5.
Uhm... Cruise control is not giving this. It gives a link with some log code number attached with it. Its looking horrible and cant be easily likable.
6 RSS/E-mail/IM Integration: Monitor build results by RSS or e-mail to get real-time notifications on failures.
6.
It also gives RSS and email functionality. Don't know about IM support. If we need to change the Email structure then either we have to change XSL or CSS file which we are using  in the email config.
7 After-the-fact tagging: Builds can be tagged long after builds are completed
7.
N.A.
8 Detect new failing tests while build     8 Failing tests will show in the dashboard. But no separation between new and old.
9 Notify when first test in build fails     9 No such type of notification.
10 JUnit/TestNG test reporting: JUnit test reports can be tabulated, summarized, and displayed with history information, such as when it started breaking, etc. History trend is plotted into a graph.
10
It is showing all the unit test results but not as good as Hudson does. There is no detailed information like when it started breaking, History etc. and no graph for unit results too.
11 Distributed builds: Hudson can distribute build/test loads to multiple computers. This lets you get the most out of those idle workstations sitting beneath developers' desks.
11.
The build distribution is done through the maven install goal. Its
12 File fingerprinting: Hudson can keep track of which build produced which jars, and which build is using which version of jars, and so on. This works even for jars that are produced outside Hudson, and is ideal for projects to track dependency.
12.
No idea.
13 Plugin Support: Hudson can be extended via 3rd party plug-ins. You can write plug-ins to make Hudson support tools/processes that your team uses.
13.
Plug-ins are there in Cruise control also.
14 Dash board: Hudson has an attractive dashboard with Colorful as well as meaningful icons. We can separate this building projects into subgroups also. It will also shows building projects. Well designed Ajax pages.
14.
It gives an attractive Dash board. It displays all the necessary information which we need to know. We can directly build from there also. Viewing/ downloading the log file is also allowed from this Interface.
15 Local Copy of projects: Handled by Hudson itself. No need to do by the user.
15.
Maintaining a local copy with the exact SVN data makes us more uncomfortable. The user has to copy the Project into the local folder with SVN data.
16 Auto copy of SVN updates: No need to provide any other code to copy the project from SVN to the local compiling folder.
16.
Its not copying the data from the SVN directly. We need to write (In our case we wrote an ANT build file to download the latest copy of Project from SVN) something separate.
17 Running In background: If the server where we deployed the war is running then its okay for Hudson.
17.
If we want to run it without console then we need to make it a separate 'WINDOWS Service' using any third party tool.
18 We can deploy the war file in any of the server we wanted.
18.
Jetty server is using internally.
19 User authorization schemes. more configurable.
19.
User authentication is there but no schemes at all.
20 Very Active mailing list.
20.
From a long period people are using this. So it gives so many search results. But its mailing list is not that much active when compared with Hudson.

Alternative building tools available.

I got this list from ThoughtWorks. HERE we will get a good comparison of these all.
Conclusion:
In my opinion Hudson much more better than Cruise Control. The time we will take to start to use Cruise control will be high when we compared with Hudson. The GUI which makes all the Configurations very very easy. The Ajax support makes the configuration more "Error Free". Though Cruise control is using by a lot of people, when we looked into the features, mailing list, the fastness and support from Developers I think Hudson will be a good option.
Related links : Continuous Integration with Hudson: A Presentation and an Interview podcast


KnowledgeTree is open source document management software designed for business people to use and install. Seamlessly connect people, ideas, and processes to satisfy all your collaboration, compliance, and business process requirements. KnowledgeTree works with Microsoft® Office®, Microsoft® Windows® and Linux®.
Commercial customers include Sony Entertainment, Societe Generale Group, and Mazda Motor Europe.
Visit http://www.knowledgetree.com


PostgreSQL is a powerful, open source relational database system. It has more than 15 years of active development and a proven architecture that has earned it a strong reputation for reliability, data integrity, and correctness. It runs on all major operating systems and boasts sophisticated features such as Multi-Version Concurrency Control (MVCC), point in time recovery, tablespaces, asynchronous replication, nested transactions (savepoints), online/hot backups, a sophisticated query planner/optimizer, and write ahead logging for fault tolerance. It is highly scalable both in the sheer quantity of data it can manage and in the number of concurrent users it can accommodate. There are active PostgreSQL systems in production environments that manage in excess of 4 terabytes of data.
Do Visit http://www.postgresql.org
Sugar CRM is the world's leading provider of commercial open source customer relationship management (CRM) software. Founded as an open source project in 2004, SugarCRM applications have been downloaded over five million times and currently serve over 500,000 users in 75 languages. Over 4,000 customers have chosen SugarCRM's On-Site and Cloud Computing services over lock-in based, proprietary alternatives. In the last year, SugarCRM has been recognized for its customer success and product innovation by CRM Magazine, InfoWorld, Customer Interaction Solutions and Intelligent Enterprise.
Do Visit : http://www.sugarforge.org/

 Talend is the first provider of open source data integration software. After three years of intense research and development, and with solid financial backing from leading investment firms, Talend revolutionized the world of data integration when it released the first version of Talend Open Studio in 2006. Talend Open Studio is used primarily for migration and integration between operational systems, as well as for ETL (extract, transform, load) for business intelligence and data warehousing. Unlike proprietary, closed solutions, which can only be afforded by the largest organizations, Talend makes enterprise-class data integration solutions affordable to organizations of all sizes. To download Talend Open Studio free of charge, visit www.talend.com.

Openbravo is a fully functional integrated web-based open source enterprise management system (commonly known as ERP) that is much more at a cost that is far less: be the true owner of your ERP and only pay for the professional support that you really need. The solution is designed for small and mid-sized companies (SMEs) that are looking for an integrated way to manage their operations, optimize processes, increase customer satisfaction and ultimately increase profitability. Since 2001, Openbravo is used by many companies of varying size and across a wide variety of business sectors, from distributors to service and industrial companies
Do Visit : http://www.openbravo.com/
Alfresco is the leading open source alternative for enterprise content management. It is the first company to bring the power of open source to the enterprise content management market, enabling unprecedented scale, ease-of-use and a much lower total cost of ownership than proprietary systems. Alfresco aims to provide an open source offering that surpasses commercial offerings in terms of features, functionality and benefits. Alfresco is founded by a team of content management veterans that includes the co-founder of Documentum, John Newton former COO of Business Objects, John Powell and Dr. Ian Howells former Worldwide VP Marketing SeeBeyond.
Do Visit : http://www.alfrescosoftware.com/

The JFreeChart project was founded eight years ago, in February 2000, by David Gilbert. Today, JFreeChart is used by approximately 40,000 to 50,000 developers (see a list of some of the products and projects that use JFreeChart).
JFreeChart is a free 100% Java chart library that makes it easy for developers to display professional quality charts in their applications. JFreeChart's extensive feature set includes:
  • a consistent and well-documented API, supporting a wide range of chart types;
  • a flexible design that is easy to extend, and targets both server-side and client-side applications;
  • support for many output types, including Swing components, image files (including PNG and JPEG), and vector graphics file formats (including PDF, EPS and SVG);
  • JFreeChart is "open source" or, more specifically, free software. It is distributed under the terms of the GNU Lesser General Public Licence (LGPL), which permits use in proprietary applications.
Download from HERE
API Docs find HERE
Samples find HERE
+