项目从 tomcat7部署到tomcat8「建议收藏」

项目从 tomcat7部署到tomcat8「建议收藏」这段时间将一个老项目从tomcat7部署到tomcat8上,期间遇到的典型问题。接下来我会介绍下整个升级过程和在升级中遇到的问题。首先要装个jdk8+,因为开发环境用的是eclipse,还要搞个兼容tomcat8的eclipse.新下的tomcat8里是自带20几个jar的,这是要留着的不能直接拿来tomcat7的lib就用。因为老项目要依赖的jar都放在了tomcat下没有用maven,所以拿来…

大家好,又见面了,我是你们的朋友全栈君。

这段时间将一个老项目从tomcat7部署到tomcat8上,期间遇到的典型问题。

接下来我会介绍下整个升级过程和在升级中遇到的问题。

首先要装个jdk8+,因为开发环境用的是eclipse,还要搞个兼容tomcat8的eclipse.

新下的tomcat8里是自带20几个jar的,这是要留着的不能直接拿来tomcat7的lib就用。

因为老项目要依赖的jar都放在了tomcat下没有用maven,所以拿来Tomcat7的lib用Tomcat8的

初始jar覆盖下。因为tomcat的类加载机制,在启动tomcat时会报很多jar找不到或是版本不合适,

如果原来没有这个jar就去下载,如果有只是版本号不同那在jar上改个要求的版本号也是可以的。

前面jar都替换好之后,并且编译没报错就可以进行下一步了,启动tomcat,我在启动tomcat时遇到的第一个问题就是连接

sqlServer的问题,报的是dao注入失败,因为用的是ssh框架迅速查了一遍各种配置,因为连接的是双数据源,mysql是没有问题的,这就让我很纠结了,就查驱动之类的,写了个连接mysql和sqlServer的小程序,跑起来发现都能够连接成功。于是转移目标继续死查配置和注解,并没用。后来看一个tomcat8的源码博客发现tomcat7与tomcat8使用的数据库连接池规范不一样。tomcat7用的是dbcp1而tomcat8用的是dbcp2。dbcp2连接数据库的接口isvalid实现换成了validationQuery(),因此想要在tomcat8中使用jtds就要在Resource中加上validationQuery() = ‘’select 1‘’。然后这个问题解决了。

接下来是structs2的版本问题,因为之前版本太低 ,所以org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter

org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter(web.xml里配置的structs2的核心过滤器)2.5的版本

tomcat启动成功后,,登陆页面报500,看jsp发现是jsp规范性的问题,可能我们平常没有注意到,下面代码后面是不应该有分号的!

<%@ page language=”java” contentType=”text/html; charset=UTF-8″
pageEncoding=”UTF-8″

import=”java.io.BufferedReader,java.io.IOException,java.io.InputStreamReader,java.io.LineNumberReader,java.net.InetAddress,java.net.UnknownHostException,java.util.Properties;”%>

但是这一问题在tomcat7里并没有暴露出来。

这就是我在把项目从tomcat7部署到tomcat8上遇到的几个比较典型的问题,其它问题就不一一叙诉了。

2018年3月4日下午

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/161057.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Unity插件——Odin使用心得(一)「建议收藏」

    Unity插件——Odin使用心得(一)「建议收藏」声明:本文章为作者对Odin插件常见功能的学习笔记,仅用于学习用途.插件在活动打折时购买,本人不提供插件下载链接.系列文章目录Unity插件——Odin使用心得(一)Unity插件——Odin使用心得(一)系列文章目录一.开发环境二.使用前准备三.常用功能讲解1.命名空间2.AssetsOnly\SceneObjectsOnly:引用限制为预制体\场景物体3.Delayer:延迟赋值4.DetailedInfoBox:信息提示–标题/内容5.EnableGUI:激活GUI6.GUIColo.

    2022年7月21日
    15
  • windows 7 开机错误 未能连接到一个Windows服务

    windows 7 开机错误 未能连接到一个Windows服务Windows无法连接到systemeventnotificationservice服务。此问题阻止标准用户登录系统。作为管理员用户,您可以复查系统事件日志,以获得有关此服务未响应原因的详细信息。如下图:莫名其妙突然电脑死机了,重启后就出现了上述问题,并且电脑无法连网,开机速度慢到需要4分钟多,刚开机还黑屏。查看systemeventnotificationserv…

    2022年5月15日
    43
  • Android SDK下载网址[通俗易懂]

    Android SDK下载网址[通俗易懂]google被墙了,官网http://developer.android.com/sdk/index.html进不去你可以在这下载你需要的版本http://www.androiddevtools.cn/

    2022年7月19日
    24
  • 在线视频加密播放(加密视频观看)

    在线视频加密播放(加密视频观看)功能描述:1.在线视频加密播放(加密视频观看) 2.视频播放密码/设定观看密码功能,对视频文件设置观看权限,划分学员和游客,学员输入正确的密码即可观看视频。STEP1登录酷播云管理平台,选择“视频列表”,点选对应视频,之后选择”视频设置”,即会弹出如下设置窗口,从“设置密码”中设定视频观看密码。图1:视频播放密码/设定观看密码功能STEP2用户观看端效果如下,支持PC端和移动端的播放密码功能。图2:视频播放密码/设定观看密码功能STEP3用户输入的

    2022年5月27日
    94
  • js回调函数例子_c回调函数简单例子

    js回调函数例子_c回调函数简单例子回调函数每一个异步任务返回一个Promise对象,该对象有一个then方法,允许指定回调函数

    2025年6月15日
    2
  • navicat for mysql 15 永久激活码_通用破解码

    navicat for mysql 15 永久激活码_通用破解码,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月17日
    844

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号