- GnowsisProjectPlan - first thing for everybody
- GnowsisProjectStructure - where is which file?
- html documentation - plus Javadoc
- LoggingAndDebugging - using logging and debugging to find out what happens
- AddingNewFeatures - you have an idea! what to put in tickets, what to put in the wiki, the process
- Use meaningful SVN commit logs that outline the changes made - see commit guidelines or the committers guide
Get it running
To get gnowsis running in development mode, do the following.
Java 1.5 You need Java 1.5. And we would recommend you download the SDK, not the JRE.
Eclipse We recommend to use the Eclipse SDK for Java development of gnowsis. Our developers are using Eclipse 3.1.0 at the moment, this proved to be a good choice. You can use 3.2, it should also work. The following plugins are good to have and are used by use:
- subclipse for subversion access
- VisualEditor and GEF, install via default Exclipse update site.
- It's easier to use the central plugin directory. (see http://wiki.km.opendfki.de/EclipseHowTos)
on MacOS it is wise to install JavaHL additionally, this is used by Subclipse, and subclipse will die if it is not there. get metissian containing javahl here.
getting the code
The subversion repository is
There you check out these projects, the most important projects to check out are:
- gnowsis - starter
- gnowsis-server - core
- enquire2006 - gui
- kaukoluwiki - the semantic kaokolu wiki
- sesame1 - web api for gnowsis
Use Eclipse 3.1 with Subclipse 0.9.105 on Windows. Then it has to work, as Leo develops this way. It should work on all operating systems using any SVN client, though.
Note: If you get this error: Unable to access https://...., unable to access site ...., sun.security.validator.ValidatorException: PKIX path building failed: ...PathBuilderException: unable to find valid certification path to requested target then you probably didn't say "yes" when you where asked this: Error validating server certificate for https://gnowsis.opendfki.de:443: - Unknown certificate issuer Fingerprint: 57:23:96:60:c7:4e:4b:04:8a:9a:a1:1e:02:59:8a:11:52:0c:6e:97 Distinguished name: http://www.cacert.org, Root CA. So, to fix this, you can either press "Accept permanently" in the right moment or look in this directory for more: <yourhome>\Application Data\Subversion\auth
If you want to do Aperture development:
- Aperture in CVS: cvs -d:pserver:email@example.com:/cvsroot/aperture login
- host: cvs.sourceforge.net
- repository path: /cvsroot/aperture
- connection type: pserver
- username: anonymous
- password: empty
- Checkout project aperture
Getting it to start
The gnowsis project has the launcher for you.
- If you have gnowsis checked out - the "run..." menu should have a list of favourites:
- Windows start gnowsis
- MacOSX start gnowsis
- The GnowsisInstaller will show. satisfy it.
- pressing close. gnowsis installs now silently. stand up, take a breath. think of something positive. notice the new simplicity. tell somebody a nice thing. sit down again.
Note: If above options do not show up in the "run" menu, then Eclipse has hickups. We then usually open the "navigator" view, go to the "gnowsis" project and double-click all "*.launch" files. That opens the launch files in the text editor and tells eclipse that the launch configurations exist. Then the launch files are available in the long list you see at "run...". Start gnowsis there using the Windows start gnowsis launch configuration (or alternative). After you have done this once, Eclipse will know and the launcher will be in your favorites.
- Understanding Gnowsis read this document to know more about the parts of gnowsis and how they work together.
Use Eclipse debugger to debug.
To set the general log level in gnowis, do that:
open .gnowsis-beta/config/workspace.xml change this line: <LogLevel>INFO</LogLevel> allowed levels are all java.util.logging.Level levels: SEVERE, WARNING, INFO, FINE, FINER, FINEST
Individual logging levels are set in this file:
.gnowsis-beta/config/logging.properties # add this to bottom # set the loglevel of a specific package de.opendfki.kaukoluwiki.level = FINER
Specific Fields of Development
- AdapterDeveloping - how to write an adapter and make gnowsis use it?
- EmailDeveloping - specific stuff related to e-mails
- GeoDeveloping - what we can do, want to do with geographic stuff
- GnognoComp - the gnogno-gui framework tutorial (from gnowsis.org website, latest version in SVN).
- GnowsisConfiguration - where to put configuration files?
- GnowsisFixedUris - what are these static uris about?
- GnowsisGuiTips - how to hack guis for gnowsis, brainstorm and concrete ideas.
- GnowsisOnTheMac - Mac OsX adaption
- InstallerDeveloping - howto make an installer, what can we use
- KaukoluwikiDeveloping - extending the wiki
- MozillaDeveloping - how to setup an environment to hack Mozilla XPI extensions
- NicerGui - how to brushup the gui
- PimoInference - inferencing on the pimo
- ProblemsWithEclipse - what problems do we have and how to usually get them solved
- QueryingGnowsis - how to write queries
- SearchDeveloping - developing the web-based desktop search and retrieval service
- SesameDeveloping - how to come along with Sesame2
- Services - how to create new services
- WebInGnowsis - how to program java server pages, HTML pages, AJAX, and why stuff doesn't work as usual.
- XmlRpcDeveloping - links for XMLRPC
The first thing you might want to do is to write your own datasource, Gnowsis can deploy your own datasources without having to change the gnowsis code: See DynamicDatasources for more information! Also, you may be interested to improve gnowsis and help fixing broken code, look at bugtracker: report:1. Then JoinGnowsis.