部署Web项目到tomcat

在eclipse中找到Servers项,打开服务器(F3)(建议直接删除服务器,重新建立再设置比较好)
1、Servers Locations 中选择Use Tomcat installation
2、Deploy path 改成 webapps
这时候在eclipse上直接运行项目,就会自动部署到tomcat上,通过浏览器或者eclipse都可以访问该项目。

Tomcat控制台的用户角色配置

在Tomcat的Mapper App中,默认没有提供控制台角色。所以需要自己去添加。

1、找到tomcat目录,进入conf目录,打开tomcat-users.xml 增加两条语句

<role rolename="manager-gui"/>
<user password="secret" roles="manager-gui" username="tomcat"/>
//其中username 和 password请自定义。  

设置后,重启tomcat服务,登录localhost:8080,即可通过Mapper app来管理部署的web项目。

解压版ApacheTomcat无法添加tomcat本地服务的问题。【安装版可忽略】

不开启tomcat本地服务,只能在eclipse中运行web项目,若想通过浏览器访问本地tomcat中webapps的项目,就必须开启tomcat服务。给ApacheTomcat增加一个本地服务,可以让eclipse和本地tomcat同时使用,方便部署。
注意:eclipse中的服务器端口是默认的,在本地tomcat开启服务的情况下,需要修改端口号,防止冲突。

tomcat添加服务解决方案。
首先,保证Java运行环境要配置好,记住JAVA_HOME指向JDK,别指向JRE路径, 不然会出现CATALINA_HOME或Java配置错误。
之后,在环境变量中,新建三个系统变量,全部指向tomcat目录

CATALINA_BASE C:\Program Files\tomcat8
CATALINA_HOME C:\Program Files\tomcat8
TOMCAT_HOME C:\Program Files\tomcat8

这时候再按照常规方式,在控制台中添加tomcat服务就可以成功了,然后可以去服务列表查看是否添加成功。

运行web项目时,常见异常解决【长期更新】

数据库相关

Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: No operations allowed after connection closed.

分析,出现这种异常的原因是:

Mysql服务器默认的“wait_timeout”是8小时,也就是说一个connection空闲超过8个小时,Mysql将 自动断开该connection。这就 是问题的所在,在C3P0 pools中的connections如果空闲超过8小时,mysql将其断开,而C3P0并不知道 该connection已经失效,如果 这时有Client请求connection,C3P0将该失效的Connection提供给Client,将会造成上面的异常。
a)解决的方法有3种:
增加wait_timeout的时间。
减少Connection pools中connection的lifetime。
测试Connection pools中connection的有效性。
b)具体解决方案:
1、换一下JDBC驱动,JDBC3.1.0-alpha及以前版本会出现此问题,下载新的JDBC驱动
2、使用hibernate配置:
使用hibernate:
<property name=”connection.autoReconnect”>true</property>  <!–这个是最主要的–>
<property name=”connection.autoReconnectForPools”>true</property>
<property name=”connection.is-connection-validation-required”>true</property>
加入以上property,可解决此问题,如果未使用hibernate等持久化管理框架,可在mysql的url中加入
autoReconnect=true,这样就可以解决。原因很简单。在对数据库操作结束后关闭连接是正确的做法,没什么大问题。
至于出现:No operations allowed after connection closed。这样的问题原因只有一个,你这里和数据库的连接Connection是一个Static的,程序共享这一个 Connection。所以第一次对数 据库操作没问题,当把Connection关闭后,第二次还想操作数据库时Connection肯定不存在了。
如果是直接在DAO层方法中开启连接,执行完后关闭连接,获取的Connection不能是静态的, 还有用一 个对象获取的也是会关闭,因 为使用的都是同一个资源。所以要么单独开启事务,执行完后手动关闭。要么就使用线程池,或者用多个对象获取。

java.lang.ClassNotFoundException: com.mysql.jdbc.Driver

  tomcat找不到MYSQL JAR包!必须把mysql-connector-java-5.1.7-bin.jar导入到tomcat的lib目录下面! 在java项目中,只需要引入mysql-connector-java-5.1.7-bin.jar就可以运行java项目。  在web项目中,当Class.forName("om.mysql.jdbc.Driver");时myeclipse是不会去查找字符串,不会去查找驱动的。所以只需要把 mysql-connector-java-5.1.7-bin.jar拷贝到tomcat下lib目录就可以了。

JSP标签相关

