This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
magik-demo:developer:magik-project [2013/05/15 12:29] admin |
magik-demo:developer:magik-project [2017/07/06 15:24] (current) |
||
---|---|---|---|
Line 1: | Line 1: | ||
+ | {{:magik-demo:magik_logo.png?nolink&500|}} | ||
+ | |||
+ | ====== MAGIK Project ====== | ||
+ | |||
This document describes how to manipulate with MAGIK project. \\ | This document describes how to manipulate with MAGIK project. \\ | ||
In particular how to: | In particular how to: | ||
Line 14: | Line 18: | ||
=== Steps === | === Steps === | ||
+ | - First step is to set the DLV executable file path and PROLOG folder (for the code to execute for the specialization) by setting up environment variable | ||
+ | - Detect where is located the folder magik_libs | ||
+ | - Copy the (absolute) entire path (file name included) | ||
+ | - Put in an __ENVIRONMENT VARIABLE__ called **MAGIK_LIBS**. An example: <code> DLV_PATH =/Users/user/Documents/workspace/MAGIK_WEB_3/magik_libs</code> | ||
+ | - E.g., on Mac OS X or Linux Operating systems, one can set this environment variable the following command in terminal <code>$export MAGIK_LIBS=aboslute_path_to_your_local_magik_libs</code> | ||
+ | |||
- Deploy WAR file to Apache Tomcat server. \\ There are two ways to do it: | - Deploy WAR file to Apache Tomcat server. \\ There are two ways to do it: | ||
- Using **Tomcat Web Application Manager** | - Using **Tomcat Web Application Manager** | ||
Line 30: | Line 40: | ||
- Specify database connection for MAGIK web application. | - Specify database connection for MAGIK web application. | ||
- | [[magik-demo:developer:magik-project|Back to Top]] | [[magik-demo:start|Back to Home Page]] | + | [[magik-demo:developer:magik-project|Back to Top]] | [[magik-demo:start-here|Back to Home Page]] |
===== Import MAGIK Project in Eclipse ===== | ===== Import MAGIK Project in Eclipse ===== | ||
Line 37: | Line 47: | ||
| | ||
=== Steps === | === Steps === | ||
- | * Download Eclipse 3.x. Choose a workspace folder (not the one using for MEGIK-DEMO SVN). | + | * Download Eclipse 3.x. Choose a workspace folder (not the one using for MAGIK-DEMO SVN). |
- | * Install Eclipse plugin ''subversion.tigris.org'' for SVN control (see instruction http://web.mit.edu/6.005/www/fa11/psets/ps0/subclipse.html) | + | * Install Eclipse plugin ''subversion.tigris.org'' for SVN control (see instruction http://web.mit.edu/6.005/www/fa11/psets/ps0/subclipse.html). Alternatively, one can use any SVN control program (e.g., svn command line tool, SmartSVN, etc.) but here we provide instruction for ''subversion.tigris.org'' only. |
* Import MAGIK project: | * Import MAGIK project: | ||
* ''File>Import>SVN>Check out project from SVN'' | * ''File>Import>SVN>Check out project from SVN'' | ||
- | * Create new repository location, and enter in the URL field: ''https://babbage.inf.unibz.it/repositories/svn/osavkovic/MAGIK-DEMO/Implementation''. Use your unibz credentials for the username and password. Beforehand, you need to obtain reading rights for the SVN (request by email). | + | * Create new repository location, and enter in the URL field: ''https://babbage.inf.unibz.it/repositories/svn/osavkovic/MAGIK-DEMO/Implementation/MAGIK_WEB_[VERSION]''. Use your unibz credentials for the username and password. Beforehand, you need to obtain reading rights for the SVN (request by email). |
* Select MAGIK folder and press Next. Again Next. And Finish. Now the Eclipse should import the project and MAGIK folder (with small database icon) appears in the package explorer. | * Select MAGIK folder and press Next. Again Next. And Finish. Now the Eclipse should import the project and MAGIK folder (with small database icon) appears in the package explorer. | ||
- | * **DLV API** for Win, Mac and Linux comes within the project. | + | === Running MAGIK from Eclipse in localhost === |
- | * DLV systems offers DLV Wrapper to use DLV in Java Object Environment (''http://www.dlvsystem.com/dlvsystem/index.php/DLV_WRAPPER''). | + | * To do so, one needs to link locally installed Apache Tomcat with Eclipse (see [[http://www.coreservlets.com/Apache-Tomcat-Tutorial/eclipse.html| tutorial]]). Go to ''File>New>Other''. Find ''Server'' and click ''Next''. Then choose ''Apache>Tomcat v7.0 Server'' and click ''Next''. Then go ''Browse'' and enter the local directory path where Apache Tomcat is installed. Finally, click ''Finish''. |
- | * Wrapper Installation instructions - a remainder: | + | * To run your MAGIK copy within Eclipse, right-click on the main project folder and then go to ''Run As>Run on Server'' and then ''Finish''. |
+ | |||
+ | === DLV API === | ||
+ | * DLV is an Answer-Set Programming solver that MAGIK uses internally to reason about completeness. | ||
+ | * DLV executable files for Win, Mac and Linux comes within the project. They are located in project directory ''/lib'' | ||
+ | * DLV systems offers DLV Wrapper to use DLV in Java Object Environment (''http://www.dlvsystem.com/dlvsystem/index.php/DLV_WRAPPER''). | ||
+ | * In case Eclipse is not able to find DLV using relative path, edit class ''it.unibz.inf.magik.core.DLV_engine'' and set absolute path to your DLV executable. | ||
+ | * Wrapper Installation instructions - a remainder: | ||
* Go to ''http://www.dlvsystem.com/dlvsystem/files/DLVwrapper-v4.2.jar''. Add this file to your MAGIK libraries (RightClick on ''project>Properties>Java Build Path>Libraries>Add external JARs''). | * Go to ''http://www.dlvsystem.com/dlvsystem/files/DLVwrapper-v4.2.jar''. Add this file to your MAGIK libraries (RightClick on ''project>Properties>Java Build Path>Libraries>Add external JARs''). | ||
- | * Depending on the OS (Win, Mac, Linux) one will use different DLV executable. The committed DLV executables for major systems are in the project folder ''/dlv''. | + | * Depending on the OS (Win, Mac, Linux) one will use different DLV executable. The committed DLV executables for major systems are in the project folder ''/lib''. |
* To test your DLV API, we created a ''JUnit'' class ''TestDLVAPI'', which one should run to test whether DLV API is properly installed. Finally, set a path variabile DLV_PATH to the absolute path of your DLV executable. | * To test your DLV API, we created a ''JUnit'' class ''TestDLVAPI'', which one should run to test whether DLV API is properly installed. Finally, set a path variabile DLV_PATH to the absolute path of your DLV executable. | ||
- | [[magik-demo:developer:magik-project|Back to Top]] | [[magik-demo:start|Back to Home Page]] | + | [[magik-demo:developer:magik-project|Back to Top]] | [[magik-demo:start-here|Back to Home Page]] |
===== MAGIK Project Description ===== | ===== MAGIK Project Description ===== | ||
MAGIK Web application is developed using Eclipse as a Web development platform, with the type of [[http://help.eclipse.org/indigo/topic/org.eclipse.wst.webtools.doc.user/topics/ccwebprj.html|Dynamic Web project]]. | MAGIK Web application is developed using Eclipse as a Web development platform, with the type of [[http://help.eclipse.org/indigo/topic/org.eclipse.wst.webtools.doc.user/topics/ccwebprj.html|Dynamic Web project]]. | ||
Line 66: | Line 83: | ||
* ''[[#it.unibz.inf.magik.db|it.unibz.inf.magik.db]]'' | * ''[[#it.unibz.inf.magik.db|it.unibz.inf.magik.db]]'' | ||
* ''[[#it.unibz.inf.magik.exception|it.unibz.inf.magik.exception]]'' | * ''[[#it.unibz.inf.magik.exception|it.unibz.inf.magik.exception]]'' | ||
- | * ''[[#it.unibz.inf.magik.hibernate|it.unibz.inf.magik.hibernate]]'' | + | * ''[[#it.unibz.inf.magik.hibernate|it.unibz.inf.magik.hibernate]]'' |
* ''[[#it.unibz.inf.magik.test|it.unibz.inf.magik.test]]'' | * ''[[#it.unibz.inf.magik.test|it.unibz.inf.magik.test]]'' | ||
* ''[[#it.unibz.inf.magik.web|it.unibz.inf.magik.web]]'' | * ''[[#it.unibz.inf.magik.web|it.unibz.inf.magik.web]]'' | ||
Line 91: | Line 108: | ||
</code> | </code> | ||
- | [[magik-demo:developer:magik-project|Back to Top]] | [[magik-demo:start|Back to Home Page]] | + | [[magik-demo:developer:magik-project|Back to Top]] | [[magik-demo:start-here|Back to Home Page]] |