Tomcat使用总结

简介: Tomcat使用总结

1.下载的点已经更改:

TOMCAT官网: http://tomcat.apache.org/

插件官网  http://www.eclipsetotale.com/tomcatPlugin.html

2.Eclipe下如何让Tomcat进入Debug模式

刚装好tomcat插件时,如果断点调试,发现无法进入调试模式,需要配置一下

Window-->Preferences-->Tomcat-->Source Path-->把需要调试的项目打钩沟或者Automatically compute source path 打勾一劳永逸。


3. 运行过程中有时候会遇到如下问题:

Tomcat 启动和关闭时关于Apache Portable Runtime的错误信息解决办法

虽然不影响使用,不过看着挺烦的.类似于这样

启动tomcat显示:

INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: D:\Program Files\Java\jre7\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;D:\Program Files\TortoiseSVN\bin;D:\Program Files\apache-ant-1.9.2\bin;D:\Program Files\Java\jdk1.7.0_25\bin;.

关闭tomcat显示:

2007-3-27 10:28:12 org.apache.catalina.core.AprLifecycleListener lifecycleEvent

信息: Failed shutdown of Apache Portable Runtime


下载一个dll放到前面提示信息的目录下
原因可以看这里,http://tomcat.apache.org/tomcat-5.5-doc/apr.html

http://mirror.bit.edu.cn/apache/tomcat/tomcat-connectors/native/1.1.27/binaries/
64位操作系统需要用这个 tomcat-native-1.1.27-win32-bin\bin\x64\tcnative-1.dll


4. 编辑JSP/HTML等文件,按右键->Open with->JSP editor(红色图标那个).文件关联可以在Window菜单->Preferences->Workbench->File Association里面设置.

.调试Servlet或struts的Action时,只要在程序的相应位置的行号上双击就可以设置一个断点,刷新相应的页面(即发出请求),程序就会在断点的位置中断.

如果要调试JSP,稍微麻烦一点,因为它不能直接支持JSP的断点调试.要先把那个页面请求一次,再刷新eclipse里的左侧目录(右键->刷新),会发现work目录下出现相应JSP文件的java源文件.打开这个源文件,在里面设置断点即可.


5.tomcat 要用bat启动,则必须设置JAVA_HOME环境变量

6.关闭tomcat时无法停掉进程,发现是因为web contextDestroyed时候没有把显式线程停掉,  spring Task Execution and Scheduling 需要在destory时停掉

public void contextDestroyed(ServletContextEvent event) {
ContextLifecycleScheduledTaskRegistrar executor=AdminServerContext.getBean(ContextLifecycleScheduledTaskRegistrar.class);
executor.destroy();
}


7.

关于Tomcat startup failed due to previous errors异常处理

关于Context []startup failed due to previous errors有效解决方式 收藏

这两天在搭建struts2+spring+hibernate框架的过程中遇到如题的错误,最后还是解决了。这个问题的出现,原因有很多,在这总结如下,以供分享:

框架搭建好后,启动服务器出现如下的信息:

log4j:WARN No appenders could be found for logger (org.apache.commons.digester.Digester).

log4j:WARN Please initialize the log4j system properly.

2009-11-6 21:39:17 org.apache.catalina.core.StandardContext start

严重: Error listenerStart

2009-11-6 21:39:17 org.apache.catalina.core.StandardContext start

严重: Context startup failed due to previous errors

2009-11-6 21:39:17 org.apache.catalina.core.StandardHostDeployer install

信息: Installing web application at context path /tomcat-docs from URL D:\server\Tomcat 5.0\webapps\tomcat-docs

2009-11-6 21:39:17 org.apache.catalina.core.StandardHostDeployer install

信息: Installing web application at context path /webdav from URL D:\server\Tomcat 5.0\webapps\webdav

。。。。

 

可能出错的地方:

1.web.xml文件   web应用部署描述符,里面的部署的xml文件或者类,如果这些找不到就会发生startup failed due to previous errors错误。

2.如果在应用spring的话,在配置文件applicationContext.xml中定义的类、xml文件找不到也会报这个错误。

3.在web.xml,struts.xml,applicationContext.xml文件中自身有任何一点错误都可能引起上面的这个问题,而不仅仅是附带的文件错误导致。