The absolute uri: [http://mytaglib.com] cannot be resolved in either web.xml or the jar files deployed with this application

  这个原因是因为taglib编译指令找不到uri对应的tld文件(标签库定义文件),是因为tld文件放错目录了,放在WEB-INF下即可访问。

自定义标签处理类时,无法继承SimpleTagSupport类

这个问题是因为Web项目的Apache Tomcat Library没导入,所以找不到该类。

解决步骤:在Eclipse中,右键点击出问题的Web项目,选择Build Path--->configure Build Path, 点击Add Library--->Server Runtime,选择当前的Tomcat,完成即可。 这时候再看Web项目中,Libraries 已经有Apache Tomcat X.0包了。

Eclipse部署Web项目,常用操作和常见错误的解决方案的更多相关文章

  1. 【Eclipse】eclipse部署web项目至本地的tomcat但在webapps中找不到

    clipse部署web项目至本地的tomcat但在webapps中找不到 1.发现问题 在我的 eclipse 中有个Dynamic Web Project(动态web项目),在本地的 tomcat ...

  2. eclipse部署web项目至本地的tomcat但在webapps中找不到

    一.发现问题 在eclipse中新建Dynamic Web Project,配置好本地的tomcat并写好代码后选择Run on Server,但运行后发现在tomcat的安装目录下的webapps并 ...

  3. Eclipse部署Web项目(图文讲解)

    讲解是在linux下完成的,但对windows系统,操作也是一样的,不要被吓到了 1.下载Eclipse

  4. eclipse部署web项目至本地的tomcat但在webapps中找不到问题

    一.发现问题 在eclipse中新建Dynamic Web Project,配置好本地的tomcat并写好代码后选择Run on Server,但运行后发现在tomcat的安装目录下的webapps并 ...

  5. 【转】部署web项目到weblogic上启动错误

    启动weblogic报错:java.lang.ClassCastException: com.sun.faces.application.WebappLifecycleListener cannot ...

  6. Maven Web项目配置Mybatis出现SqlSessionFactory错误的解决方案

    一.错误现象 严重: Context initialization failed org.springframework.beans.factory.BeanCreationException: Er ...

  7. eclipse中部署web项目

    因为eclipse是免费的,所以很多企业都会选用eclipse作为开发工作,那么我们就需要熟练使用eclipse部署web项目. 第一步:选择window -> preferences ,选择s ...

  8. eclipse中web项目部署以后jsp的java文件找不到问题(Tomcat配置serverlocations)

    我的开发环境:eclipse kepler (4.3)+tomcat7.0.42. 在我想看eclipse中web项目jsp文件被tomcat转换成java以后的java源文件的位置,发现正常情况下的 ...

  9. 【Eclipse】web项目部署新手篇

    本文属于新手篇章,记录了Eclipse中部署web项目的步骤 1 . 添加Tomcat服务器 右键项目属性-->Run as-->Run on server弹出以下界面 点击finish之 ...

随机推荐

  1. C# 将html文本转化为 文本内容方法TextNoHTML

    不记得在哪看过这个,挺实用的 /// <summary> /// 将html文本转化为 文本内容方法TextNoHTML /// </summary> /// <para ...

  2. <Android 基础(二十四)> EditText

    介绍 A text field allows the user to type text into your app. It can be either single line or multi-li ...

  3. 移动目标在三维GIS中的实现方法

    对于基于ArcGIS Runtime的应用程序,其实现方法比较简单,可以直接更新图形的Geometry属性,即可实现位置的移动: private void AddGraphics() { var gl ...

  4. Storm-Concept

    1. Storm集群架构          strom jar all-your-code.jar backtype.storm.MyWordCounterTopology arg1 arg2 这个命 ...

  5. Maximum Subarray 连续子数组最大和

    Find the contiguous subarray within an array (containing at least one number) which has the largest ...

  6. 微信小程序开发9-宿主环境(2)

    1.一个小程序页面可以分解成多个部分组成,组件就是小程序页面的基本组成单元.为了让开发者可以快速进行开发,小程序的宿主环境提供了一系列基础组件.组件是在WXML模板文件声明中使用的,WXML的语法和H ...

  7. prince2的市场使用规模有多大?

    PRINCE2的使用和应用非常广泛.在过去的12个月里,超过60,000人参加了PRINCE2基础资格(Foundation)或从业资格(Practitioner)考试.现在每周参加考试的人数超过了2 ...

  8. try catch 一点小记录

    这两天做了新的需求,做完之后 在测试环境下 完美通关.之后部署到了预发布环境,然而怎么尝试都不通过.刚开始看到 预发布的一个配置文件错了.发邮件改了下,但是依然流程跑不通.之后 一步步在测试环境看代码 ...

  9. 词法分析器Lexer

    词法分析 In computer science, lexical analysis, lexing or tokenization is the process of converting a se ...

  10. aspnetcore 认证相关类简要说明三

    今天我们再来了解一个很重要的接口IAuthenticationService的实现类AuthenticationService: public class AuthenticationService ...