1、EOFException
严重: IOException while loading persisted sessions: java.io.EOFException
严重: Exception loading sessions from persistent storage
原因是tomcat对硬盘的session读取失败,彻底解决办法一下:将work下面的文件清空,主要是*.ser文件,或者只是删除掉session.ser即可以解决。
2、
Tomcat中设置远程debug方法
打开catalina.bat文件
………………
在66行 rem Guess CATALINA_HOME if not defined
SET CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000
set CURRENT_DIR=%cd%
………………
将黑色字体的文字加入
在tomcat中部署web项目
WebTomcat项目管理应用服务器XML
在Tomcat中部署Java Web应用程序
在Tomcat中部署Java Web应用程序有两种方式:静态部署和动态部署。在下文中$CATALINA_HOME指的是Tomcat根目录。
一、静态部署
静态部署指的是我们在服务器启动之前部署我们的程序,只有当服务器启动之后,我们的Web应用程序才能访问。以下3中方式都可以部署:
1、将PetWeb目录拷贝到$CATALINA_HOME\webapps下,然后启动服务器就可以了。这种方式比较简单,但是web应用程序必须在webapps目录下。访问地址如下:
http://localhost:8080/PetWeb/
2、这种方式可以不必将PetWeb目录拷贝到webapps下,直接在F:\部署。方法如下,更改$CATALINA_HOME\conf\server.xml文件,在<host>标签内添加<Context>标签,内容如下:
<Context docBase="F:/PetWeb" reloadable="false" path="/Pet"/>
其中reloadable="false"表示当应用程序中的内容发生更改之后服务器不会自动加载,这个属性在开发阶段通常都设为true,方便开发,在发布阶段应该设置为false,提高应用程序的访问速度。docBase为路径,可以使用绝对路径,也可以使用相对路径,相对路径相对于webapps。path属性的值是访问时的根地址。访问地址如下:http://localhost:8080/Pet/
3、这种方式和第二种方式差不多,但是不是在Server.xml文件中添加Context标签,而是在$CATALINA_HOME\conf\Catalina\localhost中添加一个xml文件,如Pet.xml,内容如下:
<Context docBase="F:/PetWeb" reloadable="false" />大家可能发现和第二种方式差不多,但是缺少了path属性,这种方式服务器会使用.xml的名字作为path属性的值。访问地址如下:http://localhost:8080/Pet/
我们刚才是将PetWeb文件夹部署在了服务器中,我们知道可以将Web应用程序的内容打成.war包,然后在部署在服务器上。打包请参考如下步骤:
1、打开命令提示符(Start-->Run-->cmd)
2、设置jdk环境变量(如果我教过的学生不会配置,以后别说孙老师教过你)
3、在命令提示符中进入F:\PetWeb文件后,键入如下命令:
jar ..\Pet.war *.* 这样在F:\下应该有Pet.war文件。其中..表示当前目录的父目录。
部署Pet.war文件非常简单,将刚才有docBase="F:\PetWeb"更改为docBase="F:\Pet.war"或者直接将其拷贝到 webapps下也可以。重新启动服务器就可以将Pet.war部署为一个Web应用程序了。如果你够细心的话你会发现,服务器将Pet.war文件解开,并且在webapps下面又生成了一个Pet文件夹,然后把Pet.war的内容拷贝到里面去了。我们可以通过以下方式取消自动解压缩,配置方式如下:
<Context docBase="F:/PetWeb" reloadable="false" unpackWAR="false"/>
二、动态部署
动态部署是指可以在服务器启动之后部署web应用程序,而不用重新启动服务器。动态部署要用到服务器提供的manager.war文件,如果在$CATALINA_HOME\webapps\下没有该文件,你必须去重新下载tomcat,否则不能完成以下的功能。要想使用该管理程序必须首先编辑$CATALINA_HOME\conf\tomcat-users.xml文件,内容如下:关于这个文件的更多内容,请参考Java Web应用程序的安全模型二
<tomcat-users>
<role rolename="tomcat"/>
<role rolename="role1"/>
<role rolename="manager"/>
<user username="coresun" password="coresun" roles="manager"/>
<user username="tomcat" password="tomcat" roles="tomcat"/>
<user username="both" password="tomcat" roles="tomcat,role1"/>
<user username="role1" password="tomcat" roles="role1"/>
</tomcat-users>
然后在浏览器中键入如下地址:
http://localhost:8080/应该看到一个漂亮的加菲猫了吧。点击左边的Tomcat Manager链接,提示输入用户名和密码,本文都是coresun,然后可以看到以下页面:
在Context Path(option):中输入/Pet
XML Configration file URL中要指定一个.xml文件,比如我们在F:\下建立一个Pet.xml文件,内容如下:
<Context reloadable="false" />docBase不用写了,因为在下一个文本框中填入。或者更简单点,这个文本框什么都不填。
在WAR or Directory URL:中键入F:\PetWet或者F:\Pet.war都可以,然后点击Deploy按钮,看看上面是不是已经看到了你web应用程序,名字就是你Context Path(option):中的名字。
如果你部署.war文件还有更加简单的方式,下面还有个Select WAR file uploae点击浏览选择.war文件,然后点击Deploy也可以。
----日志输出
缺点:
1.输出到log日志后,不打印到控制台。
2.log文件是一直增长的,也就是文件会越来越大。
在Linux系统中,Tomcat 启动后默认将很多信息都写入到catalina.out 文件中,我们可以通过tail -f catalina.out 来跟踪Tomcat 和相关应用运行的情况。 在windows下,我们使用startup.bat启动Tomcat以后,会发现catalina日志与Linux记录的内容有很大区别,大多信息只输出到屏幕而没有记录到catalina.out里面。 本文的内容就是要实现在windows下,将相关的控制台输出记录到后台的catalina.out文件中以便将来查看。 关于在Windows2003下如何实现类似Linux下tail命令功能的方法,请见让windows也拥有tail功能一文
把控制台的信息输出到"%CATALINA_BASE%"\logs\catalina.out里:
1、打开bin下面的startup.bat文件,把call "%EXECUTABLE%" start %CMD_LINE_ARGS%
改为call "%EXECUTABLE%" run %CMD_LINE_ARGS% 。
2、打开bin下面的catalina.bat文件,会发现共有4处 %ACTION% ,在后面分别加上
>> "%CATALINA_HOME%"\logs\catalina.out
重启tomcat,就会发现在logs文件夹下出现了catalina.out文件,把原来控制台的信息全写进去了。
但输出的这个catalina.out文件,是一直增长的,也就是文件会越来越大。
分享到:
相关推荐
### Eclipse 使用技巧详解 #### 一、Tab 设置与调整 在使用 Eclipse 进行编程时,对于 Tab 的设置非常重要,因为它直接影响代码的可读性和美观性。以下是如何针对不同的文件类型进行 Tab 设置的方法: 1. **HTML ...
小学数学中的归一问题和归总问题是一种常见的应用题型,主要目的是训练孩子们对数量关系的理解和实际问题的解决能力。 归一问题的核心在于找到一个单一量,即单位量,以此为基准来解决复杂的问题。例如,如果知道买...
sql全部基础完全手写代码大全,对于初学者是很有帮助的
【iOS面试题归总】 iOS面试中经常涉及的Objective-C相关知识点包括: 1. **多继承**:Objective-C不支持多继承。为了实现多态,它使用了**Protocol(协议)**,允许类遵循多个协议,从而实现类似多继承的功能。...
计算机自测题归总.doc
【小学数学归一及归总问题】是小学数学中一种重要的解题方法,主要应用于解决实际生活中涉及到比例和数量关系的应用题。这类问题通常需要先找出一个基础单位(单一量),然后根据这个单位来计算其他未知量。 1. **...
归一和归总问题在小学数学中是常见的应用题型,它们主要涉及到比例和运算的知识。归一问题和归总问题都是通过找到一个基础单位或总量来解决复杂问题的策略。 **一、归一问题** 归一问题的核心是将复杂问题简化到一...
- 使用单一量作为基准,进行比例计算,解决实际问题。 3. 归总问题示例: - 王刚搬砖的例子中,先计算一次搬砖的量,然后根据总次数求总和。 - 小红和小芳走路的问题,需要先找到两人的共同标准(如速度),然后...
【归一问题与归总问题】是小学奥数中常见的两种类型的应用题,它们主要考察学生对数量关系的理解和计算能力。归一问题的核心在于找到一个"单位数量",通过除法运算确定这个单位,然后根据这个单位去解决其他相关问题...
单片机课程设计题目归总涵盖了微控制器技术的多个核心领域,旨在帮助学生全面理解和应用单片机系统。以下是一些可能的课程设计题目及相关的知识点: 1. **数字钟设计**:通过单片机控制LED数码管显示时间,涉及...
归总问题是一种常见的数学应用题型,主要涉及的是两个或多个变量之间的关系,其中有一个变量(总量)保持不变,而其他变量发生变化。这类问题常常出现在小学数学教育中,尤其是四年级的课程中,如新人教版四年级数学...
3. 供暖煤的储备问题,初始储备够120天使用,但40天后每天节省0.9吨煤,我们要计算新的总供暖天数。 通过这些实例和练习,孩子们可以深入理解归总问题的解决策略,提高他们的逻辑思维能力和问题解决技巧。归总问题...
《MTK6226平台知识归总》 MTK6226是一个常见的移动通信芯片平台,尤其在入门级手机开发中应用广泛。本文旨在为初学者和开发者提供一个全面的理解框架,涵盖MMI(Man-Machine Interface)的整体构架、各模块功能以及...
小学数学中的归一问题和归总问题是一种常见的应用题型,它们主要训练学生的逻辑思维和实际问题解决能力。归一问题的关键在于先找到一个“单一量”,即单位量,然后以此为基础来解决其他相关问题。而归总问题则相反,...
小学四年级奥数教程中的归总问题是一种解决数学应用题的方法,主要涉及总量与部分的关系。这类问题通常涉及总路程、总产量、工作总量或总价等概念,通过找到总量并结合其他条件来求解问题。 在讲解归总问题时,常常...
nutch常见问题归总,对初学nutch的一些问题做出的整理
小学五年级数学中的“归一”与“归总”是两个重要的数学概念,它们主要涉及的是数量关系的统一和总量的计算。通过专项训练,学生能够更好地理解和运用这两个概念。 1. 归一化(单位统一):在解决实际问题时,常常...