The Hive project

This is where "The OpenEdge Hive" is maintained and built. You can find site documentation, submit bugs and feature requests if something on the website does not work well, and you can discuss the features of this website in the Hive group. Submit specific issues on the The Hive Project Issue Tracker and more general discussion on the The Hive Group Forum

The Mission

The OpenEdge Hive was created to be a central resource for users of products of Progress Software. We are seeking to bring together the best open source software into a single site where it will be easy to find. We are providing a rich user interface via forums, manuals, bug reports, feature requests and the like so that the users of software can interact with the authors and each other to better use the software and to improve it through direction and contributions.

All of the software available for download from this site is free. In some cases, there may be a paid version available elsewhere or the software may require some other software that must be purchased elsewhere. In some cases the authors provide consulting services to support the software.

How do I ......

The collaboration features of this website are diverse, we understand if you feel a bit lost at first. The following pages try to make you feel comfortable and explain the most common tasks. If you have further questions, please don't hesitate to ask (using the "contact us" form or using our forum).
When you see a page that needs improvement, you're welcome to add a comment to that page.

Create Content

To create content on the OpenEdge Hive, you must decide both what type of content you want to create and to which group or groups you want the content to belong. The various types of content are described here. All Hive content must belong to at least one group and the group should be chosen so that people subscribed to that group will find your content relevant to their interest area. You must be subscribed to a group in order to add content to that group.

To see a list of all current groups and to update your subscriptions, go here. For some more information on where to put content see here.

To create content, either Browse Groups, select the desired group, and a content menu will appear in the right column or if you already have the necessary group memberships, you can use the links below:

General Content
Book Page, one or more pages on a topic arranged sequentially and in a hierarchy. Only the top page should be linked to the Classification for the site map. Great for multi-part content.

Page, a single isolated page about a topic.

User Link, a database of links to external websites and add descriptions to them.

Project Related Content
Project, a database for issues, bug tracking, and feature requests.

Issue, used to attach issues to Projects

Forum Topic, used to add a new forum topic to an existing forum.

Group, add a new Organic Group, which is a group of people who share a common interest and like to collaborate on that. Often but not neccesarily associated with a Project.

Other Content
Blog Entry, useful for general observations or running commentary.

Image are uploaded in order to use them in other pages.

Poll, used to create a public poll.

Creating good "teasers" or previews

When creating most node types there is a section called Description or Body into which one can put a significant amount of text or more complext HTML. When there is a reference to this node following the Browse by Category links, searching, or other forms of site navigation in which multiple targets can be listed on a single page, Drupal will show a "preview" of the node by displaying a paragraph or two from the top of the Body or Description so that one can have a better idea whether or not it is a node one wants to explore. This brings up two important points for creating optimum site content.

One is that one can insert <!--break--> into the Body or Description to tell Drupal where to make the break. This means that the Preview can be one or two complete paragraphs which provide a good introduction instead of being broken at some arbitrary point.

The other is that one generally wants to avoid putting any but very small images in the Preview portion because otherwise they will take up much more space than is "polite". Because Drupal has no ability to thumbnail or split the image, a large image at the top of the Body or Description will mean an extraordinarily large Preview. Not only does this take up much more space than other people are getting for their text-only previews, but it probably also doesn't provide much information about your node since there will be a limited amount of accompanying text. Note too that one is likely to have formatting problems because the Preview is normally displayed in a narrower center column than will be the case for the full Body or Description. So, the general advice is to put any images below the <!--break--> .

When creating your node, there is a preview button at the bottom which will allow you to see both the Preview and Full versions of your node.

Get started with creating new content

Do you remember subscribing to the Sandbox group, when you first registered? If you don't remember, then you can click the navigation tab in the header and find the list of groups. If you visit the Sandbox group, you will see if you are subscribed, or if you need to subscribe.

You must be subscribed to the Sandbox group in order to use it for playing or for tentative "draft" work. We use this group because all nodes require a group "audience". If you are just playing or working on your first draft, you might not want a big audience. :)

The Sandbox is ideal if you want to play with creating different node types before settling on which node types to use for your new Hive content.

When you create a new node, you will see a series of checkboxes for selecting audience, and that is where you will specify Sandbox.

Use this Sandbox group as the audience if you are just playing or if you are not yet ready to publish the nodes you are creating. If you decide to publish your node, you can change it to another group (other than Sandbox), and request that your new node be referenced from some existing node on the Hive.

