java在Linux下的web应用
wangzy
RedHat下安装apache jserv 1.1.2
虽然apache jserv的开发小组现在都从事tomcat的开发,而且apache jserv只支持servlet 2.0的标准,并且要加其他的软件(gnujsp)才能支持jsp;但是apache jserv在现阶段比tomcat稳定,因此现在apache jserv+gnujsp比较适合应用于web。如果想使用servlet2.2和jsp1.1的话,请使用tomcat,参看tomcat的安装。本文介绍apache jserv 1.1.1在RedHat下的安装。
一、需要的软件:
jdk_1.2.2从http://java.sun.com下载
apache_1.3.12从www.apache.org下载
apache jserv-1.1.1从java.apache.org下载
jsdk2.0(只能是2.0)从http://java.sun.com下载
二、安装过程
请先安装好jdk,具体可参考jdk安装,注意设置好CLASSPATH和PATH
拷贝apache,apache jserv源码包到/tmp下
#tar xvzf apache_1.3.12.tar.gz
#tar xvzf ApacheJServ-1.1.2.tar.gz
1、静态编译,即编译进apache
#cd apache_1.3.12
#./configure --prefix=/usr/local/apache
配置apache jserv编译参数
#cd ../ApacheJServ-1.1.2
#./configure \\
--prefix=/usr/local/jserv \\
--with-apache-src=../apache_1.3.12 \\
--with-jdk-home=/usr/local/jdk \\
--with-java-platform=2 \\
--with-JSDK=/usr/local/JSDK/lib/jsdk.jar
#make
#make install
编译apache和apache jserv
#cd ../apache_1.3.12
#./configure \\
--prefix=/usr/local/apache \\
--activate-module=src/modules/jserv/libjserv.a
#make
#make install
运行#/www/bin/httpd -l检查一下mod_jserv是否编译进apache了
2、动态编译(DSO模式)
#cd apache_1.3.12
#./configure
--prefix=/usr/local/apache
--enable-shared=max
#make
#make install
配置apache jserv编译参数
#cd ../ApacheJServ-1.1.2
#./configure \\
--prefix=/usr/local/jserv \\
--with-apxs=/usr/local/apache/bin/apxs \\
--with-jdk-home=/usr/local/jdk \\
--with-java-platform=2 \\
--with-JSDK=/usr/local/JSDK/lib/jsdk.jar
#make
#make install
如果你想使用mod_ssl请加入--with-EAPI选项
三、更改配置文件
在/www/conf/httpd.conf中加入
Include /usr/local/jserv/etc/jserv.conf
如果你用DSO模式安装的话,请把jserv.conf中
LoadModule jserv_module /usr/local/jserv/libexec/mod_jserv.so前面的注释去掉
启动apache
用浏览器测试http://yourserver/servlets/IsItWorking
看见了Yes,It\s working!了吗?你成功了!!
你可以更改jserv.conf中的
SetHandler jserv-status
order deny,allow
deny from all
加入你的信任主机allow from xxxx
这样在信任主机上通过http://yourserver/jserv/(注意后面这个\"/\"不能少)可以看到你的
apache jserv的配置信息。
接着在/usr/local/jserv/servlets下放入你自己的servlet class实验一下效果吧,测试结果表明在redhat6.2下没有中文显示问题,一切ok!
其他关于servlet zone的设置、load balance等等请参考apache jserv文档和java.apache.org网站
gnujsp1.0.0在RedHat下基于apache jserv的安装
首先确认你已经安装了apache jserv,如果你还没有安装apache jserv,请参考在《RedHat下
安装apache jserv 1.1.2》一文。
默认jserv安装在/usr/local/jserv下,jserv.conf在/usr/local/jserv/conf下
一、需要的软件
从http://www.klomp.org/gnujsp/取得gnujsp-1.0.0.tar.gz
二、
#cp gnujsp-1.0.0.tar.gz /usr/local
#tar xvzf gnujsp-1.0.0.tar.gz
#ln -s gnujsp-1.0.0 gnujsp
#cd /usr/local/jserv/etc
#cp zone.properties alph.properties
#vi alph.properties修改alph.properties加入:
# List of Repositories
#######################
repositories=/usr/local/gnujsp-1.0.0/lib/gnujsp10.jar
repositories=/usr/local/gnujsp-1.0.0/lib/servlet-2.0-plus.jar
repositories=/your/jdbcbeans/path#你的javabean的路径
#repositories=/home/heyl/lib/java/Acme.jar
#repositories=/usr/local/webl-3.0/lib/WebL.jar
# Classloader parameters
#########################
autoreload.classes=true
# Enable servlet resourced autoreloading (properties and other
# loaded resources)
autoreload.file=true
...
# Servlet Aliases
##################
# Note: if using webl or Acme stuff, add the jars here too
# if you added them to the repositories above (alph)
# In my real settings I added: usepackages=true,language=de,country=de
# but I guess you may prefer the default locale :-) (alph)
servlet.gnujsp.code=org.gjt.jsp.JspServlet
servlet.gnujsp.initArgs=checkclass=true,pagebase=/usr/local/www/doc,
scratchdir=/var/local/apache/jsp,debug=true,compiler=builtin-javac
-classpath %classpath%:%scratchdir%:/usr/local/gnujsp-1.0.0/lib/servlet-2.0-plus.jar:
/usr/local/gnujsp-1.0.0/lib/gnujsp10.jar:/your/jdbcbeans/path
-d %scratchdir% -deprecation %source%
#其中$scratchdir为jsp文件生成的java和class文件的目录
存盘
三、
#vi jserv.properties加入
wrapper.classpath=/usr/lib/jdk/lib/tools.zip
wrapper.classpath=/usr/local/jserv/lib/ApacheJServ.jar
wrapper.classpath=/usr/local/JSDK/lib/jsdk.jar
......
zones=root,alph
......
alph.properties=/usr/local/apache-1.3.6/conf/alph.properties
......
log.file=/usr/local/apache/logs/jserv.log#日志文件
四、在/usr/local/jserv/etc/jserv.conf中加进
ApJServMount /alph /alph
Action jsp-handler /servlet/gnujsp
AddHandler jsp-handler jsp
五、
启动你的apache
把/usr/local/gnujsp/examples下的文件拷贝到web发布目录下,用浏览器调用
http://yourserver/dir/date.jsp
http://yourserver/dir/hello.jap
http://yourserver/dir/snoop.jsp
怎么样,结果出来了没有呢?
然后你自己改动这些文件,加入中文测试,和servlet在redhat下一样,测试表明gnujsp也
没有中文显示的问题。
相关servlet/jsp信息请到java.sun.com查阅相关信息
cocoon 1.7.4在RedHat下基于apache jserv的安装
cocoon是xml在apache上的实现,作为一种web发布系统。本文介绍cocoon在RedHat下的安装。
首先确认你已经安装了apache jserv,如果你还没有安装apache jserv,请参考本站
《RedHat下安装apache jserv 1.1.2》一文。
默认jserv安装在/usr/local/jserv下,jserv.conf在/usr/local/jserv/conf下
1、需要的软件
http://xml.apache.org取得Cocoon-1.7.4.tar.gz
2、
#cp Cocoon-1.7.4.tar.gz /usr/local
#tar xvzf Cocoon-1.7.4.tar.gz
#ln -s cocoon-1.7.4 cocoon
3、更改配置文件
#cd /usr/local/jserv/etc
#vi jserv.properties加入
wrapper.classpath=/usr/local/jdk/lib/tools.jar
wrapper.classpath=/usr/local/cocoon/bin/cocoon.jar
wrapper.classpath=/usr/local/cocoon/lib/xerces_1_0_3.jar
wrapper.classpath=/usr/local/cocoon/lib/xalan_1_0_1.jar
wrapper.classpath=/usr/local/cocoon/;lib/fop_0_12_1.jar
wrapper.classpath=/usr/local/JSDK/lib/jsdk.jar
#注意这里不能用/usr/local/cocoon/lib/servlet_2_2.jar因为jserv不支持servlet2.2
存盘
#vi zone.properties加入
servlet.org.apache.cocoon.Cocoon.initArgs=/usr/local/cocoon/conf/cocoon.properties
存盘
#vi jserv.conf加进
Action cocoon /servlets/org.apache.cocoon.Cocoon
AddHandler cocoon xml
存盘
4、测试
重新启动你的apache
通过浏览器调用http://yourserver/Cocoon.xml没看到出错信息吧,你快成功了。
把/usr/local/cocoon/samples下的文件拷贝到web发布目录下,
#cp -R /usr/locao/cocoon/samples /usr/local/apache/htdocs/xml
用浏览器调用
http://yourserve/xml/index.xml怎么样所有的例子都看见正确结果了吗?
5、中文问题
更改index.xml
然后把一些信息改成中文,调用,应该是出现乱码,怎么解决呢?如下方法解决:
更改/usr/local/cocoon/src/apache/cocoon/formatter/下的文件,
把\"text/html\"更改成\"text/html;charset=GB2312\"
然后运行/usr/local/cocoon/build.sh,这个命令将编译src,
结果文件cocoon.jar在/usr/local/build/下
然后你再更改/usr/local/jserv/etc/jserv.properties中的
wrapper.classpath=/usr/local/cocoon/bin/cocoon.jar
为wrapper.classpath=/usr/local/cocoon/build/cocoon.jar
重新启动apache,看见了你的中文了吗?呵呵就这么简单
对xml/java/sevlet等相关信息请参考相关网站
发布人:netbull 来自:诺金软件电脑网络