Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

About WebMVC (Freemarker) UI

WebMVC is currently under development, and is creating a new user interface based for DSpace built on top of Spring's WebMVC framework. This has the same goals as the JSPUI rewrite project in providing The goals of the project is to write the user interface in a clean technical implementation, with business logic removed from the presentation layer.

Although a At the presentation/view layer, any number of technologies can be used for the presentation layer, the current implementation focuses on Freemarker - a template based language that restricts the amount of logic that you can place in the presentation layer. In addition, it gives more flexibility as to where those templates can be stored, which gives greater possibilities for future customisation.could have been used including JSP's, however the current implementation in the WebMVC project is to use Freemarker, a templating language. 

It has extensive theme support, and allows different themes to be applied to different areas of a repository.

Development is ongoing, and as an open project, it could always use assistance. Fork this project on GitHub, and start contributing todayhttphttps://scmgithub.dspace.org/svn/repo/modules/webmvc/trunk/com/DSpace/webmvc

Issue tracking will be done in GitHub Issues.

The old Jira issue tracker for this project is still up, but we are no longer adding issues thereIssue Trackinghttps://jira.duraspace.org/browse/DWMVC

This project also has its own GSoC 2011 Student Project: GSoC 2011 - DSpace WebMVC

Getting Started

Add the webmvc module into WebMVC is a module add-on to DSpace. The instructions below will guide you how to check out a stable release of DSpace, and alter it so that it references the WebMVC project into its build process.

Checkout the source code.

Code Block

mkdir project-webmvc
cd ~/project-webmvc
svn checkout co httphttp://scm.dspace.org/svn/repo/dspace/tags/dspace-1.7.1/dspace/
svngit clone co httpgit://scmgithub.dspace.orgcom/svnDSpace/repo/modules/webmvc/trunk/ webmvcwebmvc.git

Edit ~/project-webmvc/dspace/pom.xml and add an entry for webmvc.

Code Block
diff
diff

<!--
Builds Overlay Modules for DSpace
Index: pom.xml
===================================================================
--- pom.xml	(revision 6625)
+++ pom.xml	(working copy)
@@ -505,6 +505,7 @@
-->
<modules>
<module>modules</module>
+ <module>	<module>../webmvc</module>
</modules>

<build>

Compile everything, and add the war for freemarkerui to Tomcat

Code Block
cd ~/project-webmvc/dspace
mvn package
sudo mkdir /dspace
sudo chown dspace:dspace /dspace
cd target/dspace-1.7.1-build.dir
ant init_configs
ant update

## Add the .war to tomcat, there are many ways of doing this.
sudo cp cp ~~/project-webmvc/webmvc/freemarkerui-webapp/target/dspace-freemarkerui-webapp-1.7.0-SNAPSHOT.war /var/lib/tomcat6/webapps

## Edit /dspace/config/dspace.cfg to Edit your dspace.cfg to have your bootstrapping database configs (i.e. dbname, password)
vi /dspace/config/dspace.cfg

/etc/init.d/tomcat6 restarttomcat6 restart

Test it out in your browser

...

Additionally, WebMVC has multiple themes (Mirage and Kubrick), the default theme is Oasis.