You can find the nodes you've created by clicking the recent tab in the header.

How to add favorites

There is a lot of content on The Hive, so you may want to add specific pages to your favorites.
You could simply use the "Favorites" option of your web browser, but that has a the downside that your favorites are only stored on a single PC.

An alternative is to store your favorites as bookmarks in The Hive database!
Many pages have a link near the page footer, with a text like "bookmark this". You only have to click that link once to add the current page to your list of bookmarks.

To see your list of bookmarks, click "my bookmarks" in your personal navigation menu (that's the block in the right column on every page).

How to upload a photograph (or image)

A picture can say more than a thousand words. Yet I am going to waste some words: on the subject of how to upload a picture to this website.

I think there are broadly two purposes for images:
- you are writing some text (like a help topic) and want to attach an in-line image to illustrate the text, or
- the image itself is the subject (for example a photograph) and you want to publish it, probably in an image gallery

Whatever the purpose is, the first hurdle you've got to take is uploading the image. Once you have uploaded the image you can reuse it in articles or galleries all over the website.


Before you begin, make sure the picture is not larger than 1024 pixels wide and 1024 pixels heigh. Smaller is fine, but the website will simply refuse to store your image if it does not fit in a square of 1024x1024. If your picture is larger you will have to use a tool like Photoshop to shrink it before you can try to upload the pic to The Hive.

Create an Image node:

When you are logged in you can choose menu-item "Create content | image" in your personal action menu, or menu-item "create image" in one of the group menus.
A form will appear where you can assign a title and a body text (to describe the picture) and of course a file picker to select the image that you want to upload.
In this form you can also choose to select an "Image Gallery", but this is optional. Galleries are nice for events like Progress Exchanges, for example. When you select a gallery, your image will appear as a thumbnail in the gallery at and the image node will have Prev/Next links so people can easily browse the gallery. Nice!
Note: you can only pick one of the already existing galleries, there is currently no way for you to create a new gallery. If you want a new gallery, please consult one of the site administrators.
Submit the form when you are pleased with what you have entered. The website will store the image (if not larger than 1024x1024) and will also create a small thumbnail. The image will have its own webpage and people will be able to add comments to it.

Insert an image in a text:

When you are editing a node (like for example a help text) you can insert an image into the text. Just below the editor field is a link "add image", when you click it you will see a popup that shows thumbnails of your image nodes. You can select one and fill in some attributes to have it inserted in your text. It is probably pretty self-explaining but there is one catch: the image size. When you select "size=other" you can enter any size you want, but you probably want the original full size of the image. Unfortunately the popup seems to suggest wrong defaults, so you have to remember the correct dimensions and enter them yourself in the dialog.

Redirect from previous site to the hive

Suppose you already have some Progress-related material on your own website, and decide to move it to The OpenEdge Hive, then you may consider redirecting the old location of that material to the new url.

Redirection prevents you from losing your existing visitors. When you don't redirect you may have the following problems:

  • People may have bookmarked your page. When they visit that bookmark, they just find nothing
  • Many Progress related websites have links to other Progress related websites. I have noticed that links are usually not actively maintained, so when you move a page there will be broken links
  • Your old page may have a good Google rank, but the new page won't (just because it is new)
  • It takes quite some time for Google to find the new page, even if the old page was indexed regularly

You could replace your old HTML page with a new HTML page, that redirects users to the new address. Search engines are not very happy with this method, because they will now have to index both the old page and the new page. The new page will still be seen as a new page, with no rank, and the ranking of the old page may actually decrease.

A better method involves editing the .htaccess file on your webserver to set up redirection (assuming that you have access to this file and have permissions to edit it). When I moved pages from to The Hive, I have edited the .htaccess file like this:

## make sure nobody gets the htaccess files
<Files ~ "^[\._]ht">
    Order allow,deny
    Deny from all
    Satisfy All

RewriteEngine on

# permanent redirecting to :

# redirect the old wiki pages:
RewriteRule ^win32/appearance/centerwindow$ [R=301,L]
RewriteRule ^win32/appearance/closebutton$ [R=301,L]
RewriteRule ^win32/appearance/flashwindowex$ [R=301,L]
RewriteRule ^win32/appearance/getdevicecaps$ [R=301,L]
RewriteRule ^win32/appearance/hidetaskbarbutton$ [R=301,L]
RewriteRule ^win32/appearance/lockwindowupdate$ [R=301,L]

# redirect RSS feeds:
RewriteRule ^feed.php(.*) [R=301,L]

# redirect the default page ( "http://www/" becomes ""
RewriteRule ^$  [L]

This assumes that your (Apache) server is compiled with mod_rewrite and that httpd.conf does not disallow you to use it.

Search engines like this method. The R=301 instruction tells them to drop the old address from their indexes and replace it by the new address, and to assign the ranking of the old page to the new page!! And, because this is known as "permanent redirecting", they don't have to attempt to read the old page again.

The advantages are clear:
- there are no broken links
- the new pages are sooner indexed
- your content keeps their Google rankings

Web Services Deployment

Hi, Some One has an complete example of deploy and consumption od Web Services in Progress

Where to put content?

When adding new content to The Hive, there are always two big questions -- what kind of content and where should the content be added. The first question is discussed here. Having picked the type of node or nodes that you want to add, one needs to know where and how to add it. This depends on the nature of the content.

If you are adding multi-part content such as a series of book pages collected into a manual, a series of book pages containing code samples, a project with associated forum, documentation, etc., then the first important point to keep in mind is that one wants one node and only one node from this set to the the top level node, the home, for the whole set. Only this top level node will be added to the site navigation and the rest of the content will be found from there. The Hive editors reserve the right to add new categories and/or switch categories in a way that we feel will make you material most easily found and most appropriately grouped with other related material.

If you are adding a single page of content, e.g., a description with an attached white paper and it is not a part of any larger body of work, then this becomes a single top level node and is handled just like the top level node for something larger.

If what you are adding is a book page or blog entry, i.e., something which isn't really a whole substantive topic all on its own, then you need to attach it below some top level node. If this is a case of supplementing an existing FAQ, for example, then you would create a book page and use the outline tab to attach it to the appropriate place within the book. If it is something more like a blog entry, then you need to figure out what larger topic it might be part of. Don't be afraid to ask us to create some new categories and top level nodes to serve as an appropriate place to connect your content.

Let us know if you have any questions so that we can try to make the most useful site for everyone.

Admins only ....

things to document:

- the purpose of this website
- how can you join
- how can you collaborate in existing projects
- how can you start a new project
- how can you submit a new OpenWare
- how can you get listed on the Yellow or White pages
- what is: OpenWare, product, project, group
- what to do if something on The Hive does not work as expected

.. and much more :-) So lets get started and edit this thing (or sub-pages)

