1 Reply Latest reply on Jul 27, 2010 4:02 AM by Antoine Herzog

    Building Webapps using Portal vs plain Web Server

    Thierry Ciot Newbie

      I’m just starting to evaluate the tradeoffs of building a Webapp using a  Portal like Gatein versus a plain Web Server (Servlet and/or JSP) and  I’m soliciting any feedback from the most obvious to the most technical.  The naïve question is “Why wouldn’t every webapp be built on top of a  portal?”. Obviously not everybody does this so I’m trying to understand  the pitfalls, limitations and performance impacts.

       

      With the  portal approach, I would decompose and build the app into several  portlets. On the plus side, elements of my app would now be reusable in  other portals and the app would be customizable by users. On the minus  side, the app elements are now constrained by the Portlet programming  model and I need to run my app in a portal server which may have greater  resource consumption (CPU/Memory…) than a regular Web Server.

       

      Any  shared experience or comments welcome.

       

      Thanks in advance.  Thierry.

        • 1. Re: Building Webapps using Portal vs plain Web Server
          Antoine Herzog Master

          quite a huge architecture question, not easy to answer with a forum answer.

           

          mainly : go to the portal main project page and look the global features of a portal, and what it is used for. what it brings, and check if you need that. and then, think of what amount of work and learning it will requier.

           

          very mainly : a portal is for integration of several application (business applications) and contents, in a single point of access for the user.

          ie : a portal integrates several webapps (among other kind of "business applications", or gadget in a dashboard for knowning the meteo etc...)

           

          you may consider to use a portal as a base layer for building and providing your application, even if you have only one application (for the time being).

          this is worh when your application is quite large, with several "parts" in it. As an example, you can build the several parts in several portlet.

          the portal will allow to have nice views with 2 or more parts in the same screen.

          be aware about that, that the part shall preferably be independant... or use some custom communication between them.

          this is a question of architecture and organisation (UI, way of use of the application) of your application.

           

          yes, programming in a portal is more work (and learning) than a simple servlet/jsp.

           

          one main question : do you need only a servlet with some jsp, running on tomcat ? or do you need a application server such as jboss AS ?

          you can run the portal container on Tomcat only... but I would say the question is more simple if you can answer :

          - simple serlvet on tomcat ... or portal + several webapps/portlets running on jboss, with ejb3, datasources management, etc... ?

           

          for the power consumption, the way to see it :

          - you need the features of the portal, the JBoss AS etc... and then the "greater" power consumption is not a issue by itself (most of the case).

          - you don't need those features,... then the simplest and lightest is the best : only some servlet on tomcat.

           

          well, globally, this will depends of the application you need to make : large ? small ? small with a lot of requests ? with a lot of things provided by a portal, such as user management, portlets of forum, wiki quite easy to integrate to your application, etc ?

          check against that what the portal is providing for these application requierments.

           

          and the time you can spend to do it : to build it inside a portal and learn the portal things.


          Antoine
          JBoss Portal and GateIn (JSR-286), JSF, Richfaces, J2EE, Drools, BRMS.
          http://www.sysemo.com/Sysemo-expertise-portails-jboss-portal.php