Jump to content
xisto Community
SoundStorm

Java Frameworks Discussions about Java frameworks

Recommended Posts

I haven't found a framework section so i decided i'd start one. This topic refers to java frameworks such as struts or spring or others. I'm gonna start off with a question. What is your favorite java framework, what do you use it for and why do you like it ?

Share this post


Link to post
Share on other sites

Tapestry, Sping are the only two i have used so far personally. There are lot of free open source frameworks which i have not yet tried so far. As far as my work is concerned i am using spring framework regularly and some of the other commercial frameworks which are very limited in distribution. I don't know if i like it any or not but I'm working on one and that's all about it.

Share this post


Link to post
Share on other sites

I've heard of Tapestry and i'm currently learning Spring. My favorite framework so far was Struts2 cause it was really easy to learn and fast to develop with. Can't wait to see what Spring has to offer ... although i can sense that this application framework is far more powerful than anything I've learned before. :)

Share this post


Link to post
Share on other sites

Well the projects that i have seen so far and the people who are using it mostly prefers "spring". But there are some projects with struts. Not sure how it is still going on. I know there are some software companies coming up with their own commercial licenses for the framework and those are closed source.If you know about enterprise like cognizant, they are using closed source frameworks on many of their projects.

Share this post


Link to post
Share on other sites

Hi!I haven't really used Java framework all that much, but I have used their .NET ports. I use the Log4Net framework for logging error messages in almost all of my applications. I've also tried Spring.NET for validation on .NET but I eventually ended up using the Microsoft Enterprise Library validation application blocks instead because there's a whole lot of XML editing involved in defining the XML rules and having the Enterprise Library configuration tool helps quite a bit.Most of the applications I build in Java are desktop application using either the Abstract Windowing Toolkit (AWT) or Swing, though I did build Java Server Pages (JSP) based web applications a while back.

Share this post


Link to post
Share on other sites

I have used Tapestry, Click and Struts.

 

No framework is my favourite. I have found that each framework has made some things simple and the rest overly complicated.

 

Click framework is a commercialized version of Tapestry, however I found that it is much easier to develop/debug web applications in Tapestry than in Click. I do not know why companies are fond of commercial web frameworks when there already are free/open source frameworks.

 

Tapestry is a much cleaner and straightforward approach to build web applications. It is a component based web application framework whereas Struts is an action based web application framework. However, some things are overly complicated in tapestry for e.g:

 

To redirect to a Page you use a simple tag, similar to anchor tag:

<a jwcid="@PageLink" page="Home">Home</a>

However, to download a file, you will have to create a seperate service. You will not use a simple anchor tag. You will have to create a Java Class to do this basic task.

 

I have also used GWT; I found that it is really an impressive technology allowing you to do client side javascript programming in Java. You write program in Java, which is then later converted to Javascript, there by giving you full access to Java tools like debugger. However it is best suited to projects that want to use ajax and are developed completely in GWT.

 

I would like to know experiences of others in using these frameworks and others.

Share this post


Link to post
Share on other sites

Hi,

In response to the previous comment, Click is not related to Tapestry in any way, and it certainly is not a commercial framework, although commercial software has been written with it. Click, like Tapestry, is free and open source under the Apache 2.0 License.

Kind regards

Bob

-reply by Bob Schellink

 

Share this post


Link to post
Share on other sites

Well i suppose you're right manish. No framework is perfect. Each have advantages and disadvantages. As I'm currently studying Spring I'm beginning to really appreciate the effort put into this framework. I really like the fact that it's so extensible that you can use it for desktop applications or web applications and you can integrate various other frameworks with it. But i haven't developed yet any project with Spring.

 

Instead I've used Struts2 on a couple of projects and i really liked the fact that it is also extensible but what i found surprising was that for a common task such as image uploading and viewing you had to do a lot of work ( come up with your own response type... mess with the interceptors) ... other than that... what i found really useful in Struts2 was the dependency injection mechanism.

 