How-to's for admins

Administrators have a lot on their mind, so here are a couple of check lists ....

administrator notes: og2list issue resolved

Here are some administrator notes in case Jurjen ever needs to fix this while I'm away... and because I have a bad memory.

Exim is the mailer agent used by og2list, and it must use an old protocol for connecting to MySQL.

At one point, I'd set "root" user's password to use the old protocol, using the old_password() function, see:

But something must have happened to "upgrade" root's password or something. Maybe it happened while I was using the root user account in MySQL yesterday.

That resulted in this error in Exim's log:
Client does not support authentication protocol requested by server; consider upgrading MySQL client

I created a new MySQL user account for "exim", and applied old_password() to exim's password. There's no reason to use the exim login account for anything other than the exim mailer client, so hopefully this same problem won't happen again.

BTW: Exim's configuration, including its configuration settings for MySQL, are in /usr/local/exim/configure.

There. That ought to be enough keywords that I can find this again using "search". :)



The OEHive administrators maintain a mirror of the site in case of disaster, but EVERY CONTRIBUTOR AND PROJECT ADMINISTRATOR IS RESPONSIBLE FOR BACKING UP THEIR OWN DATA.

Here's what you have to do:

Ideally, you should set up an automated script to update your own mirror of your own data once per day.

You have read-only access to a backup of the databases. OEHive performs its backup of the Subversion and MySQL databases at 19:30 Mountain Time (GMT-7). It would be best not to run rsync at the same time.

Subversion backup mirror example (substitute "prostyle" with your own project name):

rsync --port=1873 -Lr .

What follows is how to mirror the text (complete with markup) from your nodes.
To get your user ID, click on "my account" and look at the user number in the URL. It will be obvious. :) My user ID is 4, so here's an example backup command.

Change the 4 to your own user ID:

rsync --port=1873 -Lr .

browser plugins for Proogle

Mozilla FireFox

(compiled from PEG messages by Gordon Robertson and Scott M Dulecki)

