Did You Know? -- February 2001

By Hervé Deschamps, Oracle Corporation.

Portal 3.0. Available Resources

A quick note about some of the available resources:

You can find the helphtml archives from http://itools.us.oracle.com/.

A better way of finding answers to issues is to search the OTN discussion forum (http://otn.oracle.com/ ; click the Discussions link on the left).

Also don't forget http://metaLink.oracle.com/.

Portal 3.0. Tricks and Tips

In Portal 3.0.8, they're providing an API that will allow you to build your own Advanced Search page.  Post 3.0.8, they're planning APIs for building your own results page and other mechanisms for customizing the standard results page.

Did you know that Oracle Portal knows 47 languages? They are all listed below. You can find details about them in table WWNLS_SYS_LANGUAGE$, like columns 'installed' and 'available' that indicates whether you have installed each language. Also column 'databaseabbreviation' is the one used throughout all other tables of Portal (there are many of them) as column 'language'. This is useful information for any type of API validation.

Arabic Hebrew Spanish-Argentina Spanish-Paraguay
Brazilian-Portugese Hungarian Spanish-Bolivia Spanish-Peru
Canadian French Italian Spanish-Chile Spanish-Puerto Rico
Chinese-Hong Kong Japanese Spanish-Columbia Spanish-Uruguay
Chinese-Singapore Korean Spanish-Costa Rica Spanish-Venezuela
Czech Norwegian Spanish-Dominican Republic Swedish
Danish Polish Spanish-Ecuador Thai
Dutch Portugese Spanish-El Salvador Tradition Chinese
English Romanian Spanish-Guatemala Turkish
Finnish Russian Spanish-Honduras
French Simplified Chinese Spanish-Mexico
German Slovak Spanish-Nicaragua
Greek Spanish Spanish-Panama

For validation purposes, there are 2 tables that contain very similar Portal site information: wwsbr_sites$ and wwsbr_site_languages$. What is the difference? Well, as the table primary keys indicate, wwsbr_sites$ is the pure site reference table. Its language column is only the default language for that site. Table wwsbr_site_languages$ on the other hand could contain several records for the same site: one for each language. So because so many tables in Portal are driven by the language code it is better to use wwsbr_site_languages$ for validation purposes. Although most implementations of Portal start as mono-language it costs no more coding to do API validation using wwsbr_site_languages$. The big advantage is that your utilities will be reusable worldwide and will scale up the day you are requested to expand your site to multiple languages.

Portal 3.0.: Data Dictionary News.

Categories are stored in WWV_TOPICS

Portal 3.0.: Moving a folder across content areas.

If you want to programmatically move a folder with Portal you should not use the API module wwv_cornerdb.move. Here is its declaration:

   p_id IN g_cornerid DEFAULT NULL,
   p_newparentid IN g_cornerid DEFAULT NULL,
   p_language IN VARCHAR2 DEFAULT wwsbr_global.language,
   p_siteid IN NUMBER DEFAULT wwsbr_global.siteid);
The problem is that this procedure does not enable you to move folders across content areas. If it did it would have to have two siteid parameters: one for the site that owns the source folder and one for the site that owns the destination folder.  Consequently if you try no move folders across content areas, here is the error that you get:
ORA-06512: at "PORTAL30.WWSBR_STDERR", line 437
ORA-06512: at "PORTAL30.WWV_CORNERDB", line 183
ORA-01403: no data found
So what you have to do instead is to copy the folder with wwv_cornerdb.copy and then delete the source folder with wwv_cornerdb.remove.

HTML <PRE> tag (tip from Nanci LeVake)

This tag instructs the web browser to retain the spacing. It keeps the exact spacing you type and doesn't word-wrap to fit the web browser window.  It
allows you to make simple tables. Example:
Comedy    Big Dillbird        starring Dillbird        $14.99
Drama     Saving Dillbird     starring Dillbird        $14.99
Horror    Dillbird the 13th   starring Dillbird        $15.99
Sci-Fi    Dillbird on Mars    starring Dillbird        $14.99

SMIL: Synchronized Multimedia Integration Language

SMIL was developed by the W3C Synchronized Multimedia (SYMM) Working Group to allow the synchronization of audio, video, text and graphics in web-based presentations.  It was expressly developed to enhance the quality of streaming media and can support multiple types of data, compression algorithms,
and bandwidth environments. It was designed so that anyone familiar with HTML and some XML commands could employ it to create television-like presentations.

Philipp Hoschka, Chairman of the W3C group and editor of the SMIL specifications says:  "...the Web lacks a simple way to express synchronization over time, for example, 'play audio file A in parallel with video file B' or 'show image C after audio file A has finished playing.' SMIL enables this type of information to be expressed quite easily, allowing television-like content to be created..."

There are several other facets of SMIL, and if you want an in-depth look at it, you can take a look at this excellent tutorial from RealPlayer:

Web Site Design Rules: Keep it simple!

You don't always have to use the latest bells or whistles to make your site stand out from the crowd. The main index page (or the first page someone visits when coming to your site) should load very quickly and inform them of what the web site is about. Most people hate waiting 2-3 minutes for a Flash intro that really wasn't needed, or having to skip around to learn what the site is actually for. The Internet is an information medium and most people are looking for something while they surf. If your site slows them down, they are more likely to leave than stay. However, if they can find what they want quickly, it actually does leave a good impression. That is half the battle!

Just because you are keeping a web site simple, does not mean you can't have tons and tons of great content or thousands of pages. Content is the meat and potatoes of your site. All the fancy graphics and navigation systems you can create don't mean much without great content. So some simple suggestions are:

  1. Create the content first. (The hardest part of designing a  web site!) Know what you're building the web site for.
  2. Create small (file size) reusable graphics. Reusing the same graphics cuts load time.
  3. Make an easy-to-understand navigation system for your site.
  4. Create a "standard page" layout for your site. Reusing code cuts your production time.
  5. Test your site on several browsers (and at different screen resolutions) for compatibility and the finished look. It is always good to see what your site looks like to others using different web browsers.

Check Ebay, Microsoft, and CNET. Most concentrate on the content first, simple graphics, and a standardized easy to understand navigation system. All of these
things will help increase the "stickiness" of your site, not to mention ease the frustration level of your visitors.

These criteria aren't set in stone. But if you think about load time, site content, and navigation you should end up with a "stickier" site. Check out how the "big" sites lay out their pages and navigation elements. Study them and see if you can use any of the concepts they use to make your web site "stickier".

Hervé Deschamps is a Technical Manager with Oracle Corporation. Over the years he has developed a number of applications using Oracle Development Tools and others.  He has an extensive experience of all phases of the development life cycle. He is also known in the technical community for his article publications centered around best custom development practices and for his user group presentations. You can reach him by e-mail at herve.deschamps@.oracle.com. He also maintains a web site full of articles, scripts, tips and techniques at http://www.iherve.com.