Archive for the ‘Java’ Category

Integrating Prototype Ajax engine with Struts Application

Tuesday, December 12th, 2006

You can achieve Ajax effect in any struts application (Struts1.x ) with prototype in a very simple way.

In normal Struts application we generally use DispatchAction to make our web app and life easy. In general struts controller gets a request and delegates it to corresponding action/dispatchAction subclasses. Depending on the method name parameter our target method gets invoked and after processing of some business/domain objects finally forwards a mapping(configured in struts-config.xml) towards the view tier and a JSP gets rendered in our thin client as a response.

Now when we think of Ajax in this kind of application model, we can consider two types of implementation of Ajax: Partial Page Rendering and Partial Response update.

Problem: A form based application has too many fields to be filled in by the user but majority of the fields or group of fields are optional and it takes time to render those fields and thus the entire page. (more…)

Java way of doing Ruby on Rails

Monday, December 11th, 2006

New kid on the J2EE blocks, RomaFramework, no not another new framework for confusing you by adding your framework bookmarks.

Inspired by Ruby on Rails a new java based framework for Ajaxified Web based application development framework that’s can turn your heads with some cool features:

  • Roma it’’s totally based on POJO (Plain Old Java Objects)
  • True Object Oriented vision in all aspects: from the model to the view and to the repository/database
  • Encourage the use of the Domain Driven Model (DDD) approach: let’’s think to the Domain: the other things are secondary Aspects
  • It works with Conventions ala Ruby On Rails: much less code to write and maintain and more uniformity in projects
  • Applications are fully portable across frameworks since the application is developed using POJOs. For example you can switch between JDO and EJB3 PersistenceAspect without changing code unless you use directly the aspect implementation (see below)
  • Allow to makes things dirty: you can use directly the target framework taking the full advantage of the implementation power
  • You can use the already developed Modules (CRUD, User&Profiles, etc.) and extend their if you need
  • The skill requested to build application can be lower than required for modern Java Web Applications: minor cost of development
  • Roma is based on Spring Framework as IoC container, but you can use another one if you want.
  • The supported frameworks and tools are continuously update on Modules page.

You can have the pleasure of Ajax web front-end with the help of Echo framework and if you are too much conservative and do not want to break out your tie with JSP you can do that too with this framework.

It’s worth checking this framework before going for any other RAD framework in J2EE space.

Ria and Java Enterprise Application Part-3

Tuesday, November 21st, 2006

Enterprise App and Ajax

When implementing Ajax based RUI in enterprise app there are very few options to choose from;

  • Developing RIA from scratch
  • Plumping various RUI widgets available from open source community
  • FLEX (Flash Plug-in dependent) need FA-Bridge
  • Open Laszlo Flash based RICH UI (XUL based like Flex)

Developing from scratch makes no sense at all. Because time required developing various widgets it takes too much of time to deliver an enterprise ready version of it. Then an entire framework of Ajax engine makes no sense when too many well-tested versions are available (Dojo, prototype, DWR etc).

(more…)

Ria and Java Enterprise Application Part-2

Sunday, November 19th, 2006

Problem still remains

For enterprise builders Ajax solved many problem of responsiveness of UI but problem of overall development methodologies using Ajax still remains with lot of contradictions and conflicts among the developers. When using Ajax in an Enterprise Application main problem faced by the developers are where to start and how to start. The major problem faced by the enterprise developers and architect in implementing Ajax based UI solutions in existing application.

No software solution is beyond the scope of SDLC actually, but in general found missing when implementing Ajax based solutions in an enterprise app. Ajax by nature has some tremendous side effects if practiced unethically (from SDLC perspective) and by overuse.
(more…)

RIA and Java Enterprise App Part - 1

Tuesday, November 14th, 2006
The Evolution of RIA

Web application has its own advantages over the age old Client Server Applications, and thus large enterprises adopted it as their prime choice whenever they tend to develop a new applications. And not only new application but stared to migrate their existing client server based enterprise application to web based application. HTTP the base layer has not been changed a lot to cope up with the enterprise user’s expectations.

Gradually form based applications started facing problems in meeting the user’s expectation and responsiveness of the applications started coming up as major issues. Usability of an application came up strongly and XML-RPC became popular in large enterprise applications and been there for long time to meet the user expectations to some extends.

Macromedia FLASH and the new technology called FLASH-Remoting, opened up new possibilities of Rich User Interface in thin clients. Enterprise App builders started thinking of various possibilities of using Rich User Interfaces in their Enterprise App. And java space tried to play their age old SWING card in various ways but unfortunately SWING was unable to gain the momentum. But developer community started thinking of Rich UI using SVG, SWING etc. but in a different approach, because till then enterprise builders have realized that MVC actually unable to separate the VIEW layer as they expected. Thus XUL has arrived in the scene. Still some declarative swing application project (XUL based) are still live in SF.

But thin client limitation was still a hitch for UI. Google came up with age old technique of MSDN on demand tree menu loading in a new package (Google Suggestion) and developer community acted promptly and AJAX was suddenly became the most HYPED buzzword in the developer community. But Macromedia has come up with XUL based (MXML) RIA development framework FLEX. Beta was a huge hit among the designer community but unable to attract the developer community because of the lack of support of PHP the most popular scripting language of WEB development. They come up with FLEX 1.5 with limited support of SOA which some how managed get the attention of the developer community. But designer community was thrilled because of the introduction of eclipse based IDE for designing FLASH web sites in hours. Laszlo open sourced their Laszlo systems(Flex counterpart) and RIA became hit. Yahoo joined the RIA party and developer and designer community join the party. CSS gained the momentum as well and join hands with the developers because of AJAX. Standard based web development became a popular practice and gave platform to shout for the designers and to establish a new term of WEB-Architect which is becoming poplar day by day.

As RIA became popular and lot of new Ajax oriented toolkit has came up, like dojo, DWR, Sajax Django etc. Lot of tag-libraries for java space has also come up like ajaxanywhre, ajaxtags etc.

In my next post I will try to convey the problems of RIA and Ajax implementations and some resources.

Atlassian Confluence Web Theme development

Saturday, April 22nd, 2006

Atlassian Confluence an Enterprise Wiki is not only a collaboration platform for easy documentation or manage/share your organizational knowledge, you can use it as a web-site for your org.

Confluence also provides you a development platform for your web development needs.You can actually build web sites with the help of confluence with its development features like plug-ins (Servlets, theme, XML-RPC etc.).

If you explore this development platform of confluence you will be amazed by its power and flexibility. But you should not expect the out-of the box solution for your web needs with professional looking user interface.

Default web themes which come along with the Confluence distribution will not suit you for an easy customization as an end user. But if you are a developer and looking for an easy development framework for rapid development I think Confluence could be a right choice with bit higher price tag. But it worth convincing your client in favor of using confluence because of its integrated change management system, extensibility and scalability.

You can implement virtually any kind of XHTML sites you can think off by just developing a simple web theme and velocity macros. And by doing this you are done with the features like CMS, Message Board, Search Engine Friendly URLs, Track Back Systems, Administration panel, RSS, Site Search etc.

I have developed a web theme for my company which you can visit and feel the power of it, but obviously after visiting the core confluence to make your judgment an unbiased one.