4.如果使用ibatis的话,在SqlMapConfig.xml中定义的xml文件找不到也会报这个错误。(hibernate的配置在整合spring的时候使用spring的配置文件)

5.JDK的版本问题,最好使用JDK5.0 或者更高的版本。

6.Eclipse和tomcat的版本兼容问题

7.框架整合的过程中在导入到lib下的jar包冲突也可能产生该错误。

8.jar包的缺少以及jar包的版本也可产生该错误。


8. 一台电脑设置多个tomcat运行

对C:\apache-tomcat-6.0.20\conf\server.xml进行修改

(1) 修改http访问端口(默认为8080端口)

   <Connector port="8081" protocol="HTTP/1.1"   connectionTimeout="20000"  redirectPort="8443" />将8080修改为第一个tomcat不在使用的端口号。此处所设的端口号即是以后访问web时所用的端口号。  8888

 (2) 修改Shutdown端口(默认为8005端口)

      <Server port="8005" shutdown="SHUTDOWN">

     将8005修改为没有在使用的端口号,例如8088  

 (3) 修改JVM启动端口(默认为8009端口)    

    <!-- Define an AJP 1.3 Connector on port 8009 -->

   <Connector port="8009"

              enableLookups="false" redirectPort="8443" protocol="AJP/1.3" />

  把其修改成其它没有用过的端口号;例如:8999 这样同时可以运行多少tomcat了


9. java get方式中文乱码

8.1.页面显示中文乱码


<%page pageEncoding="utf-8"%>

8.2.传递中文参数乱码

修改server.xml

<Connector port="8080" protocol="HTTP/1.1" maxThreads="150" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8"/>

10.如何在eclipse搭建tomcat工程

下载JAVA EE 版本的eclipse

创建project type:Dynamic Web project

target runtime:Apache Tomcat 7.0  JDK7


default output folder:admin/WebContent/WEB-INF/classes

选中is a tomcat project

context name :admin

subdirectory to set ..... /webContent


可以通过选中工程邮件 tomcat project -->update context definition 生成文件\apache-tomcat-7.0.42\conf\Catalina\localhost\admin.xml文件

<Context path="admin" reloadable="true" docBase="E:\fishing\3.program\server\trunk\admin\WebContent" 
workDir="E:\fishing\3.program\server\trunk\admin\work" />

如果tomcat的库文件没有添加进来,选择 Add tomcat libraries to project build path

windows ->preferences


tomcat-users.xml

<tomcat-users>

<role rolename="manager-gui"/>

<role rolename="manager-script"/>

<role rolename="manager-jmx"/>

<role rolename="manager-status"/>

<user username="tomcat" password="tomcat" roles="manager-gui,manager-script,manager-jmx,manager-status"/>

</tomcat-users>


后来经朋友提示,是因为tomcat配有配置编码格式,server.xml里如果不配置编码格式,则默认是iso-8859-1,于是加上即可

<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" URIEncoding="UTF-8"/>



目录
相关文章
|
7月前
|
网络协议 Java 应用服务中间件
什么是tomcat?tomcat是干什么用的?
什么是tomcat?tomcat是干什么用的?
|
Java 应用服务中间件
Tomcat2
Tomcat2
82 0
|
Oracle 前端开发 Java
Tomcat1
Tomcat1
138 0
|
缓存 NoSQL 数据可视化
|
Java 应用服务中间件 容器
Tomcat
封装HTTP协议操作,简化开发可以将web项目部署到服务器中,对外提供网上浏览服务
72 0
Tomcat
|
安全 Java 应用服务中间件
Tomcat8
Tomcat8
219 0
Tomcat8
|
XML Java 应用服务中间件
Tomcat就是这么简单(下)
Tomcat简单的说就是一个运行JAVA的网络服务器,底层是Socket的一个程序,它也是JSP和Serlvet的一个容器。
229 0
Tomcat就是这么简单(下)
|
前端开发 Java 应用服务中间件
Tomcat就是这么简单(上)
Tomcat简单的说就是一个运行JAVA的网络服务器,底层是Socket的一个程序,它也是JSP和Serlvet的一个容器。
162 0
Tomcat就是这么简单(上)
|
前端开发 JavaScript Oracle
快速了解TomCat是个啥
快速了解TomCat是个啥
191 0
快速了解TomCat是个啥
|
应用服务中间件 Apache 容器