When you use Mozilla FireFox as your browser, you can teach it so search in Proogle.
Here is how:
Locate your FireFox installation directory; on my PC it is "C:\Program Files\Mozilla Firefox"
This directory already has a subdirectory "searchplugins".

Attached to this topic is a file "", it contains two files "proogle.src" and "proogle.gif". Save these two files in the "searchplugins" directory.
The Proogle search plugin will be enabled when you restart FireFox.

MS Internet Explorer 7

The procedure for IE7 is easier, just click the following link (if you are currently viewing this page with IE7): Add Proogle to IE7

Proogle Search Plugin for Chrome

To add the Proogle search engine to Chrome:

  1. Access the Chrome menu (Wrench or three bars, showing tooltip "Customize and control Google Chrome")
  2. Click on Manage Search Engines.
  3. There are three boxes to fill to add a search engine:
    1. Add a new search engine: Enter Proogle or another descriptive name
    2. Keyword: Enter proogle or another string you would like to use to start a search from the address bar
    3. URL with %s in place of query Enter the following string:
  4. Hover over the search string and click the button that says "Make Default"
  5. Click Done

Proogle Search Plugin For Opera

For Opera, there are two ways to add a search engine:

1. Manual.
- Press CTRL-F12 to bring up the settings window
- Select tab 'search engines'
- Click 'add'
- Click 'details >>'
- Enter the data for the search engine:
name : Proogle
key : P

2. Changing search.ini
- locate the search.ini file in directory C:\Documents and Settings\\Application Data\Opera\Opera\profile\
- add the following lines:

[Search Engine 22]
Is post=0
Has endseparator=0
Search Type=0

Don't miss the news... subscribe!

New projects (or releases) may be added any time, or perhaps there are discussions about projects you are interested in. Or maybe someone posts bugs and feature requests for projects and your feedback matters. But how do you know if something interesting is happening?

You could visit the site daily/weekly and click the "recent" tab to find out what's new, but that is boring and we don't expect you to do that. Instead, you can have the news come to you! There are several different ways:

1. receive a daily digest by e-mail

The daily digest is a very modest e-mail and is sent once a day, but not on days when there is no news. The e-mail contains headlines and links to new pages and new comments and gives you a clear overview of the day. You can subscribe and unsubscribe any time you want. To subscribe, you have to be logged in and go to "my account" and then choose tab "my notify settings". It is easy and I would highly recommend it.

2. subscribe to group mailing lists

You are probably more interested in some projects than in other projects, and you don't really want to wait for the daily digest to hear news about your favourite projects. You can't really participate in a hot discussion when you only have a daily digest.

In that case, group subscriptions are the Big Thing: everything is linked to groups (to name one example the "Prolint project" is linked to the "Prolint group") and you can subscribe anytime to any group. Or unsubscribe.

When you are subscribed you can also enable/disable e-mail notifications. How it works: each group has its own e-mail list; every change is immediately e-mailed to that e-mail list; the list forwards the e-mail to every subscriber who has notifications enabled. But, unfortunately for us, it is disabled by default...

To enable e-mail notifications, go to the group you are interested in. Subscribe to the group (if you have not already). Then, in the group menu choose option "my subscription". You get a page where you can enable/disable e-mail notifications for that group.

3. RSS feeds.

Almost every page has RSS feeds.
For example when you click tab "projects" you get to see a dynamic listing of everything that we consider to be a project. Near the bottom of that page is an RSS icon. When you teach your feedreader to monitor that feed, it will notify you when a new project is added to the site.
Similar RSS feeds are everywhere on the site, even in the Subversion repository so you can monitor if our hardworking code volunteers are really as hardworking as they claim to be.

One advantage of RSS feeds is that you don't need a user account to use them. An other advantage is that you can have very specific feeds, like "new items in the issue tracker of project XYZ" or "new blogs by user Joe" if that's what you are interested in.


The Hive is running on Drupal.

The Drupal Handbooks provide relatively good documentation for a free, open-source product. They are highly recommended if you are interested in a little more detail.

Contributor's note: Please use this page, or add child pages, to add more helpful hints about using Drupal on the hive.

Projects vs. "project nodes"

You aren't required to have a project node in order to have a project!

A project on the Hive is anything that is active, growing, and being maintained. Even a library of web resources, or a library of articles, can be considered a valid project on the Hive.

If you want your project to be listed, just tell us which node to add to the list. It can be any kind of a node, like a "page" node, a "group" node, or even a "project" node. :)

