What Is a Portal ?
In order to understand what a portlet is, it is very necessary to understand what a portal is. According to the Portlet Specification, "a portal is a web application that commonly provides personalization, single sign on, content aggregation from different sources, and hosts the presentation layer of information systems. Aggregation is the act of integrating content from different sources within a web page."
Portal functionality can be divided into three main parts:
Portlet container: A portlet container is very similar to a servlet container, in that every portlet is deployed inside a portlet container that controls the life cycle of the portlet and provides it with necessary resources and information about its environment. A portlet container is responsible for initializing and destroying portlets and also for passing user requests to it and collecting responses.
Content aggregator: As defined in the Portlet Specification, one of the main jobs of a portal is to aggregate content generated by various portlet applications. We will talk more about this in the "How a Portal Page is Created" section.
Common services: One of the main strengths of a portal server is the set of common services that it provides. Services are not part of the portlet specification, but commercial portal implementations provide a rich set of common services to distinguish themselves from their competitors. A few common services that you can hope to find in most implementations are:
Single sign on: Allows you to get access to all other applications once you log into the portal server, meaning you don't have to log into every application separately. For example, once I log in to my intranet site, I should get access to my mail application, IM messaging application, and other intranet applications, without having to log into each of these applications separately.
A portal server will provide you with a secured credentials store. What you do is to go to the mail application and specify your user name and password once. This information will be stored in the credentials store in encrypted form. From the next time onwards, when you log into your intranet site, the portal server will read your credentials from the store and log into your mail server on your behalf. The same goes for other applications.
Personalization: The basic implementation of personalization service allows a user to customize her page in two ways. First, the user can decide what colors she wants for title bars and what icons she wants for controls. Second, the user can decide which portlets she wants on her page. For example, if I'm a big sports fan, I will probably replace the stock and news update portlets with a portlet that lets me track my favorite team.
There are also a few advanced commercial implementations of personalization services that allow you to decide which applications should be displayed to user based on criteria such as his income or interests. In this case, you can create some business rules like "Show the premium products portlet to any user with X amount of income" and "Show the discount deals portlet to users with Y amount of income."
There are a few more common services such as machine translation, in which case the portal server will take content generated by portlet in one language and machine translate it into a language requested by user. Most of the commercial portal servers provide access via handheld devices and are capable of generating different content for different browsers.
What Are Portlets ?
Similar to servlets, portlets are web components that are deployed inside of a container and generate dynamic content. On the technical side, a portlet is a class that implements the javax.portlet.Portlet interface and is packaged and deployed as a .war file inside of a portlet container.
Portlets are similar to servlets, in that :
- Portlets are managed by a specialized container.
- Portlets generate dynamic content.
- A portlet's life cycle is managed by the container.
- Portlets interact with web client via a request/response paradigm.
Portlets are different from servlets, in that :
Portlets only generate markup fragments, not complete documents.
Portlets are not directly URL addressable. You cant send somebody URL of a portlet. You can send him the URL of the page containing a portlet. Portlets cannot generate arbitrary content, since the content generated by a portlet is going to be part of portal page. If a portal server is asking for html/text, then all portlets should generate text/html content. On the other hand, if the portal server is asking for WML, then each portlet should generate WML content.
- Portlet Additional Functionality :
Portlets do provide some additional functionality.
Persistent storage for preferences: Portlets provide a PortletPreferences object for storing user preferences. These preferences are stored in a persistent data store, so they will be available across server restarts. As a developer, you don't have to worry about the actual implementation of how it is stored.
Request processing: Portlets provide much more refined request handling. A portlet may get a request when user takes some action on it (a state called action phase), or because the user took action on some other portlet and the page needs to be refreshed. A portal server provides different callback methods for handling both situations.
Portlet modes: Portlets use a concept of mode to indicate what user is doing. When using a mail application, you may be using it for reading, composing, or checking mail messages--this is the expected functionality of a mail application. Portlets normally provide this in VIEW mode. But there are other activities, like specifying a refresh time or (re-)setting the username and password. These activities allow the user to configure the behavior of the application, so they come under EDIT mode. Help functionality of the mail application comes under HELP mode.
If you think about it, you will find none of these represents new functionality. Instead, most of these are common business requirements. The only thing the portlet specification is doing is providing you one layer of abstraction, so that it will be useful for all stake holders end users, developers and administrators.
As a developer, I put all my business logic related to VIEW mode in a method called doView(), and I put business logic related to the configuration of my application in a doEdit() method, with help-related logic in a doHelp() method.
This makes it simple for an administrator to control access in the portlet application, because all he has to do is change access rights of the portlet to dictate what things a user is allowed to do. For example, a user of a mail application is supposed to specify his username and password in EDIT mode, so it makes sense for him to have access to EDIT mode.
But consider the case where I am the administrator of an intranet site and my company bought a third-party portlet application that displays news updates. This application allows a user to specify the URL from where it can retrieve updates. I want to use this application for displaying internal company news to users. Another requirement is that I don't want users to use this application for tracking any other news source. So as the administrator, I can specify the URL of an internal news update site for all users, and take out their edit privileges by changing the deployment descriptor of this portlet application.
Using portlets makes my website much more appealing to the end user because she will get a similar UI for all her portlet applications. If she wants to read help information about any of the applications, she can click the help button. She will also know that clicking on an edit button will take her to a configure screen for that application. Standardizing the user interface will make your portlet application more appealing.
Window state: The window state determines how much space should be given to content generated by a portlet on a portal page. If you click on the maximize button, the portlet will take up the entire screen and it will become the only portlet that will be available to the user. In minimized state, the portlet will be displayed as only a title bar. As a developer, you should customize your content based on the space available to you.
User information: Commonly, portlets provide content personalized to the user making the request. To do this effectively, they may require access to user attributes such as name, email, phone, etc. The Portlet API provides the concept of user attributes for this. A developer can access these attributes in a standard way, and it is the responsibility of the administrator to map these attributes to an actual user information repository (usually an LDAP server).
We will talk more about some of these features--request processing, user information, and portlet modes--in the second part of this series.
- Java Portlet Specification :
Java Portlet Specification
The Java Portlet Specification defines a contract between the portlet container and portlets and provides a convenient programming model for Java portlet developers.
The Java Portlet Specification V1.0 was developed under the Java Community Process as Java Specification Request JSR 168.
The Java Portlet Specification V1.0 introduces the basic portlet programming model with:
two phases of action processing and rendering in order to support the Model-View-Controller pattern. portlet modes, enabling the portal to advise the portlet what task it should perform and what content it should generate window states, indicating the amount of portal page space that will be assigned to the content generated by the portlet portlet data model, allowing the portlet to store view information in the render parameters, session related information in the portlet session and per user persistent data in the portlet preferences a packaging format in order to group different portlets and other Java EE artifacts needed by these portlets into one portlet application which can be deployed on the portal server.
Portal development is a way to integrate the different web-based applications for supporting deliveries of information and services.
JSR-286 is the Java Portlet specification v2.0 as developed under the JCP and created in alignment with the updated version 2.0 of WSRP. It was developed to improve on the short-comings on version 1.0 of the specification, JSR-168. Some of its major features include:
- Inter-Portlet Communication through events and public render parameters
- Serving dynamically generated resources directly through portlets
- Serving AJAX or JSON data directly through portlets
- Introduction of portlet filters and listeners
- Intranet portal:
An intranet portal is the gateway that unifies access to all enterprise information and applications on an intranet. It is a tool that helps a company manage its data, applications, and information more easily, and through personalized views. Some portal solutions today are able to integrate legacy applications, other portals objects, and handle thousands of user requests. In a corporate enterprise environment, it is also known as an enterprise portal.
Corporate intranets began gaining popularity during the 1990s. Intranets quickly grew more complex as the result the concept of intranet portal was born. Today, intranet portals provide value-added capabilities such as managing workflows, increasing collaboration between work groups, and allowing content creators to self-publish their information.
One typical example of an intranet portal is Microsoft Sharepoint, which is used by 46% of organizations. It provides a lot of features necessary for collaboration, integration and customization.
- Integration - Ability to integrate with your current tools or the possibility of adding new tools. You have your outlook calendar and email integrated within intranet.
- Security - Enable user or group based security to secure documents and sites throughout the intranet portal.
- Customization - Software that is flexible to allow for organization. Web Parts can be used to create custom modules which can make interaction easier with the site. Ability for users to customize tools and resources they use most often.
- Collaboration - People are now able to collaborate their work with each other. Example would be multiple people working on one document.
- Communication Channels - Allows corporations to promote corporate culture and present information in a more interactive way than before.
- Automation - Things like workflows and templates can automate specific document creation. Alerts can be created to help learn of changes and new additions to the intranet.
- Applications - Links to applications for associates to perform duties.
- User Friendly - Application must be easy to use and understand due to a wide range of technical abilities.
- Remote Access - Ability for users to access content away from the office.
- Document Repository - Ability to store and retrieve document information while maintaining regular backups to prevent data loss.
- Blog - Used as a method to provide more timely information to employees, customers, and business partners.
- People Search - Search enterprise wide for employee information such as contact information, specialty areas, group membership, personal interest, etc.
- Enterprise Search - search enterprise content using enterprise search
- Targeted Content - Business portal administrators can target content by business group area, e.g., HR, Marketing, Legal, Corporate Executives, etc.
Intranet portal helps employees make better and more informed decisions, which result from increased knowledge. It also helps reduce costs, saves time, increases collaboration, increases productivity and effectiveness.
Intranet portal can help employees find information more easily and perform their jobs better, though few portal designs are optimal just out-of-the-box. In fact, especially in smaller companies, designers can realize some features found in off-the-shelf portal software through simpler (do-it-yourself) means. Most intranets have become completely unwieldy and present a highly fragmented and confusing user experience, with no consistency and little navigational support. Portals aim to correct this problem by presenting a single gateway to all corporate information and services. One benefit of creating this consistent look and feel is users need less time to learn how to use the environment. They also more easily recognize where they are in the portal and where they can go - no small feat when navigating a large information space. By integrating services and presenting personalized snippets on the initial screen, intranet portals also reduce the need for users to browse far and wide to obtain needed information, thus making it easier for them to perform their jobs.
Intranet portal is a Web-based tool that allows users to create a customized site that dynamically pulls in Internet activities and desired content into a single page. By providing a contextual framework for information, portals can bring S&T (Science and Technology) and organizational "knowledge" to the desktop.
Intranet Portals can be a large business cost. The maintenance and management can be time consuming and expensive. Not only is it a cost to keep the portal running but a cost when the system goes offline. Most intranets are established to put all an organization's resources into one place and having that offline can force operations to be put on hold.
Security issues can become an ongoing problem. Unauthorized access is a concern and can have users gain access to sensitive information. Denial of access can cause issues for users needing access for their work.
Having everything in one place is only good if it's organized. Information overload can make finding information very difficult - lowering productivity.
Tools & Resources - Area for employees to link to or download necessary applications to perform work functions. Information also provided to find internal and external resources.
Associate Services :
- Business Operations - To give users access to important business policies and manuals.
- Company Calendar - To give user access to important company event dates and times.
- Access Point for Employees - Location for employees default main company webpage to obtain all information regarding the company.
- Wiki - can be used in the business environment for knowledge management
- Workflow Management - Establish work flows for common business tasks such as submitting expense reports, submitting corporate HR paperwork and document approval processes.
- Bulletin Board - Manage corporate announcements.
- Task Management - Create and update shared task lists throughout the corporation.
- Web Portal :
A web portal is a website that brings information together from diverse sources in a uniform way. Usually, each information source gets its dedicated area on the page for displaying information (a portlet); often, the user can configure which ones to display.
Apart from the standard search engines feature, web portals offer other services such as e-mail, news, stock prices, information, databases and entertainment. Portals provide a way for enterprises to provide a consistent look and feel with access control and procedures for multiple applications and databases, which otherwise would have been different entities altogether.
Examples of public web portals are AOL, Excite, Netvibes, iGoogle, MSN, Naver, Indiatimes, Rediff, Sify and Yahoo!.
In the late 1990s the web portal was a hot commodity. After the proliferation of web browsers in the late-1990s many companies tried to build or acquire a portal to have a piece of the Internet market. The web portal gained special attention because it was, for many users, the starting point of their web browser. Netscape became a part of America Online, the Walt Disney Company launched Go.com, IBM and others launched Prodigy, and Excite and @Home became a part of AT&T Corporation during the late 1990s. Lycos was said to be a good target for other media companies, such as CBS.
The portal craze, with old media companies racing to outbid each other for Internet properties, died down with the dot-com bust in 2000 and 2001. Disney pulled the plug on Go.com, Excite went bankrupt, and its remains were sold to iWon.com. Some portal sites such as Yahoo! and those others first listed in this article remain active.
Web portals are sometimes classified as horizontal or vertical. A horizontal portal is used as a platform to several companies in the same economic sector or to the same type of manufacturers or distributors. A vertical portal (also known as a "vortal") is a specialized entry point to a specific market or industry niche, subject area, or interest. Some vertical portals are known as "vertical information portals" (VIPs). VIPs provide news, editorial content, digital publications, and e-commerce capabilities. In contrast to traditional vertical portals, VIPs also provide dynamic multimedia applications including social networking, video posting, and blogging.
Types of web portals
A personal portal is a site on the World Wide Web that typically provides personalized capabilities to its visitors, providing a pathway to other content. It is designed to use distributed applications, different numbers and types of middleware and hardware to provide services from a number of different sources. In addition, business portals are designed for sharing and collaboration in workplaces. A further business-driven requirement of portals is that the content be able to work on multiple platforms such as personal computers, personal digital assistants (PDAs), and cell phones/mobile phones. Information, news, and updates are examples of content that would be delivered through such a portal. Personal portals can be related to any specific topic such as providing friend information on a social network or providing links to outside content that may help others beyond your reach of services. Portals are not limited to simply providing links. Information or content that is placed on the web may create a portal in the sense of a path to new knowledge and capabilities.
This section appears to be written like an advertisement. Please help improve it by rewriting promotional content from a neutral point of view and removing any inappropriate external links. (June 2013)
The traditional media rooms all around the world are fast adapting to the new age technologies. This marks the beginning of news portals by media houses across the globe. This new media channels give them the opportunity to reach the viewers in a shorter span of time than their print media counterparts.
Government web portals
At the end of the dot-com boom in the 1990s, many governments had already committed to creating portal sites for their citizens. These included primary portals to the governments as well as portals developed for specific audiences. Examples of government web portals include:
- australia.gov.au for Australia.
- USA.gov for the United States (in English) & GobiernoUSA.gov (in Spanish).
- Disability.gov for citizens with disabilities in the United States.
- Europa (web portal) links to all EU agencies and institutions in addition to press releases and audiovisual content from press conferences.
- gov.uk for citizens & businesslink.gov.uk for businesses in the United Kingdom.
- Health-EU portal gathers all relevant health topics from across Europe.
- india.gov.in for India.
- National Resource Directory links to resources for United States Service Members, Veterans and their families.
- newzealand.govt.nz for New Zealand.
- Saudi.gov.sa for Saudi Arabia.
Cultural portal aggregate digitised cultural collections of galleries, libraries , archives and museums. This type of portals provides a point of access to invisible web cultural content that may not be indexed by standard search engines. Digitised collections can include books, artworks, photography, journals, newspapers, music, sound recordings, film, maps, diaries and letters, and archived websites as well as the descriptive metadata associated with each type of cultural work. These portals are usually based around a specific national or regional groupings of institutions. Examples of cultural portals include:
- DigitalNZ - A cultural portal led by the National Library of New Zealand focused on New Zealand digital content.
- Europeana - A cultural portal for the European Union based in the National Library of the Netherlands and overseen by the Europeana Foundation.
- Trove - A cultural portal led by the National Library of Australia focused on Australian content.
- In development - Digital Public Library of America
Corporate web portals
Corporate intranets became common during the 1990s. As intranets grew in size and complexity, webmasters were faced with increasing content and user management challenges. A consolidated view of company information was judged insufficient; users wanted personalization and customization. Webmasters, if skilled enough, were able to offer some capabilities, but for the most part ended up driving users away from using the intranet.
Many companies began to offer tools to help webmasters manage their data, applications and information more easily, and through personalized views. Portal solutions can also include workflow management, collaboration between work groups, and policy-managed content publication. Most can allow internal and external access to specific corporate information using secure authentication or single sign-on.
JSR168 Standards emerged around 2001. Java Specification Request (JSR) 168 standards allow the interoperability of portlets across different portal platforms. These standards allow portal developers, administrators and consumers to integrate standards-based portals and portlets across a variety of vendor solutions.
The concept of content aggregation seems to still gain momentum and portal solution will likely continue to evolve significantly over the next few years. The Gartner Group predicts generation 8 portals to expand on the Business Mashups concept of delivering a variety of information, tools, applications and access points through a single mechanism.
With the increase in user generated content, disparate data silos, and file formats, information architects and taxonomist will be required to allow users the ability to tag (classify) the data. This will ultimately cause a ripple effect where users will also be generating ad hoc navigation and information flows. Corporate Portals also offer customers & employees self-service opportunities.
Also known as stock-share portals, stock market portals or stock exchange portals are Web-based applications that facilitates the process of informing the share-holders with substantial online data such as the latest price, ask/bids, the latest News, reports and announcements. Some stock portals use online gateways through a central depository system (CDS) for the visitors (ram) to buy or sell their shares or manage their portfolio.
Search portalsSearch portals aggregate results from several search engines into one page.
Tender's portals stands for a gateway to search/modify/submit/archive data on tenders and professional processing of continuous online tenders. With a tender portal the complete tendering process - submitting of proposals, assessment, administration - are done on the web. Electronic or online tendering is just carrying out the same traditional tendering process in an electronic form, using the Internet.
Using online tendering, bidders can do any of the following :
- Receive notification of the tenders.
- Receive tender documents online.
- Fill out the forms online.
- Submit proposals and documents.
- Submit bids online.
Hosted web portals
Hosted web portals gained popularity a number of companies began offering them as a hosted service. The hosted portal market fundamentally changed the composition of portals. In many ways they served simply as a tool for publishing information instead of the loftier goals of integrating legacy applications or presenting correlated data from distributed databases. The early hosted portal companies such as Hyperoffice.com or the now defunct InternetPortal.com focused on collaboration and scheduling in addition to the distribution of corporate data. As hosted web portals have risen in popularity their feature set has grown to include hosted databases, document management, email, discussion forums and more. Hosted portals automatically personalize the content generated from their modules to provide a personalized experience to their users. In this regard they have remained true to the original goals of the earlier corporate web portals. Emerging new classes of internet portals called Cloud Portals are showcasing the power of API (Application Programming Interface) rich software systems leveraging SOA (service oriented architecture, web services, and custom data exchange) to accommodate machine to machine interaction creating a more fluid user experience for connecting users spanning multiple domains during a given "session". Leading cloud portals like Nubifer Cloud Portal: showcase what is possible using Enterprise Mashup and Web Service integration approaches to building cloud portals.
A number of portals have come about that are specific to the particular domain, offering access to related companies and services, a prime example of this trend would be the growth in property portals that give access to services such as estate agents, removal firm, and solicitors that offer conveyancing. Along the same lines, industry-specific news and information portals have appeared, such as the clinical trials specific portal: IFPMA Clinical Trials Portal
- Enterprise Portal :
An enterprise portal, also known as an enterprise information portal (EIP) or corporate portal, is a framework for integrating information, people and processes across organizational boundaries. It provides a secure unified access point, often in the form of a web-based user interface, and is designed to aggregate and personalize information through application-specific portlets. One hallmark of enterprise portals is the de-centralized content contribution and content management, which keeps the information always updated.
The mid-1990s saw the advent of public Web portals like AltaVista, AOL, Excite, and Yahoo!. These sites provided a key set of features (e.g., news, e-mail, weather, stock quotes, and search) that were often presented in self-contained boxes or portlets. Before long, enterprises of all sizes began to see a need for a similar starting place for their variety of internal repositories and applications, many of which were migrating to Web-based technologies.
By the late 1990s, software vendors began to produce prepackaged enterprise portals. These software packages would be toolkits for enterprises to quickly develop and deploy their own customized enterprise portal. The first commercial portal software vendor began to appear in 1998. Pioneers in this marketing included "pure play" vendors like Epicentric, Plumtree Software and Viador. The space, however, quickly became crowded by 2002, with the entry into the market of competing product offerings from application server vendors (such as BEA, IBM, Passageways, Oracle Corporation and Sun Microsystems), who saw portals as an opportunity to stave off the commoditization of application server technology, and Open Source vendors such as Liferay or EXo Platform. In 2003, vendors of Java-based enterprise portals produced a standard known as JSR-168. It was to specify an API for interoperability between enterprise portals and portlets. Software vendors began producing JSR-168 compliant portlets that can be deployed onto any JSR-168 compliant enterprise portal. The second iteration of the standard, JSR-286, is final-released on 12 Jun, 2008. Enterprises may choose to develop multiple enterprise portals based on business structure and strategic focus while reusing architectural frameworks, component libraries, or standardized project methods (e.g. B2E, B2C, B2B, B2G, etc.).
A study conducted in 2006 by Forrester Research, Inc. showed that 46 percent of large companies used a portal referred to as an employee portal. Employee portals can be described as a specific set of enterprise portals and are used to give an interface for employees to personalized information, resources, applications, and e-commerce options.
In 2009 Gartner introduced the concept of the portal-less-portal or the -Lean Portal.- Lean Portals offer an alternative to the ‘traditional’ portals we’ve been seeing for the last 15 years, which have become very difficult to deploy and maintain. Traditional portals are bloated with features that aren’t necessarily cost-effective to businesses. This leads to a lot of frustration for companies thinking of investing in a portal as the traditional model forces them to exceed their budgets for features they don’t want or need, without being able to deliver the results they wanted. In contrast a Lean Portal is lightweight and easy to deploy. It’s built using modern Web 2.0 technologies, such as AJAX, widgets, representation state transfer (REST) and WOA/SOA approaches. Lean Portal offerings from vendors like Backbase, replace the traditional container-oriented portal model while maintaining the main purpose of a portal - providing a personalized point of access that allows customers to find relevant information, read about business processes and reach people. According to Gartner, organizations who opted for a Lean Portal found that it delivered more than 80% of the required functionality within months of launching, without compromising security or advanced integration requirements.
Single Sign-On : enterprise portals can provide single sign-on capabilities between their users and various other systems. This requires a user to authenticate only once.
Integration : the connection of functions and data from multiple systems into new components/portlets/web parts with an integrated navigation between these components.
Federation : the integration of content provided by other portals, typically through the use of WSRP or similar technologies.
Customization : Users can customize the look and feel of their environment. Customers who are using EIPs can edit and design their own web sites which are full of their own personality and own style; they can also choose the specific content and services they prefer. Also refers to the ability to prioritize most appropriate content based on attributes of the user and metadata of the available content.
Personalization : Personalization is more about matching content with the user. Based on a user profile, personalization uses rules to match the "services", or content, to the specific user. To some degree, you can think of the two like this: customization is in hands of the end user, personalization is not. Of course actual personalization is often based on your role or job function within the portal context.
Access Control : the ability for portal to limit specific types of content and services users have access to. For example, a company's proprietary information can be entitled for only company employee access. This access rights may be provided by a portal administrator or by a provisioning process. Access control lists manage the mapping between portal content and services over the portal user base.
Enterprise Search : search enterprise content using enterprise search
- Content Management System
- Document Management System
- Collaboration Software
- Business process management systems
- Customer Relationship Management
- Business Intelligence
- Employee portal
- Web Services for Remote Portlets :
Web Services for Remote Portlets
Web Services for Remote Portlets (WSRP) is an OASIS-approved network protocol standard designed for communications with remote portlets.
The WSRP specification defines a web service interface for interacting with presentation-oriented web services. Initial work was produced through the joint efforts of the Web Services for Interactive Applications (WSIA) and Web Services for Remote Portlets (WSRP) OASIS Technical Committees. With the approval of WSRP v1 as an OASIS standard in September, 2003, these two technical committees merged and continued the work as the Web Services for Remote Portlets (WSRP) OASIS Technical Committee.
Scenarios that motivate WSRP functionality include: content hosts, such as portal servers, providing portlets as presentation-oriented web services that can be used by aggregation engines; content aggregators, such as portal servers, consuming presentation-oriented web services provided by portal or non-portal content providers and integrating them into a portal framework.
The WSRP specification does not make any statements as to implementation. Java's portlet specification, JSR 168, and WSRP are not competing technologies. JSR 168 may be used to define a portlet, and WSRP may be used to define a portlet's operations to remote containers. JSR 168 portlets and WSRP may be used together to define a portlet and to provide remote operations. Similarly, .NET portlets may be created for use with WSRP. Interoperability between JSR 168 and .NET WSRP implementations has been demonstrated.
There are several WSRP implementations to assist developers :
- The Liferay Enterprise Portal provides an implementation of WSRP 1.0 and 2.0 producer and consumers available in both its commercial Enterprise Edition and open source Community Edition.
- Microsoft provides a WSRP producer and consumer WebPart for both SharePoint 2007 and 2010.
- The OpenPortal WSRP project's goal is to create a high quality, enterprise-class WSRP v1 and v2 producer and consumer with an associated developer community.
- The GateIn Portal project (JBoss & eXo), provides an implementation of both WSRP v1 and v2 (as of GateIn 3.1.0), producer and consumer using GateIn and GateIn Portlet Container.
- Apache WSRP4J was an Apache Incubator subproject spearheaded by IBM with the stated goal of "kick starting the broad adoption" of WSRP. WSRP4J was designed to assist in the development and deployment of WSRP v1 services. WSRP4J was in incubator status, primarily due to patent concerns revolving around the WSRP specification. Given WSRP4J's incubator status, the project did not produce formal releases. The project has been terminated in 2010.
- The first release, WSRP v1, provided a limited interoperability platform. Further versions of WSRP v1 were abandoned so that effort could be concentrated on WSRP v2. WSRP v2 augments the initial standard with cross-portlet coordination and access management features. This major update to the standard permits a more useful integration of multiple content sources, regardless of whether they are local or remote, into a new web application. In addition, WSRP v2 supports Web 2.0 technologies, such as AJAX and REST, without requiring them. WSRP v2 was approved by OASIS on April 1st, 2008.
- WebSphere Portal :
IBM WebSphere Portal is a set of software tools that enables companies to build and manage web portals. It provides a single access point to web content and applications, while delivering differentiated, personalized experiences for each user.
According to a Gartner Research comparison of software for horizontal portals, WebSphere Portal software is a leader in that market, having delivered "significant product innovation," and being "successful in selling to new customers across industries." WebSphere Portal software has been reviewed numerous times in the IT industry press, and honors include eWeek Magazine's 2004 Excellence Award in the category "Portals and Knowledge Management", Java Pro Magazine's 2003 Reader's Choice Award for "Best Team Development Tool", and the Software & Information Industry Association's 2003 Codie Award for "Best Enterprise Portal Platform".
The WebSphere Portal package is a component of WebSphere software. Like WebSphere, the WebSphere Portal package is developed and marketed by IBM. Available since 2001, it is now sold in five editions.
The WebSphere Portal package is available in five editions: WebSphere Portal Server, WebSphere Portal Enable, WebSphere Portal Enable for z/OS, WebSphere Portal Extend, and WebSphere Portal Express.
The basic package includes a web server, WebSphere Application Server, LDAP directory, IBM DB2 database, development tools, web site templates and other essential site management tools such as a configuration wizard. In addition, some editions of WebSphere Portal include limited entitlements to Lotus Web Content Management, Lotus Quickr document management, Lotus Sametime instant messaging, and Lotus Forms electronic forms. For WebSphere Portal Enable for z/OS, WebSphere Application Server and IBM DB2 database must be purchased separately.
IBM announced that WebSphere Portal package will be included in IBM Customer Experience Suite.
The WebSphere Portal software suite adheres to industry standards: the Java Portlet Definition Standard (both JSR 168/v1 and JSR 286/v2 specifications) defined by the Java Community Process, as well as the Web Services for Remote Portlets (both WSRP 1.0 and 2.0) specifications defined by the Web Services for Remote Portlets OASIS Technical Committee.
IBM first announced WebSphere Portal Server for AIX in 2001. Since then, IBM has released versions that run on Linux, Microsoft Windows, HP-UX, Solaris, i5/OS, and z/OS.
In April 2006 version 6.0 was announced. The new features included Workflow (introduced a new workflow builder), Content Management (unveiled IBM Workplace Web Content Management Version 6.0, now IBM Lotus Web Content Management), Electronic Forms (incorporated IBM Workplace Forms, now IBM Lotus Forms) and Alignment with Bowstreet Portlet Factory (Now WebSphere Portlet Factory)
In March 2009, WebSphere Portal was at version 6.1 was announced, an upgrade that enhanced Web 2.0 capabilities, support for REST-based services, and improved Atom and RSS consumption. In November 2009, IBM then released WebSphere Portal Feature Pack Version 6.1.5, with new features that can be added to the version 6.1 platform, including new page builder and template capabilities, platform startup optimization, and expanded Enterprise Content Management (ECM) and Web analytics integration support.
In September 2010, WebSphere Portal version 7.0 was announced.
IBM WebSphere Portal and IBM Lotus Web Content Management Version 7.0 software include features and enhancements that ease the ability to deliver aesthetically pleasing, security-rich, personalized web experiences—with virtually unmatched reliability and scalability. WebSphere Portal Version 7.0 software extends the leading exceptional web experience platform, building on the foundation of version 6.1x and earlier releases that delivered many key capabilities: Web 2.0 innovations and technologies that made it easier and faster for organizations to deliver personalized, rich and highly responsive web portal applications; User and line-of-business (LOB) page customization features; Integrated and seamless mashup creation capability; Support for external web programming and development tools and techniques; Third-party site analytics integration and new platform optimization capabilities. Continued leadership and development of important portal open standards, such as Java Specification Request (JSR) 286 and Web Services for Remote Portlets (WSRP) 2.0 standards.
IBM Lotus Web Content Management is better integrated, and IBM Lotus Web Content Management itself has large user interface and functionality improvements.
- Sun Java System Portal Server :
Sun Java System Portal Server
This article does not cite any references or sources. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed. (November 2009)
The Sun Java System Portal Server is a component of the Sun Java Platform, Enterprise Edition, a software system that supports a wide range of enterprise computing needs.
Portal Server allows administrators and delegated administrators to build portal pages and to make them available to individuals throughout an enterprise according to user identities.
Portal Server's core framework supports the Java Specification Request (JSR) 168 and 286 Java Portlet specification standard and the Web Services for Remote Portlets (WSRP) 1.0 standard for portal content. Portlet developers can use the NetBeans IDE or open standard tools to build standards-based portlets. Developers can also use design tools such as Dreamweaver to design new themes and skins. Portal administrators can then leverage portlets, WSRP consumers, or additional portal tools for adding content to portal pages.
The latest version of Portal Server is 7.2. This version provides a framework and a set of software modules that offer the following:
- Community Features
- Enterprise Search
- Identity-based content delivery
- Business system integration
- Secure Remote Access
- Desktop Design Tool
- Delegated Administration
- Enterprise Edition Installer
- GlassFish V2 / Application Server 9.1 Support
- SharePoint Integrated Services
- AES Support for Secure Remote Access
- CMS Portlet and CMS Framework
- JSR286 / Portlet Container 2.0 Support
- WSRP 1.0
- Google Gadgets Integration
- Workflow API
- JSF Portlet Bridge 1.2
- NetBeans and Eclipse application development tools
At JavaOne 2007, the Sun Java System Portal Server team announced the renaming of the portal open source community. It’s now called the OpenPortal Community.
Partnership with Liferay
At JavaOne 2008, Sun and Liferay announced a strategic partnership that combines efforts and technologies from both company's communities to enhance and maintain web aggregation and presentation technologies that are utilized in existing and future products. Liferay Portal 5 and Sun's Project WebSynergy are the first version of the new product families that are a result of this initiative and derived from the same codebase.
- Liferay Portal :
Liferay Portal is a free and open source enterprise portal written in Java and distributed under the GNU Lesser General Public License and proprietary licenses. It is primarily used to power corporate intranets and extranets.
Liferay Portal allows users to set up features common to websites. It is fundamentally constructed of functional units called portlets. Liferay is sometimes described as a content management framework or a web application framework. Liferay's support for plugins extends into multiple programming languages, including support for PHP and Ruby portlets.
Although Liferay offers a sophisticated programming interface for developers, no programming skills are required for basic website installation and administration.
Liferay Portal is Java-based and runs on any computing platform capable of running the Java Runtime Environment and an application server. Liferay is available bundled with a servlet container such as Apache Tomcat.
Liferay, Inc., is a professional open-source company that provides free documentation and paid professional service to users of its software. Mainly focused on enterprise portal technology, the company has its headquarters in Los Angeles, California, United States.
Liferay was created in 2000 by chief software architect Brian Chan to provide an enterprise portal solution for non-profit organizations. In 2004, the company was incorporated under the name Liferay, Inc., formalized its Germany subsidiary Liferay GmbH. In 2007, the company opened new Asian headquarters in Dalian, China, and the Spanish subsidiary Liferay SL. In March 2009, the company opened a new office in Bangalore, India.
Sun Microsystems and Liferay signed a technology-sharing agreement during May 2008. Sun Microsystems rebranded the offering GlassFish Web Space Server. ZDNet further describes the relationship in the May 2008 article Sun and Liferay launch web-presentation platform. In 2010 Sun was acquired by Oracle and the GlassFish Web Space Server was rebranded to Oracle GlassFish Server.
Liferay 6.1 was released in January 2012 and saw several improvements and new functionality including an improved document library, dynamic data lists and an app store
This section does not cite any references or sources. Please help improve this section by adding citations to reliable sources. Unsourced material may be challenged and removed. (February 2012)
Liferay Portal is a JSR-286 and enterprise portal which includes a suite of applications (e.g., Content Management System, blogs, instant messaging, message boards, etc.). It is distributed in two different editions:
Liferay Portal Community Edition : A version with the latest features and support through the active community.
Liferay Portal Enterprise Edition : A commercial offering that includes services including updates and full support. This release goes through additional quality assurance cycles and is usually available around 1 or 2 months after the Community Edition and comes under a non-free license.
Liferay also provides a collaboration suite based on the Liferay platform:
Liferay Social Office : A social collaboration suite for enterprises.
Liferay comes with certain portlets preinstalled. These comprise the core functionality of the portal system. They include:
- Alerts and Announcements
- Alfresco, Documentum, and other document library integration
- Asset Publishing
- Blogs and blog aggregation
- Document and Image management
- Document Library Manager, Recent Documents
- Image Gallery
- Knowledge Basev
- LDAP Integration
- Message Boards
- Nested Portlets
- Page Ratings & Flags
- Site Map
- Site Navigation
- Social Equity
- Software Catalog
- Tags and Categories
- Themes, supporting Velocity and FreeMarker markup
- User Directory
- Web Content
- Web Form Builder
- WebDAV Integration
- Website Tools
- Wiki (supports Creole as well as MediaWiki syntax)
- Apache Pluto :
Pluto is a Portlet Container
A portlet container provides a runtime environment for portlets implemented according to the Portlet API. In this environment portlets can be instantiated, used and finally destroyed. The portlet container is not a stand-alone container like the servlet container; instead it is implemented as a thin layer on top of the servlet container and reuses the functionality provided by the servlet container. Architecturely, it provides an interface between the portal and portlets.
Pluto serves as the portlet container for many portals, including Apache Jetspeed. To accommodate the aggregation and display of diverse content in a dynamic manner, a portal such as Jetspeed must provide a framework that integrates the various pluggable parts into a consistent user interface for the portal user. The pluggable parts are called portlets. The contract, or programming API, between these portlets and a portal is known as the Portlet API. Pluto is the implementation of this contract or API.
Developing with Pluto
Pluto fully implements the Portlet API specification and offers developers a working example platform from which they can test their portlets. However, it is cumbersome to execute and test the portlet container without a driver such as a full running portal. Pluto's simple portal component is built only on the portlet container's and the JSR 286's requirements.
If you want to get started with rapid portlet development with Pluto, see the documentation on Developing with Pluto
Differences from Servlets
In contrast to servlets, portlets may not do things like sending redirects or errors to browsers directly, forwarding requests or writing arbitrary markup to the output stream to assure that they don't distract the portal web application which uses them. Another difference compared to servlets is that portlets rely on portal specific infrastructure functions such as access to user profile information, standard interface for storing/retrieving persistent settings, getting client information, etc. Generally, portlets are administrated more dynamically than servlets.
- RIA Applications
- WOA Architecture
- Content Writing
- Php Solutions
- Lamp Solutions
- Dotnet Solutions
- J2ee Solutions
- Portal Solutions
- Joomla - Mvc
- Struts 1.3
- Struts 2.0
- Java Server Faces
- Spring Mvc
- Spring Webflow
- Ruby on Rails
- Moo Tools
- Adobe Flex
- Yahoo! User Interface Library (YUI)
- GWT (Googel Web Toolkit)
- SEO Optimization
- SEO Branding
- SEO Consulting
- PPC (Pay Per Click )
- SMS Service
- Web Hosting
A solid working knowledge of productivity software and other IT tools has become a basic foundation for success in virtually any career. Beyond that, however, I don't think you can overemphasise the importance of having a good background in maths and science.....
"Every software system needs to have a simple yet powerful organizational philosophy (think of it as the software equivalent of a sound bite that describes the system's architecture)... A step in thr development process is to articulate this architectural framework, so that we might have a stable foundation upon which to evolve the system's function points. "
"All architecture is design but not all design is architecture. Architecture represents the significant design decisions that shape a system, where significant is measured by cost of change"
"The ultimate measurement is effectiveness, not efficiency "
"It is argued that software architecture is an effective tool to cut development cost and time and to increase the quality of a system. "Architecture-centric methods and agile approaches." Agile Processes in Software Engineering and Extreme Programming.
"Java is C++ without the guns, knives, and clubs "
"When done well, software is invisible"
"Our words are built on the objects of our experience. They have acquired their effectiveness by adapting themselves to the occurrences of our everyday world."
"I always knew that one day Smalltalk would replace Java. I just didn't know it would be called Ruby. "
"The best way to predict the future is to invent it."
"In 30 years Lisp will likely be ahead of C++/Java (but behind something else)"
"Possibly the only real object-oriented system in working order. (About Internet)"
"Simple things should be simple, complex things should be possible. "
"Software engineering is the establishment and use of sound engineering principles in order to obtain economically software that is reliable and works efficiently on real machines."
"Model Driven Architecture is a style of enterprise application development and integration, based on using automated tools to build system independent models and transform them into efficient implementations. "
"The Internet was done so well that most people think of it as a natural resource like the Pacific Ocean, rather than something that was man-made. When was the last time a technology with a scale like that was so error-free? The Web, in comparison, is a joke. The Web was done by amateurs. "
"Software Engineering Economics is an invaluable guide to determining software costs, applying the fundamental concepts of microeconomics to software engineering, and utilizing economic analysis in software engineering decision making. "
"Ultimately, discovery and invention are both problems of classification, and classification is fundamentally a problem of finding sameness. When we classify, we seek to group things that have a common structure or exhibit a common behavior. "
"Perhaps the greatest strength of an object-oriented approach to development is that it offers a mechanism that captures a model of the real world. "
"The entire history of software engineering is that of the rise in levels of abstraction. "
"The amateur software engineer is always in search of magic, some sensational method or tool whose application promises to render software development trivial. It is the mark of the professional software engineer to know that no such panacea exist "
Core Values ?Agile And Scrum Based Architecture
Agile software development is a group of software development methods based on iterative and incremental development, where requirements and solutions evolve through collaboration.....more
Core Values ?Total quality management
Total Quality Management / TQM is an integrative philosophy of management for continuously improving the quality of products and processes. TQM is based on the premise that the quality of products and .....more
Core Values ?Design that Matters
We are more than code junkies. We're a company that cares how a product works and what it says to its users. There is no reason why your custom software should be difficult to understand.....more
Core Values ?Expertise that is Second to None
With extensive software development experience, our development team is up for any challenge within the Great Plains development environment. our Research works on IEEE international papers are consider....more
Core Values ?Solutions that Deliver Results
We have a proven track record of developing and delivering solutions that have resulted in reduced costs, time savings, and increased efficiency. Our clients are very much ....more
Core Values ?Relentless Software Testing
We simply dont release anything that isnt tested well. Tell us something cant be tested under automation, and we will go prove it can be. We create tests before we write the complementary production software......more
Core Values ?Unparalled Technical Support
If a customer needs technical support for one of our products, no-one can do it better than us. Our offices are open from 9am until 9pm Monday to Friday, and soon to be 24hours. Unlike many companies, you are able to....more
Core Values ?Impressive Results
We have a reputation for process genius, fanatical testing, high quality, and software joy. Whatever your business, our methods will work well in your field. We have done work in Erp Solutions ,e-commerce, Portal Solutions,IEEE Research....more
Why Choose Us ?
The intellectual commitment of our development team is central to the leonsoft ability to achieve its mission: to develop principled, innovative thought leaders in global communities.Read More
Today's most successful enterprise applications were once nothing more than an idea in someone's head. While many of these applications are planned and budgeted from the beginning.Read More
We constantly strive to redefine the standard of excellence in everything we do. We encourage both individuals and teams to constantly strive for developing innovative technologies....Read More
If our customers are the foundation of our business, then integrity is the cornerstone. Everything we do is guided by what is right. We live by the highest ethical standards.....Read More