[分享] 用APT安装Tomcat,写个Hello World 的JSP程序[Feisty]

软件和网站开发以及相关技术探讨
头像
tipfoo
帖子: 303
注册时间: 2007-07-12 16:30
来自: 桂林

[分享] 用APT安装Tomcat,写个Hello World 的JSP程序[Feisty]

#1

帖子 tipfoo » 2007-08-23 14:19

在 Feisty 下,Tomcat是安装后就立即可用的。但如果习惯了“下载──解压──运行”这种手动安装方式的话,此时可能不知从何下手。我刚开始就是这样:oops: (所以记之备忘)。

安装 Tomcat

代码: 全选

$ sudo apt-get install sun-java5-jdk tomcat5.5
启动 Tomcat

代码: 全选

$ sudo invoke-rc.d tomcat5.5 start 
验证一下

代码: 全选

$ netstat -pult
如果能看到像下面这样的行就说明Tomcat正确地运行了。

代码: 全选

tcp6       0      0 *:8180                  *:*                     LISTEN     -                   
注:Feisty 源里面最新的Tomcat5.5已经修正了 catalina.out 那个日志文件的Bug了。

这时你可以通过浏览器访问http://localhost:8180/了。不过,你要是没安装“tomcat5.5-webapps”包的话,看到的应该是个空白的页面,而不是那只公猫。

现在Tomcat启动了,那下一步怎么做才能运行自己写的Hello World 的JSP程序??? 不要急,先让我们看看 Tomcat 在 Ubuntu Feisty 中的目录结构。

在“新立得”里,我们可查看到Tomcat5.5 已安装文件的列表。它的文件并不是都在一个目录下的,分布在 /var, /usr 及 /etc 等目录下。让我们从Tomcat启动脚本切入,打开它

代码: 全选

$ gedit /etc/init.d/tomcat5.5
可见,以下定义

代码: 全选

NAME=tomcat5.5
......
CATALINA_HOME=/usr/share/$NAME
......
CATALINA_BASE=/var/lib/tomcat5.5
Feisty 这样设计 Tomcat 的目录结构是很好的,能让我们很容易配置多实例。从这里就能知道,当前这个实例的根目录是“/var/lib/tomcat5.5”,所有相关的配置文件都在其子目录“conf”下。显然,我们的JSP文件应放置的地方就应该在
/var/lib/tomcat5.5/webapps
目录下,为了通过浏览器访问http://localhost:8180/时看到我们的“Hello World!”,我们只需在“ROOT”目录下建立一个名为“index.jsp”的JSP文件,像这样:

代码: 全选

$ cd /var/lib/tomcat5.5/webapps
$ sudo mkdir -p ROOT
$ gksu gedit ROOT/index.jsp
将下面内容粘贴上:

代码: 全选

<%
    out.println("Hello World!");
%>
保存,关闭编辑器。接着修改一下权限:

代码: 全选

$ sudo chown tomcat55 -R ROOT
OK! :em52 处女作多多支持! :em94
flyinflash
帖子: 2376
注册时间: 2006-09-21 14:28

#2

帖子 flyinflash » 2007-08-23 15:41

su
头像
10days
帖子: 88
注册时间: 2006-10-20 12:24
来自: CH.JS.NJIT
联系:

#3

帖子 10days » 2007-09-03 23:22

执行

代码: 全选

 sudo apt-get install sun-java5-jdk tomcat5.5

出现错误:

代码: 全选

………………
dpkg:处理 tomcat5.5 (--configure)时出错:
 子进程·post-installation script·返回了错误号·1
在处理时有错误发生:
 tomcat5.5
E: Sub-process /usr/bin/dpkg returned an error code (1)
改怎么解决阿?
头像
tipfoo
帖子: 303
注册时间: 2007-07-12 16:30
来自: 桂林

#4

帖子 tipfoo » 2007-09-04 19:30

注销后再执行你上面的,试过没有?
头像
10days
帖子: 88
注册时间: 2006-10-20 12:24
来自: CH.JS.NJIT
联系:

#5

帖子 10days » 2007-09-05 0:48

试过,同样的情况!~
头像
tipfoo
帖子: 303
注册时间: 2007-07-12 16:30
来自: 桂林

#6

帖子 tipfoo » 2007-09-05 8:46

1)看看最新的日志,例如

代码: 全选