A project node provides an issue tracking system. That's it. It's also supposed to provide a "releases" system, but that seems to be currently broken in the Drupal "Projects" module. Hopefully they will fix it soon.

RSS Feeds

I've installed a third-party module called "totalfeeds". Hopefully it will give us some better options for getting extensive RSS feeds from across the whole site.

For example, the RSS feed from the front page now seems to give us "all site new content" RSS, rather than just the front page itself.

I've set the default feed format to be RSS 2.0.

/node/rss.xml: Is turned into default format feed for all new content
/node/rss.xml/rss: RSS feed for all new content
/node/rss.xml/atom: Atom feed for all new content

/node/[id]/feed: default feed format comment feed for Node with id [id]
/node/[id]/feed/rss: RSS comment feed for Node with id [id]
/node/[id]/feed/atom: Atom comment feed for Node with id [id]

/comment/feed: default feed format all comments feed
/comment/feed/rss: RSS all comments feed
/comment/feed/atom: Atom all comments feed

/taxonomy/term/[id]/feed: Turned into default format feed for all posts of given term
/taxonomy/term/[id]/feed/rss: RSS feed for all posts of given term
/taxonomy/term/[id]/feed/atom: Atom feed for all posts of given term

site tools

On "The Hive" you can find Progress related projects, discuss and collaborate, or start your own project and invite others to join you.
Several site tools are available to you:


A project is a database for issues, bugtracking, and feature requests.
"releases" is currently broken, hopefully fixed with next version of this optional module. Fortunately, you can add attachments to almost everything.


Group is a tool that facilitates collaboration among people that share an interest. Each group has:
- discussion forum with optional integrated emailing list
- subscribers to the group may receive notifications of new content
- all non-group nodes (ex: pages, blogs) are associated with one or more group nodes
- the group node itself lists recently added nodes associated with this group node

When you are subscribed to a group and have notifications enabled, you will receive an e-mail whenever someone adds something to the group.

User Links

In User Links (see here) you can build a database of links to external websites and add descriptions to them - which will be found by the Search function. With enough projects, groups and links to Progress related content, the Hive will be the one-stop shop when you are searching for anything Progress.

Version Control

We can set up Subversion repositories for your group or project.


You can add comments to almost everything, which means that almost everything can behave like a Forum discussion.
But if you don't like that, you can also disallow comments on your pages.

Page and Book Page

Both are just pages, with a title and a body and optional comments. Both Pages and Book Pages can be added to a Book outline, the only difference is that a "Page" can stand alone without a book, while a "Book Page" is always bound to a book. Or: if a Book Page is not in a book, then it IS a book and gets listed in the list of books at This is what we don't want unless the Book Page actually does have child pages.


Not a node type in itself, but is an arrangement of nodes. A book gets its own left column navigation menu. Nodes of pretty much any type (even a Group node or a Project node or a Forum topic) can be added to a book/outline.


Image nodes are necessary for showing images inline within other node types. Image nodes can also be arranged in picture galleries although we have not configured that.


a Story is similar to a Page: it has a title and a body and not much more. Stories do not show their author and their DateTime of last change, so we think that the Story type is not adequate for anyone but site administrators.

White and Yellow Pages Submissions

Submission requirements will shortly be changing because we are in the process of revamping the entire system. Please be patient. The following rules do still apply, the changes will happen to future submissions. Thanks for your understanding.

All submissions must be relevant to OpenEdge, Progress Software, software development, or this site. Editor's discretion.

A URL must be of the form "http://www.domainname.topleveldomain/" to be accepted.

White pages: the displayed link name may be up to 30 characters. For example:

<a href="">Up to thirty characters</a>

Yellow pages (free): up to 150 characters for your submission, including the displayed link name. Your submission may be copied into a number of requested categories, at the editor's discretion.

Submit your entry here for approval:


Yellow Pages Additional Text and Logos

These requirements WILL be changing because we are in the process of revamping the entire system. Please be patient. The following rules do still apply, the changes will happen to future submissions. Thanks for your understanding.

Also use the contact form to request the purchase of space for your logo or additional text to your Yellow Pages entries. Your fees help support this site and its hard working volunteers.

US$5/yr/entry for each additional 150 characters, max additional characters/entry: 600. Sorry, no line breaks.

Logo: US$5/yr/entry for each 3,000 pixels. Max width 300, max height 100.