JavaZOOM Web Site jChatBox homepage
  Software
  
Installation
  
Configuration
  
Administration
  
User guide
  
API & Extension
  
License

<< back

- Installation -

jChatBox is a 100% JAVA JSP/Servlets chat application. A [WAR] archive is now available to make jChatBox installation easier. It needs a servlet engine SERVLETS 2.2+ API compliant. It's strongly recommended to use this WAR archive to install jChatBox. See installation instructions.

However, if you want to install it manually then r
ead [General] instructions or check out information about specific platforms : [Tomcat] [JRun] [Resin] [Weblogic] [ServletExec] [WebSphere].

You can also read [
security features] to make jChatBox installation 'perfect'.

WAR Installation

jChatBox is available as a WAR archive. It's a SERVLETS 2.2 standard archive for Web Applications.
What does it mean ?... It means that WAR installation is as easy as a copy/paste, regardless to the servlet engine vendor.

  1. To install jChatBox WAR archive, copy jchatbox.war under the webapps folder of your servlet engine before running it. That's all :-)
    Note1 : webapps folder depends on your servlet engine. It could be webapps/, applications/ ...
    Note2 : For most application servers, you just have to upload jchatbox.war from the admin console.
    Note3 : The WAR file will be automatically uncompressed under jchatbox/ folder.

  2. Run jChatBox :
    Start your servlet engine or application server.
    Documentation
    : http://yourserver.com/jchatbox/documentation/index.html
    Administration : http://yourserver.com/jchatbox/admin/index.jsp
    Users main : http://yourserver.com/jchatbox/skin_multilanguage/login.jsp
    Users main : http://yourserver.com/jchatbox/applet/jchatboxclient.html

  3. Optional configuration :
    Once installed
    , stop the servlet engine and follow advanced configuration instructions to setup WEB-INF/web.xml and WEB-INF/conf/jchatbox.xml before running jChatBox again.

The jChatBox WAR archive is downloadable at jChatBox homepage.
(The ZIP archive is WAR compliant too, just rename it as jchatbox.war)

General

Here are basic steps to install jChatBox in your servlet engine (Note that you should follow specific installation instructions if your JSP/Servlets engine is listed above).

  1. Add xerces.jar and jchatbox.jar to the CLASSPATH of your web application.
    (e.g. : Put these files under $JCHATBOX_HOME/WEB-INF/lib/).
  2. Move admin/, skin_multilanguage, skin_classic/, skin_mirc/, skin_tv/, applet/, xml_connector/ folders into the documentRoot of your web application.
    (e.g. : Put all these under a jchatbox/ folder in your web server).
  3. Move WEB-INF/conf/ folder anywhere you want and check that jchatbox.xml and jchatboxusers.xml files have RW access.
    (e.g /opt/production/jchatbox/conf)
  4. Create logs/ folder with RW access anywhere you want.
    (e.g /opt/production/jchatbox/logs).
  5. Edit WEB-INF/web.xml, copy/paste content matching to InitServlet and include it to your own web.xml. Follow advanced configuration instructions to setup configfile parameter in your web.xml AND LOGFOLDER + BACKUPFILE parameters in jchatbox.xml before launching your servlet engine (or application server).
  6. Run jChatBox :
    Administration : http://yourserver.com/jchatboxuri/admin/index.jsp
    Users main : http://yourserver.com/jchatboxuri/skin_multilanguage/login.jsp
    Users main : http://yourserver.com/jchatboxuri/applet/jchatboxclient.html
    Note : You can replace skin_multilanguage in the URL above by others skins.
Tomcat [homepage]

We assume that $TOMCAT_HOME is the folder where you've installed TOMCAT and 8080 is the default port.

  1. Deploy jChatBox ZIP or TAR.GZ archive :
    - Create jchatbox/ folder under $TOMCAT_HOME/webapps/ folder.
    -
    Uncompress jchatbox archive under $TOMCAT_HOME/webapps/jchatbox/ folder.
    - For Tomcat 3.1 only : edit $TOMCAT_HOME/conf/server.xml and declare jchatbox   context as :
              <Context path="/jchatbox"
                   docBase="webapps/jchatbox"
                   debug="0"
                   reloadable="true">
              </Context>
  2. Check that jchatbox.xml and jchatboxusers.xml from WEB-INF/conf/ folder have RW access. Check that WEB-INF/conf/ folder has RW access too.
  3. Optionally, follow advanced configuration instructions to setup WEB-INF/web.xml AND WEB-INF/conf/jchatbox.xml before launching Tomcat.
  4. Run jChatBox :
    Administration : http://yourserver.com:8080/jchatbox/admin/index.jsp
    Users main : http://yourserver.com:8080/jchatbox/skin_multilanguage/login.jsp
    Users main : http://yourserver.com:8080/jchatbox/applet/jchatboxclient.html
    Note : You can replace skin_multilanguage in the URL above by others skins.
