This How To`s Page wants to document our efforts on the socalled quick and dirty
workarounds for every issue which may arise during your work with DeepaMehta.
This may be useful for people who want to use the latest code from between our releases or want just the easiest update process for their installed DeepaMehta. We therefore make use of a command line tool, which you have to install in before. If you installed a tool like subversion, you may want to check out our code with one of the lines you find at the following webpage.
To get started run the following lines from your command line to build DeepaMehta from source code.
cd trunk/ ./run.sh build ./run.sh install
If you additionally want to use DeepaMehta with web-frontends you have to configure the usage of our mysql backend. Therefore you have to enter the following commands which will guide you through a dialogue to configure a new DeepaMehta instance on your machine with mysql under the hood. Just make sure you have mysql installed and have the root password available then the script will do everything for you. Finally just enter the path to your tomcat server.
./run.sh newinstance ./run.sh initialize
Instead of checking out from a command line you can use the favourite IDE of your choice. Within the trunk there is a pre-configured Eclipse Project. This will help you to get through the following steps a bit faster, cause running ./run.sh build from a command line will return an error where it is written in the first
"de.deepamehta.service.db.AutoFreeConnectionStatement is not abstract and does not override abstract method isPoolable() in java.sql.Statement"
then you can get either download and install an older version of java or proceed in two ways from here. Take the one you are more familiar with
1) Open your DeepaMehta Home directory in your favourite Java IDE and auto-complete the code for the classes
de.deepamehta.service.db.AutoFreeConnectionStatement.java de.deepamehta.service.db.AutoFreeConnectionPreparedStatement.java
2) Download the following two files and copy them into your DeepaMehta Home directory within the folder develop/src/de/deepamehta/service/db/
AutoFreeConnectionStatement.java for Java 1.5.
AutoFreeConnectionPreparedStatement.java for Java 1.5
After you have done that, you first have to ./run.sh build otherwise you will get a message saying "ClassNotFoundException".
Now you are ready for a successful ./run.sh from the latest code source and you can update the latest features to test through svn update
The web applications may be another how to, but just shortly about that what comes to my mind.
To control your Tomcat you should use the following commands from within your DeepaMehta Home directory, cause otherwise DeepaMehta won't find your icons while started from Tomcat.
./run.sh tomcat-start ./run.sh tomcat-log ./run.sh tomcat-stop
If you want to deploy and modify some of our pre-delivered example applications you can build and deploy the right into tomcat through running, for example the following lines out of your DeepaMehta Home directory.
./run.sh build -f install/examples/dm-topicmapviewer/build.xml or ./run.sh deploy -f install/examples/dm-topicmapviewer/build.xml
For further informations on our ./run.sh script, please read the, it cover more details.
Malte 13-Feb-2009 14:29 GMT
1) Backup your existing DeepaMehta App
deepamehta-home/install/client/DeepaMehta.jar
2) Download this experimental DeepaMehta App which supports a new visualization property "Page" and copy it at
deepamehta-home/install/client/DeepaMehta.jar
3) Download the PDF Custom Topic pdfTopic.jar
4) Download the PDF Renderer PDFRenderer.jar library and place it into your deepamehta-home/libs directory
5) Create a custom topic as a 'subtype' of topictype document and name it e.g. PDF. and enter the name of the custom implementation class, as described at the file's download page (at step 3)
6) Create a custom "Property Value" of name "Page" for the "Visualization Property" at Topic "TopicType" itself (Same Level as e.g. Property Value: "Multiline Input Field")
Usage 7) Drop a 'small' pdf document into your map and retype it into a your just before created "PDF" TopicType.
Note: Currently you cannot change the underlying file/document once a "PDF" Topic was created.
addtionallty, make sure that you have entered the path of your pdfTopic.jar into the appspath of your build.xml file.
nice greetings from allepey, sitting in front of a fan while sweating liters of water ;)!
thanks for info about the tickets and i wish you all a happy and successful start for the cebIt!
Malte 02-Mar-2009 06:42 GMT
There are different ways to use your DeepaMehta installation
Hint 1: You can embed the client applet in your own webpage by using the <object> tag. Like here or here.
Hint 2: If you want to run the DeepaMehta server in an headless environment, i.e. without a graphics environment you must set the java.awt.headless system property when starting the server. This can be done by putting the following line in the "dms" target of build.xml (section )
<sysproperty key="java.awt.headless" value="true"/>
Hint 3: If you want the DeepaMehta server to start automatically while booting the server machine you must put the commands "cd <DeepaMehta>; ant dms" in your startup scripts. How this is done depends on your server platform (Windows, Linux, Mac OS, ...)
Go to the "Administration" workspace (via popup menu) and click the "CorporateWeb Settings" topic. Enter the SMTP server (e.g. "mx.provider.de") in the appropriate field.
Note: the "Administration" workspace appears only if you are a DeepaMehta administrator (e.g. "root"). => Meanwhile I've set a SMTP server, so the mail feature should work now!
(which menu is meant, my own command menu) There are two ways to remove a topic type from the menus.
Generally the "Type Access" associations control which users have access to which types -- concretely which types appear in the users "Search", "Create" and "Retype" menus. The "Access Permission" property" of a "Type Access" association controls in which menus the type appear. There are 2 permission values: "view" and "create" (and a third not explained here). "view" let the type appear in the users "Search" menu and "create" let the type appear in all of the 3 menus.
"Type Access" associations assign types to users and to workspaces. Types assigned to users are called "personal types". If a user creates a type it is a personal type. A user has access to its personal types as well as to the types assigned to workspaces he is a member of. Thus, the "Type Access" mechanism provides the basis for permission control in regard of shared workspaces and collaboration.
Can't get rid of topic deleted in other window?
Workaround: close and reopen the topic map which contains the "broken" topic. It should be vanished.
To read the Messages just right-click in the Forum Map and then click "Show Messages". As on every topic map, you have to create your own point of view of the data. Then you get a result container with nice answered questions for the usage of DeepaMehta. This Document you are reading, is based on the entries of our Forum. The Forum is exported/published automatically to the DeepaMehta Website.
DeepaMehta's affordance of extremely immediate bimodal manipulation of topics/ texts (namely viewing and connecting/ rearranging them) is IMO so rewarding that it justifies an import procedure which is currently still very cumbersome, especially if done for the first time. (More here.)
My report is based on the following scenario
The import procedure involves the following steps:
After the SQL frontend program HeidiSQL is installed and started,
(This step would perhaps be simpler with an XSLT transformation but I hope it will be altogether hidden behind a nice import interface.)
(If your browser insists that this should be of filetype .xml you may have to rename it back.)
awk -f wp2dm.awk SQL-query.xml > map.xml
(it is assumed that all 3 files are in the home directory which is current at the prompt)
(this was necessary because the HeidiSQL preferences checkbox of "Convert HTML entities..." seems to be ignored; someone who is familiar with the unix command line will probably pipe the awk output to a small sed command).