And yeah... it's quite funny if you think about it... there's a lot of big companies... such as the one i work for (that's a global company) that make extensive use of freeware tools and frameworks but don't contribute themselves to expanding the open source world. I find that somehow unfair even though the economical reasons behind this are obvious.

 

Anyway... I'm looking forward to trying out new and interesting frameworks and i invite you guys to suggest them to the forum.

 

Regards,

Sebastian

Share this post


Link to post
Share on other sites

Well the projects that i have seen so far and the people who are using it mostly prefers "spring". But there are some projects with struts. Not sure how it is still going on. I know there are some software companies coming up with their own commercial licenses for the framework and those are closed source.If you know about enterprise like cognizant, they are using closed source frameworks on many of their projects.

You're right mahesh2k. That is indeed the trend in companies. They develop platforms and frameworks that make use of the free ones and make a nice profit out of it.

And as far as things go over here ...the market of Java developers requires Spring,Struts and Hibernate as nice to have skills.

Share this post


Link to post
Share on other sites

I've been developing apps using java for over 2 years. during these time, i've come across different java framework. previously, i had never have any interaction with java at all. Microsoft was my only development platform.It was a kind of surprise to realise the many different framework available for java, while in Microsoft, the only thing that you need to know is .NET framework.Ok, back to the topic, at the moment in time, i think no framework can competes with Spring. it has collected a huge community of developers and importantly has the financial backing of VMWare.I said spring is the champion doensn't mean that other framework is not as good as spring. Frameworks such as struts2 and Tapastry etc.. are very good and highly matured. The only thing different is the scope of the framework. While other framework besides spring specialize in solving a particular area of probem, Spring by its nature is to cover almost all aspect of application development in JAVA.The other area where Spring rightly deserved the popularity it has today is due to the fast pace to maturity.

Share this post


Link to post
Share on other sites

Have you guys heard about Jboss Seam framework?I've worked with that framework for 2 years and I think its very good to work with web development. It has a lot off interesting features like, dependency injection, management session beans and an extended EL for the JSF pages. And most of the configuration is done with java annotations reducing the XML files.I've also worked with struts and struts2 but I prefer Jboss seam.I've heard a lot of good recommendations about the srping framwework but i never tryied yet, i hope to find more time to study Spring.

Share this post


Link to post
Share on other sites

Hi!@chetdekThe use of the term Framework is not strict enough to clearly identify what one is speaking of. For example, one can refer to the Java framework, which includes all of the classes provided as a part of the Java Standard Edition (J?SE) or we could refer to the Abstract Windowing Toolkit (AWT) as a framework. AWT is included within Java, which makes the concept of a framework indistinguishable from a collection of frameworks. The Microsoft .NET 'framework' is simply a collection of frameworks such as the Windows Presentation Foundation, the Windows Communication Foundation, the Windows Workflow Foundation, the ASP.NET MVC framework, and many others.Although Microsoft has provided us with the .NET framework, there are open-source frameworks such as Log4Net, Spring.NET and others that are available to .NET developers. Log4Net is a pretty light weight logging framework for .NET that rivals Microsoft Enterprise Library logging framework (the MSEL, Microsoft Enterprise Library, is not a part of the .NET framework). For developing Windows Forms applications, we use the WinForm framework, which is part of the .NET Framework. Spring.NET provides many of the features of the Microsoft Enterprise Library such as data validation and inversion of control, and is an attempt at porting Spring for Java onto the .NET platform.Microsoft has been building in the functionality that 3rd party frameworks have been providing and as it is a commercial effort, they have been quite successful at replicating the efforts of the open-source movement and keeping up with open-source frameworks for the .NET platform. Language Integrated Query, Linq, along with the Entity Framework is a pretty good alternative that Microsoft has provided to match NHibernate. Language Integrated Query is simply a way for the programming language to be able to specify the data that is required and a provider hooks up the request with the actual database access code. The SQL statements are automatically generated by the Entity framework. If the application you are developing specifically targets the Microsoft SQL Server database, you could use Linq2Sql instead of the Microsoft Entity Framework. The Entity framework enables your application to achieve database independence in that you can connect to a variety of other databases. Linq itself, however, is not specific to the Entity framework or to Linq2Sql and can be extended to NHibernate too by adding in a provider.Generally, developments that become a part of the Microsoft .NET framework start off as separate frameworks. You might have heard of the ASP.NET MVC framework that has recently gained popularity among ASP.NET developers. The MVC framework started off as a separate library that ASP.NET developers had to add in to their projects and include with their deployments until recently that MVC has become a part of the ASP.NET framework, as is the case with ASP.NET-AJAX. However, the Microsoft Enterprise Library has always remained separate from the core .NET framework.An advantage of Microsoft's model of putting together all of its frameworks under the ".NET" badge is that installation of .NET ensures that all of the built-in libraries are present. However, if you do want to install your application on a machine that does not include the .NET framework, that would be one huge download as it is a bundle of a lot of different fraeworks, including those that you do not need. In addition, if a framework has been included with the .NET framework, it would not be possible for Microsoft to remove it from the framework because it would break backward compatibility. For example, the Linq2Sql framework included within the .NET framework will remain available although the entity framework has superseded it for all projects that have begun after the entity framework has been released.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

Terms of Use | Privacy Policy | Guidelines | We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.