An FYI on some completed site fixes.
Most of this magic is in the perl code in these two files:
- /openejb/site/trunk/lib/view.pm
- /openejb/site/trunk/lib/path.pm
## Bad // in breadcrumbs
Fixed the code that creates breadcrumbs links that had '//'
## APIs used
Added some code to create a list of APIs used in each example. Basically greps
all the *.java files and pulls the imports, then creates a list of links which
currently link to the JavaDoc for those APIs at oracle.com
Possible improvement: If we think we're up to it, we might start documenting
them better here. Perhaps a page for each API class with some hand created
text to describe it in a paragraph, then a list of examples that use that
annotation. Perhaps even show small snippets (3-5 lines of code) from each.
We'd need a small army of excited documenters to make a dent though.
## Sharing links
Added Google+, Facebook, and Twitter links to make it easy to share pages on
the website.
Possible improvement: Thought it might be neat to have a "comment" link right
under those buttons. Something that would pop up an email addressed to users@
with the subject filled in using "Comment: $title" and a link to the doc in the
email body.
## Sitemap.xml
Had already added a bit of perl to generate a sitemap.xml, though it didn't
list all our content. Fixed that up so it is properly recursive and now
finally lists all our example pages.
Also added a robots.txt which lists the sitemap.xml. Hopefully that will
improve our search support which is all driven by Google. If Google hasn't
indexed the page, it won't come up in the search. So orphaned pages would
never show up. Now they will as at least they'll be listed in the sitemap.xml.
You can also use that file to rank some pages higher than others. I have any
page under 'examples' ranked higher so they are revisited more often.
## Including content from other pages
Had also added a confluence-like {include:foo.mdext} "marco" to read in other
files and include their content. It wasn't taking into account the links in
that content and that they might need to be adjusted. If you include from a
doc in a child directory, then the relative links need to be updated. Fixed
that.
-David