JRun  [homepage]

We assume that $JRUN_HOME is the folder where you've installed JRUN 3.x and 8100 is the default port (for JRun 4.x or higher use the WAR installation through administration console).

  1. Deploy jChatBox ZIP or TAR.GZ archive :
    Uncompress jchatbox archive under $JRUN_HOME/servers/default/default-app/ folder.
  2. Check that jchatbox.xml and jchatboxusers.xml from WEB-INF/conf/ folder have RW access. Check that WEB-INF/conf/ folder has RW access too.
  3. Optionally, follow advanced configuration instructions to setup WEB-INF/web.xml AND WEB-INF/conf/jchatbox.xml before launching JRun default server.
  4. Run jChatBox :
    Administration : http://yourserver.com:8100/admin/index.jsp
    Users main : http://yourserver.com:8100/skin_multilanguage/login.jsp
    Users main : http://yourserver.com:8100/applet/jchatboxclient.html
    Note : You can replace skin_multilanguage in the URL above by others skins.
Resin [homepage]

We assume that $RESIN_HOME is the folder where you've installed RESIN and 8080 is the default port.

  1. Deploy jChatBox ZIP or TAR.GZ archive :
    - For Resin 1.x, uncompress jchatbox archive under $RESIN_HOME/doc/ folder.
    - For Resin 2.x, create a jchatbox/ folder under $RESIN_HOME/webapps/ and   uncompress jchatbox archive this new jchatbox/ folder.
  2. Check that jchatbox.xml and jchatboxusers.xml from WEB-INF/conf/ folder have RW access. Check that WEB-INF/conf/ folder has RW access too.
  3. Optionally, follow advanced configuration instructions to setup WEB-INF/web.xml AND WEB-INF/conf/jchatbox.xml before launching Resin.
  4. Run jChatBox :
    Administration : http://yourserver.com:8080/admin/index.jsp
    Users main : http://yourserver.com:8080/skin_multilanguage/login.jsp
    Users main : http://yourserver.com:8080/applet/jchatboxclient.html
    Note : You can replace skin_multilanguage in the URL above by others skins.
WebLogic [homepage]

We assume that $WLS_HOME is the folder where you've installed WEBLOGIC SERVER and 7001 is the default port.

Weblogic Server 5.1 :

  1. Deploy jChatBox ZIP or TAR.GZ archive :
    - Create jchatbox/ folder under $WLS_HOME/myserver/ folder.
    -
    Uncompress jchatbox archive under $WLS_HOME/myserver/jchatbox/ folder.
  2. Move admin/, skin_multilanguage, skin_classic/, skin_mirc/, skin_tv/, applet/, xml_connector/ folders from $WLS_HOME/myserver/jchatbox/ into $WLS_HOME/myserver/public_html/ folder.
  3. Create logs/ folder with RW access under $WLS_HOME/myserver/jchatbox/ folder. Check that jchatbox.xml and jchatboxusers.xml (under $WLS_HOME/myserver/jchatbox/WEB-INF/conf folder) have both RW access too.
  4. Add $WLS_HOME/myserver/jchatbox/xerces.jar and $WLS_HOME/myserver/jchatbox/jchatbox.jar to WEBLOGIC_CLASSPATH variable in the script that launches Weblogic Server.
  5. Follow advanced configuration instructions to setup WEB-INF/web.xml AND WEB-INF/conf/jchatbox.xml before launching Weblogic.
  6. Run jChatBox :
    Administration : http://yourserver.com:7001/admin/index.jsp
    Users main : http://yourserver.com:7001/skin_multilanguage/login.jsp
    Users main : http://yourserver.com:7001/applet/jchatboxclient.html
    Note : You can replace skin_multilanguage in the URL above by others skins.

