-
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 read
[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.
-
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.
- 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
- 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).
-
Add xerces.jar
and jchatbox.jar
to the CLASSPATH of your web application.
(e.g. : Put these files under $JCHATBOX_HOME/WEB-INF/lib/).
- 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).
- 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)
- Create
logs/ folder with
RW
access anywhere you want.
(e.g
/opt/production/jchatbox/logs).
- 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).
- 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.
- 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>
-
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.
- Optionally,
follow advanced configuration
instructions to setup WEB-INF/web.xml
AND WEB-INF/conf/jchatbox.xml
before launching Tomcat.
- 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).
- Deploy
jChatBox ZIP or TAR.GZ archive :
Uncompress
jchatbox archive under
$JRUN_HOME/servers/default/default-app/ folder.
-
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.
- Optionally,
follow advanced configuration
instructions to setup WEB-INF/web.xml
AND WEB-INF/conf/jchatbox.xml
before
launching JRun default server.
- 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.
- 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.
- 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.
- Optionally,
follow advanced configuration
instructions to setup WEB-INF/web.xml
AND WEB-INF/conf/jchatbox.xml
before
launching
Resin.
- 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 :
- Deploy
jChatBox ZIP or TAR.GZ archive :
- Create jchatbox/
folder under $WLS_HOME/myserver/
folder.
- Uncompress
jchatbox archive under
$WLS_HOME/myserver/jchatbox/
folder.
- 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.
- 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.
- 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.
- Follow
advanced configuration
instructions to setup WEB-INF/web.xml
AND WEB-INF/conf/jchatbox.xml
before launching Weblogic.
- 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 :
- 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.
- Move
$WLS_HOME/config/yourdomain/jchatbox/WEB-INF/lib/xerces.jar
under
$WLS_HOME.
- Check
that jchatbox.xml
and jchatboxusers.xml
(under $WLS_HOME/config/yourdomain/jchatbox/WEB-INF/conf/
folder) have both RW access too.
- Add
$WLS_HOME/xerces.jar
to the beginning of CLASSPATH
variable in the script that launches Weblogic Server.
- Follow
advanced configuration
instructions to setup WEB-INF/web.xml
AND WEB-INF/conf/jchatbox.xml
before launching Weblogic.
- 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+ :
- 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.
-
Extract WEB-INF/conf/
folder into any folder (e.g d:/conf).
- 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".
- Redeploy
jChatBox web application (without re-uploading it).
- 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.
- Deploy
jChatBox ZIP or TAR.GZ archive :
- Create jchatbox/
folder under $SERVLETEXEC_HOME.
- Uncompress
jchatbox archive under
$SERVLETEXEC_HOME/jchatbox/
folder.
-
Check that jchatbox.xml
and jchatboxusers.xml
(under $SERVLETEXEC_HOME/jchatbox/WEB-INF/conf/) have
RW access.
- 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).
- Optionally,
follow advanced configuration
instructions to setup WEB-INF/web.xml
AND WEB-INF/conf/jchatbox.xml
before launching
ServletExec.
- 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).
- Create
jchatbox/
under folder $WAS_HOME/hosts/default_host.
Create a web/
folder under jchatbox/
- Copy
jchatbox.jar
and xerces.jar
into this jchatbox/ folder.
- Copy
admin/,
skin_multilanguage/,
skin_classic/,
skin_mirc/,
skin_tv/,
applet/,
xml_connector/
folders under
jchatbox/web/ folder.
- Copy
WEB-INF/conf/ under jchatbox/conf/
folder.
- 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.
- 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
- 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
- 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.
- Follow
advanced configuration
instructions to setup LOGFOLDER
+ BAKUPFILE parameters in jchatbox/conf/jchatbox.xml
only before running the Web Application.
- 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.
- 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.
- 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.
- 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= ....>
- 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.
- Could
I use HTTPS with jChatBox ?
Yes,
it should work except for buffered-framed chatrooms.
- 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...
- 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.
|
|