项目从 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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java创建线程池的几种方式_Java中的线程池

    java创建线程池的几种方式_Java中的线程池Java创建线程池线程池:4大方法,7大参数,4种拒绝策略池化技术:把一些能够复用的东西(比如说数据库连接、线程)放到池中,避免重复创建、销毁的开销,从而极大提高性能。优点:降低系统资源消耗,通过重用已存在的线程,降低线程创建和销毁造成的消耗;提高系统响应速度,当有任务到达时,无需等待新线程的创建便能立即执行;方便线程并发数的管控,线程若是无限制的创建,不仅会额外消耗大量系统资源,更是占用过多资源而阻塞系统或oom等状况,从而降低系统的稳定性。线程池能有效管控线程,统一分配、调优,提供资

    2022年10月1日
    2
  • 全卷积网络fcn详解_全卷积神经网络原理

    全卷积网络fcn详解_全卷积神经网络原理原文链接:全卷积网络FCN详解背景CNN能够对图片进行分类,可是怎么样才能识别图片中特定部分的物体,在2015年之前还是一个世界难题。神经网络大神JonathanLong发表了《FullyConvolutionalNetworksforSemanticSegmentation》在图像语义分割挖了一个坑,于是无穷无尽的人往坑里面跳。全卷积网络FullyConvolutional…

    2022年10月19日
    3
  • python京东自动签到领金豆_docker 京东自动签到

    python京东自动签到领金豆_docker 京东自动签到项目紧张的忙完了,早上签到时突然想到自动签到~~’人生苦短,我用python’网上看了下,很简单。对于小白来说,主要难度是环境的搭建。主要用到:1selenium模拟浏览器2chromedriver(chrome驱动)上面网友已经实现飞猪京东签到,依葫芦画瓢嘛,实现了苏宁易购的签到。备注:只是很简单签到代码,没有登录的滑动签到的校验码(第一次登录签到)参照上面的,自己实现了苏宁易购的…

    2022年9月18日
    2
  • POJ3623:Best Cow Line, Gold(后缀数组)

    POJ3623:Best Cow Line, Gold(后缀数组)

    2022年1月13日
    38
  • 外贸英文外链代发布

    外贸英文外链代发布  能进来看到这篇文章,就说明大家都是有发布英文seo外链需求的人,平时比较忙,一个人忙不过来,没有时间发外链,或者自己外链资源太少,外链质量不高,网站总是没人气,没订单怎么办,这时候我们出现了,mmoboy专业团队,提供优质的英文外链服务:  通过人工注册博客、论坛、新闻等站点回复留言,把网站推广出去,制造手工的回复式外部链接。提高你的网站客户IP流量,增加网站的反向链接和google的收录…

    2022年5月17日
    43
  • docker离线安装配置

    docker离线安装配置1、下载docker的安装文件下载地址这里下载docker-20.10.8.tgz,将docker-20.10.8.tgz文件上传到系统上:将解压出来的docker文件内容移动到/usr/bin/目录下进入/etc/systemd/system/目录,并创建docker.service文件编辑docker.service:打开docker.service文件,将以下内容复制:[Unit]Description=DockerApplicationContainerEngin

    2022年9月25日
    3

发表回复

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

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