Weblogic Server 6.0 SP2+ and 6.1 :

  1. Deploy jChatBox ZIP or TAR.GZ archive :
    - Create jchatbox/ folder under $WLS_HOME/config/yourdomain/ folder.
    -
    Uncompress jchatbox archive under $WLS_HOME/config/yourdomain/jchatbox/   folder.
  2. Move $WLS_HOME/config/yourdomain/jchatbox/WEB-INF/lib/xerces.jar under $WLS_HOME.
  3. Check that jchatbox.xml and jchatboxusers.xml (under $WLS_HOME/config/yourdomain/jchatbox/WEB-INF/conf/ folder) have both RW access too.
  4. Add $WLS_HOME/xerces.jar to the beginning of CLASSPATH variable in the script that launches Weblogic Server.
  5. Follow advanced configuration instructions to setup WEB-INF/web.xml AND WEB-INF/conf/jchatbox.xml before launching Weblogic.
  6. Run jChatBox :
    Administration : http://yourserver.com:7001/admin/index.jsp
    Users main : http://yourserver.com:7001/skin_multilanguage/login.jsp
    Users main : http://yourserver.com:7001/applet/jchatboxclient.html
    Note : You can replace skin_multilanguage in the URL above by others skins.

Weblogic Server 7.0+ :

  1. Deploy jChatBox WAR archive :
    Upload jchatbox.war from WebLogic administration console : Deployments -> Web applications -> Install a new web application.
    Note : Do not test jChatBox now because it won't work.
  2. Extract WEB-INF/conf/ folder into any folder (e.g d:/conf).
  3. Update configfile parameter from web.xml included in jchatbox :
    • Deployments -> Web Applications -> jchatbox -> Edit Web Application deployment
      Descriptor.
    • Servlets -> initservlet -> Parameters-> configfile -> Param value =    $YourPathTojchatbox.xml (e.g. d:/conf/jchatbox.xml) -> Click "Apply".
    • Web Descriptor -> Click "Persist".
  4. Redeploy jChatBox web application (without re-uploading it).
  5. Run jChatBox :
    Administration : http://yourserver.com:7001/admin/index.jsp
    Users main : http://yourserver.com:7001/skin_multilanguage/login.jsp
    Users main : http://yourserver.com:7001/applet/jchatboxclient.html
    Note : You can replace skin_multilanguage in the URL above by others skins.
ServletExec  [homepage]

We assume that $SERVLETEXEC_HOME is the folder where you've installed SERVLETEXEC and 8080 is the default port of the plugged web server.

  1. Deploy jChatBox ZIP or TAR.GZ archive :
    - Create jchatbox/ folder under $SERVLETEXEC_HOME.
    -
    Uncompress jchatbox archive under $SERVLETEXEC_HOME/jchatbox/ folder.
  2. Check that jchatbox.xml and jchatboxusers.xml (under $SERVLETEXEC_HOME/jchatbox/WEB-INF/conf/) have RW access.
  3. Add a new Web Application from ServletExec administration Panel :
    Application Name : jchatbox
    URL Context Path : /jchatbox/
    Location : /HDPath/tojChatBoxFolder
    (Create automatically missing ressources if needed).
  4. Optionally, follow advanced configuration instructions to setup WEB-INF/web.xml AND WEB-INF/conf/jchatbox.xml before launching ServletExec.
  5. Run jChatBox :
    Administration : http://yourserver.com:8080/jchatbox/admin/index.jsp
    Users main : http://yourserver.com:8080/jchatbox/skin_multilanguage/login.jsp
    Users main : http://yourserver.com:8080/jchatbox/applet/jchatboxclient.html
    Note : You can replace skin_multilanguage in the URL above by others skins.
WebSphere 3.5.3+   [homepage]