$ sudo tail -f /var/lib/tomcat5.5/logs/catalina_2007-09-05.log
Using CATALINA_BASE:   /var/lib/tomcat5.5
Using CATALINA_HOME:   /usr/share/tomcat5.5
Using CATALINA_TMPDIR: /var/lib/tomcat5.5/temp
Using JRE_HOME:       /usr/lib/jvm/java-gcj
The java-gcj-compat-dev environment currently doesn't support
a security manager. Please check the TOMCAT5_SECURITY variable
in /etc/default/tomcat5.5.
如果像这样,就

代码: 全选

$ sudo vi /etc/default/tomcat5.5
将
TOMCAT5_SECURITY=yes
改为
TOMCAT5_SECURITY=no
然后再安装

代码: 全选

$ sudo apt-get install tomcat5.5
注意“Using JRE_HOME: /usr/lib/jvm/java-gcj”。
其实选用Sun的,可能就不会出现这样的错误了(没试验过,我用Sun的JDK是没有)。

代码: 全选

$ sudo update-alternatives --config java
2)看看是不是不能生成用户 tomcat55

代码: 全选

$ cat /etc/passwd |grep tomcat
没有就手动建一个。

3)或者先试试

代码: 全选

$ sudo apt-get -f install
再执行

代码: 全选

$ sudo apt-get install sun-java5-jdk tomcat5.5
如果还不行,到 IRC 的 #ubuntu 去问问吧,也可以去报告个Bug。
头像
tipfoo
帖子: 303
注册时间: 2007-07-12 16:30
来自: 桂林

#7

帖子 tipfoo » 2007-09-13 21:06

今天才发现,在我那台从6.10升级到7.04的机子上,安装tomcat后启动不了它!:shock:

代码: 全选

$ sudo rm -f /usr/share/tomcat5.5/logs/catalina.out 
$ sudo touch /usr/share/tomcat5.5/logs/catalina.out 
$ sudo invoke-rc.d tomcat5.5 start
 * Starting Tomcat servlet engine tomcat5.5                                                 [OK ] 
$ sudo invoke-rc.d tomcat5.5 status
 * Tomcat servlet engine is running with pid 10052
原因是文件“catalina.out”不是普通的文本文件,而是“fifo”类型。所以删除后重建就好了。
详情参考:http://cefn.com/blog/ubuntutomcat.html
头像
gdzhljw
帖子: 314
注册时间: 2007-05-19 23:18
来自: 广东珠海

#8

帖子 gdzhljw » 2007-12-19 14:17

不错顶
凡事都可行.但不都有益处。凡事都可行.但不都造就人。(哥林多前10:23)

my blog : http://gdzhljw.blog.163.com/
http://gdzhljw.blog.ubuntu.org.cn/
cgjcsl
帖子: 11
注册时间: 2007-12-20 23:06

#9

帖子 cgjcsl » 2007-12-20 23:52

最近在学习java的j2ee应用,谢谢。顶了……
头像
CLOCKWORKHEART
帖子: 635
注册时间: 2007-11-05 19:26

#10

帖子 CLOCKWORKHEART » 2007-12-23 16:00

多谢楼主,要不是那个netstat命令,我还以为tomcat没装上。顶了.....
fscyr
帖子: 85
注册时间: 2007-12-06 23:52

#11

帖子 fscyr » 2007-12-26 17:03


做个标记
SevenRedCity
帖子: 3
注册时间: 2008-01-31 23:12

#12

帖子 SevenRedCity » 2008-01-31 23:42

顶...
cgk100
帖子: 60
注册时间: 2007-04-22 10:03
来自: china
联系:

#13

帖子 cgk100 » 2008-02-22 8:45

jsp 好东西
ray0112
帖子: 3
注册时间: 2007-10-13 18:00

#14

帖子 ray0112 » 2008-02-25 23:41

我在用netstat -pult 后出现了:
(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 localhost:2208 *:* LISTEN -
tcp 0 0 localhost:ipp *:* LISTEN -
tcp 0 0 localhost:2207 *:* LISTEN -
udp 0 0 *:32768 *:* -
udp 0 0 *:mdns *:* -
头像
zerg0006
帖子: 43
注册时间: 2007-08-03 15:50
联系:

#15

帖子 zerg0006 » 2008-03-26 1:00

楼主,我按你说的装了以后,我还装了tomcat5.5-webapps包,后面的按你说的做,但是他一直显示那个有公猫的界面,显示不了hello world,请问该怎么办呢?谢谢
回复