java web项目能正常运行,开着tomcat,mysql服务也没停,过了一晚上就不好使了,再点画面就报异常。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java web项目能正常运行,开着tomcat,mysql服务也没停,过了一晚上就不好使了,再点画面就报异常。相关的知识,希望对你有一定的参考价值。
貌似不是session过期,画面过期的问题,我重新开浏览器也不好使了,异常是这样的:
atomikos connection pool 'mysql/common': error creating proxy of connection an AtomikosXAPooledConnection with a SessionHandleState with 0 context(s)
com.atomikos.datasource.pool.CreateConnectionException: an AtomikosXAPooledConnection with a SessionHandleState with 0 context(s): connection is erroneous
求大神帮忙分析下,问题到底在哪了?如果问题在这个transactions.properties文件里,那里面的各个参数究竟该怎么设置?
(我全部列出来,好像用不到这么多,但是只要能解决这个问题就行啊)
com.atomikos.icatch.service=com.atomikos.icatch.standalone.UserTransactionServiceFactory
com.atomikos.icatch.console_file_name = tm.out
com.atomikos.icatch.console_file_limit=-1
com.atomikos.icatch.console_file_count=1
com.atomikos.icatch.checkpoint_interval=500
com.atomikos.icatch.output_dir = ./
com.atomikos.icatch.log_base_dir = ./
com.atomikos.icatch.log_base_name = tmlog
com.atomikos.icatch.max_actives = 50
com.atomikos.icatch.default_jta_timeout = 10000
com.atomikos.icatch.max_timeout = 300000
com.atomikos.icatch.tm_unique_name = tm
com.atomikos.icatch.serial_jta_transactions=true
com.atomikos.icatch.automatic_resource_registration=true
com.atomikos.icatch.console_log_level=WARN
com.atomikos.icatch.enable_logging=true
com.atomikos.icatch.threaded_2pc=false
com.atomikos.icatch.force_shutdown_on_vm_exit=false
我的transactions.properties文件里就写了这么多:
com.atomikos.icatch.service=com.atomikos.icatch.standalone.UserTransactionServiceFactory
com.atomikos.icatch.automatic_resource_registration = true
com.atomikos.icatch.enable_logging = false
com.atomikos.icatch.max_actives=-1
你的数据库连接是怎么管理的追问
我第一次的数据库连接是通过service.xml的bean来实现的,可能是引用了事务管理整合spring了,以后数据库连接过期了,会自动找applicationContext.xml文件里面的访问数据库地址,用户名和密码,我检查了applicationContext.xml文件,发现与service.xml里面的地址,用户名等写的不一致,才导致这样的结果。等我再测试一晚上看看,第二天验证一下。
追答嗯...试试好了
Eclipse运行jsp文件或者web项目
前提:Eclipse(中文版)正常运行,java环境(jdk1.8版本)搭建完毕
1.在自己的电脑上下载(部署)好Tomcat
PS: tomcat是符合java ee标准的最小的web server,它可以完成大部分的小型系统的开发,并且提供支持,tomcat最大的分水岭是tomcat4.1之后,而在tomcat5.5之后也发生了一些改变,到今天使用的tomcat9。
①在官网上 http://tomcat.apache.org/ 上下载Tomcat安装程序(这里我选择用exe程序来安装Tomcat)
PS:为了避免Tomcat 9会跟Eclipse上的一些操作冲突,这里我选择下载Tomcat 8.5 版本
②运行apache-tomcat-8.5.50.exe程序,这里不多说,最终finish即可。
为了证明Tomcat安装成功,我们需要启动Tomcat来看看打开网页 http://localhost:8080/是不是有Apache Tomcat页面
怎么启动Tomcat可以参考下下面步骤③
③我在上面步骤安装Tomcat时是安装在了目录E:\\Program\\Tomcat-8.5,接下来,
①win+R,输入cmd,回车
②输入e: ,回车
③输入cd E:\\Program\\Tomcat-8.5\\bin,回车
④输入startup.bat,回车
⑤浏览器打开 http://localhost:8080/,Apache Tomcat页面就成功了。
2. Tomcat + Eclipse
(1)在Eclipse的Help进行一系列操作:
①点击Help -> Install New Software(帮助—>安装新软件)
②在Work with:输入或者选择一个站点,空格行输入
Oxygen - http://download.eclipse.org/releases/oxygen
③下面选项最后一行: Web,XML,Java EE and OSGi.....扩展出来
④勾选5个:
clipse Java EE Developer Tools
Eclipse Java Web Developer Tools
Eclipse Web Developer Tools
Eclipse XML Editors and Tools
JST-Server Adapters Extensions
⑤下一步,下一步,选择接受,完成。接下来等待Eclipse下方的进度条,结束后重启Eclipse就行了。
(2)在Eclipse的Wndow进行一系列操作:
打开Window - Preferences(窗户——>首选项)
(3)在Eclipse创建一个web项目执行jsp文件
①点击 File->New->Dynamic Web Project。
PS:如果在File->New下没有出现Dynamic Web Project选项,那么就选Other,输入Web,应该会出现Dynamic Web Project
②在Project name中命名,我命名为Demo
③在target runtime中点击New runtime,选择自己安装的版本的tomcat
④在Dynamic webmodule version中,选择3.1
⑤在Cononfiguration中点击Modify,勾选情况如下图,确定
⑥点击finish,结果然后如下图
⑦接下来创建一个简单的jsp页面,在上图中红色箭头所指的文件夹点击右键,点击new->jsp file,在file name填上文件名,我写01,然后点击finish,结果如下
⑧点击01.jsp,输入以下代码,保存
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
123
</body>
</html>
⑨鼠标右键,Run As -> Run on Server(运行方式-> Run on Server),弹出Run on Server对话框,按照下面两个图操作完finish
PS:如果是第一次运行web项目,先创建个服务器,如下图
finish后出现下图
(4)导入(加载)其他Web项目
同样像上面一样需要先创建一个web项目
右键点击web项目,点击import ->import
选择File Systms(文件系统),点击next
点击Browse(浏览),加载目标web项目的路径,点击finish
PS: 如果不先创建一个新的空的web项目,而直接在File选项下导入文件夹,可能会有一些错误需要处理,所以并不建议这么做
PS: 导入web项目后要注意我们是希望运行文件是在WebContent目录下的,如果不是在这个目录下,可以在文件目录下自己操作一番,再回到Eclipse下该项目右键刷新
PS: 如果在点击时Run As -> Run on Server 没有 Run on Server选项的话,可以参考下如下做法:
①打开该web项目的.project文件
②添加如下代码
在 <natures> </natures>中加入
<natures> <nature>org.eclipse.jem.workbench.JavaEMFNature</nature> <nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature> <nature>org.eclipse.jdt.core.javanature</nature> <nature>org.eclipse.wst.common.project.facet.core.nature</nature> <nature>org.eclipse.wst.jsdt.core.jsNature</nature> </natures>
在 <buildSpec> </buildSpec>中加入
<buildSpec> <buildCommand> <name>org.eclipse.wst.jsdt.core.javascriptValidator</name> <arguments> </arguments> </buildCommand> <buildCommand> <name>org.eclipse.wst.common.project.facet.core.builder</name> <arguments> </arguments> </buildCommand> <buildCommand> <name>org.eclipse.jdt.core.javabuilder</name> <arguments> </arguments> </buildCommand> <buildCommand> <name>org.eclipse.wst.validation.validationbuilder</name> <arguments> </arguments> </buildCommand> </buildSpec>
③回到Eclipse,右键刷新web项目,Run on server 应该能有了。不过,如果没有按照前面的步骤先把一些该加载的该勾选的内容弄完,那么这里可能还需要再多做些别的操作。
PS: 如果出现因为端口问题导致服务器打不开的话,可以参考如下做法
以上是关于java web项目能正常运行,开着tomcat,mysql服务也没停,过了一晚上就不好使了,再点画面就报异常。的主要内容,如果未能解决你的问题,请参考以下文章
项目部署到tomcat上,tomcat能正常启动,为啥却无法访问?
在java中怎么能让tomcat启动完后,spring配置文件加载完后自动运行某个类?