1
Watch
0
Star
1
Fork
0
Issue

Forum Web Application with feature set superior to phpBB

ugorji
ugorji
pushedAt 11 months ago

ugorji/collab-forum

collab-forum

This forum was created due to a number of pressing problems we saw in available open-source Java based (Servlet/JSP) Forum Engines.

  • Using the database for everything, including searching and indexing
  • No free forum that allows sub-forums to any depth
  • No free ones having all the capabilities we wanted in one package, especially:

We directly leverage a bunch of open-source products:

Dependencies

This repository is part of a multi-project gradle build.

It has the following dependencies:

Before building:

  • clone the dependencies into adjacent folders directly under same parent folder
  • download settings.gradle into the parent folder

Building

gradle clean
gradle build

Running

gradle appRunWar

Initialization

To start, you must have access to a database.

You can have your admin create a database instance using the commands below:

CREATE USER 'collab'@'localhost' IDENTIFIED BY 'pw4collab';
CREATE DATABASE collab;
GRANT ALL ON collab.* TO 'collab'@'localhost';

Thereafter, you can login to use it locally using

/usr/local/mysql/bin/mysql -u collab -ppw4collab collab

Once in, you can do the following:

source src/main/resources/net.ugorji.oxygen/forum/database/mysql.sql

Usage Information

The user manual is available at src/main/resources/net.ugorji.oxygen/forum/help.txt. We store it there since it has to be loaded up by the forum engine to show bundled help.

Software dependencies

  • Mandatory
    1. oxy-jdk-extensions.jar
    2. oxy-common.jar
    3. oxy-markup.jar
    4. oxy-forum-classes.jar
    5. oxy-forum-resources.jar
    6. commons-logging.jar,
    7. commons-fileupload.jar, (1.1 has a bad bug, causing all filenames to be lowercase)
    8. commons-io.jar
    9. lucene-core.jar,
    10. freemarker.jar,
    11. org.suigeneris.jrcs.diff.jar
    12. jpa.jar
    13. jta.jar
  • Mandatory (required if using hibernate)
    1. hibernate.jar
    2. hibernate-annotations.jar
    3. hibernate-entitymanager.jar
    4. hibernate-commons-annotations.jar
    5. jboss-archive-browsing.jar
    6. antlr.jar
    7. javassist.jar
    8. dom4j.jar
    9. ehcache.jar
  • Mandatory (required if using openjpa)
    1. openjpa.jar
    2. commons-lang.jar
    3. jca.jar
    4. serp.jar
  • Optional
    1. ehcache.jar (if using ehcache as markup caching provider.)
    2. radeox_base.jar (only if leveraging radeox macros)
    3. bsf.jar (only if using the script macro - some people disable this for security reasons)
    4. bsh.jar (only if using the script macro - and leveraging beanshell as your scripting engine)
    5. jhlabs-imaging.jar (only if using captcha, to prevent spam, and ensure humans post entries to the forum)
    6. rome.jar (only if using rss macro)
    7. jdom.jar (only if using rss macro - rss macro uses rome.jar which internally uses jdom.jar)

Misc

Locale Management

In the forum, there is only one big sandbox. Consequently, a locale must only be set administratively, and applies to the whole forum. The locale set is the same one which is used as the language for creating topics and posts.

ucloud ads