View providers driven applications - write once, deploy anywhere

View providers driven applications(vpda) is java based application framework for building applications composed from server components - view providers. You can use framework for effective building large enterprise applications. It is all tier applications framework, you just provide your custom view providers, all common services, communication is provided to you. VPDA has no concrete client neither server platform. There is comumunication and abstraction layer between client and server. This means we can have more client platforms for same application. Now swing client and web client using wingS are provided. Server side can run as plain jvm with Spring or JEE application without any application code change. Just write once, deploy anywhere.

News

2008-04-28. New version 0.6 was released.

  • Added http communication for swing client using apache httpcomponents
  • Added webstart support for swing client platform

2008-04-09. New version 0.5.1 was released. Fixes IE wingS bug.

2008-04-03. New version 0.5 was released. These feature were added.

  • Full CRUD support
  • Run native on JEE server without Spring (tested on GlassFish)

Power of abstraction

Using VPDA we develop application regardless of user interface or server platform. Developer is concentrated only to application domain, not to infrastructure. Developer just creates new view provider and framework will handle provider presentation. Also business logic services could be wrapped by Spring Transaction or be EJB 3.0 session beans running on JEE 5.0 application server. Such abstraction forces developer to concentrate to application code and not to technology. Also for user each client platform has its advantages. Swing can be more integrated with user computer and be more user friendly, while web client can be used by other group of users , no deployemnet is neccesary.

Applications suitable to use vpda

VPDA is pure java framework. It is based on server representation of client ui. VPDA is suitable for large systems, which are uniform in their UI. Any big ERP,CRM applications are good candidates for using this framework. Also migrating some old mainframe solution to new UI is good example. VPDA is not suitable for common web based presentation applications.

Related frameworks

VPDA relates also to other similar frameworks. This includes

  1. ULC - Ultra light client

    Idea with canoo is very similar - mapping client ui to server objects, but vpda builds application from view providers components radher than from small ui components like ULC does. Also VPDA provides complete infrastructure and also several services(transactions,data modeling). Also ULC has only one client platform - swing, while VPDA server can view client using abstraction module and there could be other implementations of client, not only swing.Then one application can have 2 platform clients without application code change.

  2. Naked objects

    Naked objects use domain objects to generate all tiers of application. This is absolutely different strategy. I am not going to discuss pros and cons or compare. In vpda developer can write code for all tiers in java language and code can be very closed and coupled. In one class we can define presentation and controller. Other class defines domain entity and if needed also bussiness service. All of this is server code, it does not depend on target client platform. We think this scenario delegates responsibility to right tiers of application.

  3. There are also many web frameworks like JSF,wicket,echo,gwt...

    All this web frameworks are only web related frameworks while vpda is abstract client framework with additional services and radther complete infrastructure

Licensing

VPDA has dual licensing. First GPL license is for open source project. Any project which uses GPL can use this framework for building custom applications. If GPL is not convenient, then you can use commerce license. In this phase We are looking for business model of framework, so what now we need is to find some business model or at least hear some idea about its future. So if you want to use vpda, please contact us and be prepared to answer some vpda business model related questions.