| By Jason Snyder | Article Rating: |
|
| May 27, 2003 12:00 AM EDT | Reads: |
13,403 |
WebLogic Portal 8.1 Beta is out and builds upon the successful and well received WebLogic Portal 7.0. Portal 7.0 dominated industry reviews last year, winning many "best technology" awards (for example, Best Enterprise Portal Solution in the 17th annual Software & Information Industry Association (SIIA) Codie Awards) as well as recognition as the best portal product. Most important: Java developers loved it.
The keys to Portal 7.0's success were its open architecture, ease of use, and overall high-quality portal features such as personalization and interaction management. The architecture allowed an ease of integration with either BEA WebLogic Integration or other third-party business process providers. Its user interface allows an ease of look and feel updates, and a division of labor between GUI specialists and Java developers. Portal features such as personalization (delivering audience-specific content), entitlements (restricting access to the correct resources), dynamic navigation, and interaction tracking were intuitively designed in a way that simplified developer usage.
So how do you improve on a classic? First you build on its strengths. Portal 8.1 provides all of the benefits of Portal 7.0 while adding new features that improve integration with the rest of the WebLogic platform. More wizards and graphical component designers were added. BEA has also added more Java Controls, which provide a head start on application development by simplifying API or J2EE resource calls. In addition, Portal 8.1 now allows for the addition of multiple portals within the same overall Web application.
One of the biggest changes in WebLogic 8.1 involved the development environment updates to WebLogic Workshop, which has evolved into a complete developer tool capable of integrating Web services, Enterprise JavaBeans (EJBs), JavaServer Pages (JSPs), and busines processes into the portal environment. This provides a one-source tool for most areas of portal development. A debugging source code editor has also been added to Workshop. The numerous updates to Workshop itself are covered in a related article on page 28.
Portlet functionality has also been dramatically improved. The drag and drop creation of portlets and their components works well and greatly eases development. JSP portlets, Web services portlets, and Java Page- flow portlets can all be created at the click of a few buttons (and maybe a little typing). The portal development interface combines visual logic with vast utility, and provides what BEA calls "Converged Portal Development," using Workshop to build custom portals that combine business processes and Web services.
Portal Sample
The sample portal represents a fictional company called Avitek (see Figure 1). There is an initial sign-on page, "Avitek Inweb," followed by three tabs representing "Content," "News," and "Bookmarks."
A portal created by WebLogic consists of a single XML file, which is constructed automatically by Workshop when the Portal Designer is employed to build a portal. A snippet from the sample.portal Avitek example XML file is shown below:
Intranet - A platform for Information Sharing">
markupType="LookAndFeel" skeleton="default"
skeletonPath="
/framework/skeletons/" skin="avitek" />
Luckily, you don't really care what this looks like as you are using WebLogic Workshop. To open the Avitek portal simply open the XML file. Workshop uses the XML file to determine the portal contents and presents the developer view (see Figure 2).
Let's go through what you see from the sample.portal view in Workshop.
On the upper left, there are two tabs labeled Application and Files. The Application tab has a directory structure and provides access to all of the modules that are currently part of the portalApp sample application. The Files tab lists the file names for all of the same directory modules.
Below that area is a Palette tab that lists available construction elements. Currently, Book and Page are showing. A Book provides the ability to add a collection of Pages to one portal area. A Page represents a specific area of the portal.
In the middle of the Workshop screen is the visual representation of the portal application being built. Files from the application and palette tabs can be dragged and dropped to this area when adding new functionality. You can see four pages within the sample application. The first page has two columns, each with a portlet. A portlet is an access point to an application within the portal. Within the sample, a Login portlet is on the left and a Dev2Dev portlet is on the right. Both use JSPs to provide their content.
Immediately to the right of the portal representation are the Property Editor and Document Structure tabs. The Document Structure tab provides a directory structured listing of the various components of the portal desktop. The Property Editor provides the ability to set specific values for each of these components. Key Property Editor attributes for a Page include Title, which specifies the name of the page; and Navigation, which identifies and type of navigation (tabs or text). Other properties exist, most are fairly well named and, after you look them up once or twice, remain in memory.
The Data Palette falls below the Property Editor in the sample screenshot. It lists the Portal data components. For the sample, all of the available portlets are listed. These can easily be dragged into any of the pages.
Finally, the tour of the sample portal concludes with the tri-tabbed section immediately below the footer of the portal representation. The tabs are Build, Output, and Content Preview. The Build tab shows the results of any application build process. The Output tab shows functional output that occurs given Workshop usage. For example, if you have the debugger on, the various debugger outputs are depicted. Dynamic content can be previewed with the Content Preview tab.
After reviewing the sample and working through a tutorial (see Reference section), I created some sample portals. Creating them is straightforward once you get the hang of it. First, create an application to contain the portal. Follow that with the project to build within. Then it's simply a matter of adding Books (collections of pages) or Pages (containers for portlets). Stylesheets can be included very easily as can specific JSPs for the header or footer.
Most items employ a drag-and-drop mechanism for inclusion. The other main area for updating (aside from code) is the Property Editor tab on the right-hand side of the Workshop screen. The usage pattern I settled on was to select the item in the Document Structure tab and then update the properties in the Property Editor tab. You can also just select the item on the page, but sometimes I had trouble identifying specifically what I had selected.
The Workshop Test Browser allows a portal developer to see the outcome of their changes easily. Just remember to save your changes prior to refreshing it.
It is also possible to import any file, module, library, or project into your project or application. This allows a group of separate HTML developers, for example, to develop the code elsewhere and integrate it into the portal application. Once JSP or HTML has been imported into the project, creating portlets from the pages involves a drag-and-drop, which then calls the Portlet wizard.
When generating a Web service portlet, the interface provides three types of generated portlet code for access, which provides a degree of time savings. The choices available are Form, which takes parameters from an HTML form and calls the interface; Call Generation, which creates a stubbed out portlet where you code in the source for the parameters; and Web service(s) Interfaces, which documents the interface usage.
The integration with Pageflows provides one of the more powerful aspects of WebLogic Portal. Pageflow provides a series of conditional statements provided with page outcomes. Possible outcomes include other pages, Struts ActionForms, or Workshop Java Controls. Java Controls allow logic to be reused as a simple interface to all developers. WebLogic Workshop includes several built-in controls, such as database access.
Deploying portal applications is relatively straightforward. After the server is started, access the console and deploy your entire portal application using straightforward directory options (similar to the deployment of JSPs or EJBs). WebLogic Portal 8.1 provides advanced administrator capability once the portal is created. Using the single XML file created by WebLogic Workshop when the portal is created, the Administration Portal allows the various components of the portal to be modified and reassembled. In addition, an administrator can set entitlements for user groups and individual areas of the portal.
Documentation
The online Workshop documentation provides a good understanding of what the different screen attributes mean, and provides a basis for some portal programming. But I had difficulty getting a sense of context from just Workshop or the sample alone. I recommend using the dev2dev eWorld tutorial for getting up to speed quickly after going through the Workshop documentation. Used in combination, I think you get a good understanding of what is possible (mostly from the Workshop documentation), and with the tutorial, a sample of potential use. The tutorial does not provide examples of all of the Portal features, but definitely provides enough to know where to look if it isn't covered.
Conclusion
BEA has done it again. WebLogic Portal 8.1 Beta is an excellent tool and greatly simplifies the potentially difficult development of a portal. It provides more wizards and has simplified usage, and makes portal development that much easier. Much of its usage is intuitive, and because of the overall consistency of the application, patterns for usage from one area can be reapplied to other areas, allowing faster learning. I was able to create JSP, Web service, and Pageflow portlets within the portals easily and soundly. I also added interaction management features through the handy designers without much trial and error.
Most important, significant updates have been made to WebLogic Workshop. This article has only touched the surface of what Workshop provides. BEA has done an excellent job integrating the various Web development software packages into one platform. It is through the use of this platform that the real power of Workshop can be demonstrated.
References
The following sites should be helpful for anyone reviewing BEA Portal:
SIDEBAR
BEA Systems, Inc.
2315 North First Street
San Jose, CA 95131
+1.800.817.4BEA (US toll free)
+1.408.570.8000 phone
Requirements:
BEA WebLogic Portal requires BEA WebLogic Server 7.0
Sales:
North American Sales
Ready to Purchase BEA Products
+1.800.817.4BEA (1.800.817.4232)
toll-free (24 Hours/Day)
+1.415.402.7250 fax
For Europe and Asia:
www.bea.com/framework.jsp?CNT=sales1.htm
&FP=/content/about/contact/
Published May 27, 2003 Reads 13,403
Copyright © 2003 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
More Stories By Jason Snyder
Jason Snyder is an architectural expert for CSC Consulting in Boston, and has served as the lead architect for several J2EE development projects. He has over 10 years of experience in software development, OO design, and application architecture.
- The Economics of Cloud Computing Analyzed
- GovIT Expo Highlights Cloud Computing
- Cloud Computing Best Practices
- Tactical Cloud Computing Panel at 1st Annual GovIT Expo
- Why SOA Needs Cloud Computing - Part 1
- The Cloud Transition: What Does It Mean For You?
- Cloud Computing Strategy
- IBM’s Mainframe Monopoly Threatened by BMC Founder’s Shop
- Economy Drives Adoption of Virtual Lab Technology
- Virtualization Expo Call for Papers Deadline December 15
- Oracle in Leader's Quadrant for Enterprise Application Servers
- Oracle Fusion Middleware Delivers World Record Single-Node Result
- The Economics of Cloud Computing Analyzed
- The Difference Between Web Hosting and Cloud Computing
- GovIT Expo Highlights Cloud Computing
- Cloud Computing Best Practices
- Tactical Cloud Computing Panel at 1st Annual GovIT Expo
- Citrix Aims To Cripple VMware’s Cloud Designs
- Product Evaluation: JBoss TCO Calculator
- Why SOA Needs Cloud Computing - Part 1
- Build Reliability into Cloud Computing for SMBs
- Perhaps SOA is More Strategy Than Architecture
- EC Wrong, Wrong, Wrong – and Sloppy to Boot: Intel
- Five Reasons to Choose a Private Cloud
- Java vs C++ "Shootout" Revisited
- Where Are RIA Technologies Headed in 2008?
- Configuring Eclipse for Remote Debugging a WebLogic Java Application
- Migrating a JBoss EJB Application to WebLogic
- XA Transactions
- The Top 250 Players in the Cloud Computing Ecosystem
- An Introduction to Abbot
- WebLogic Tutorial: "Integrating Apache Poi in WebLogic Server"
- Eclipse "Pollinate" Project to Integrate with Apache Beehive
- Failover and Recovery of Enterprise Applications - Part 1
- Cover Story: A Practical Solution to Internationalization of a J2EE Web App
- WebSphere vs WebLogic: IBM and BEA Spar Over SPEC Results