We assume that $WAS_HOME is the folder where you've installed WEBSPHERE 3.5.3+ and 80 is the default port of your web server (for WebSphere 4.x or higher see WAR installation through administration console).

  1. Create jchatbox/ under folder $WAS_HOME/hosts/default_host.
    Create a web/ folder under jchatbox/
  2. Copy jchatbox.jar and xerces.jar into this jchatbox/ folder.
  3. Copy admin/, skin_multilanguage/, skin_classic/, skin_mirc/, skin_tv/, applet/, xml_connector/ folders under jchatbox/web/ folder.
  4. Copy WEB-INF/conf/ under jchatbox/conf/ folder.
  5. Create logs/ folder with RW access under jchatbox/ folder. Check that jchatbox/conf/jchatbox.xml and jchatbox/conf/jchatboxusers.xml file have RW access too.
  6. From the WAS administration console tasks, add a new Web Application :
    Application Name : jchatbox
    Virtual Host : default_host
    WebPath : /jchatbox
    DocumentRoot : $WAS_HOME/hosts/default_host/jchatbox/web
    CLASSPATH : $WAS_HOME/hosts/default_host/jchatbox/xerces.jar and
    $WAS_HOME/hosts/default_host/jchatbox/jchatbox.jar
  7. From the WAS administration console, declare a new Servlet in jchatbox WebApp :
    Name : InitServlet
    Class : jChatBox.Util.InitServlet
    Load on startup must be enabled
    Init parameter :
      name = configfile
      value = $WAS_HOME/hosts/default_host/jchatbox/conf/jchatbox.xml
  8. Add $WAS_HOME/hosts/default_host/jchatbox/xerces.jar path to the begining of com.ibm.ejs.sm.adminserver.classpath line from admin.config
    file under $WAS_HOME/bin then restart WebSphere.
  9. Follow advanced configuration instructions to setup LOGFOLDER + BAKUPFILE parameters in jchatbox/conf/jchatbox.xml only before running the Web Application.
  10. Run jChatBox :
    Administration : http://yourserver.com/jchatbox/admin/index.jsp
    Users main : http://yourserver.com/jchatbox/skin_multilanguage/login.jsp
    Users main : http://yourserver.com/jchatbox/applet/jchatboxclient.html
    Note : You can replace skin_multilanguage in the URL above by others skins.
Security

Depending on your usage of jChatBox you have to pay attention to security.
What does it mean ?...Do you want jChatBox logs files, license file or configuration file downloadable ? Do you want administration page available for anyone ?
All these 'security problems' are possible if you followed installation instructions above.

  1. How to protect configuration files ?
    Check that your conf/ folder is outside of the documentRoot of your web server. That way, it can't be possible to access conf/ folder from the web. Default configuration is ok for that : conf/ folder is $JCHATBOX_HOME/WEB-INF/conf/. However, conf/jchatbox.xml and conf/jchatboxusers.xml must be RW otherwise they can't be updated through administration GUI.
  2. How to protect log files ?
    Check that your logs/ folder
    is outside of the documentRoot of your web server. That way, it can't be possible to access logs/ folder from the web. Default configuration is ok for that : logs/ folder is $JCHATBOX_HOME/WEB-INF/conf/. However logs/ folder must be RW otherwise backup will fail.
  3. How to protect administration page ?
    Even if administation page is login/password protected, admin/ folder should be renamed and/or moved. So, users who know jChatBox application couldn't access administration page by trying http://yourserver.com/admin/index.jsp
    Warning :
    Moving admin/ folder means that you should
    update admin/chatroom.jsp to modify link to login chatroom : <a href=\"../skin_multilanguage/room.jsp\" target= ....>
  4. Does SYSTEM password stored as plain text ?
    No, jChatBox stores the SYSTEM password as its MD5 hash value. If you forget your password then you have to use default MD5 value into jchatbox.xml : 5f4dcc3b5aa765d61d8327deb882cf99. Then SYSTEM password will be : password.
  5. Could I use HTTPS with jChatBox ?
    Yes, it should work except for buffered-framed chatrooms.
  6. Does jChatBox needs Cookies to run ?
    Yes, jChatBox won't run without Cookies. They are needed for session tracking. However the URL rewriting session tracking is in progress...
  7. Is jChatBox protected for cross-scripting attacks ?
    Yes, that's the job of the HTML filter. Do not disable it when you open a new chatroom.
[News] [Applets] [Servlets] [Services] [Projects] [Links] [About]

Copyright © JavaZOOM 1999-2003

Java is a trademark of Sun Microsystems,Inc. All other company and/or product names are the property of their respective owners.