17年下半年的时候简单学了下strus2,好吧,现在已经全忘了,idea也是刚开始用,本来想按教程写个hello struts2,结果,出了以下系列问题。

pre:step1-5是我按照百度的教程搭的,但是后来却出现了问题,可能是因为idea版本的问题(我电脑32位,安装好几次最新版的idea2018,但是运行没反应,所以才换的2017版,我也不知其中原因)。

    step6以后是我找出错原因的步骤,因为是小白,具体机理不懂,仅供参考吧。

/---------------------------------------------------------------------------------------------------------------------/

step1:安装tomcat和idea就不多说,版本(apache-tomcat-9.0.0.M22)(IntelliJ IDEA 2017.3.5)

step2:idea的正常步骤新建project->java Enterprise,然后如下图:

注意:我们点开Configure时,可以看到对应的struts的版本,我这里是2.5,小窗口里面可以看到7个依赖jar包。

step3:next之后,选择工程名和保存目录,自己设置下就好了。建立之后的工程结构如图:

step4:点击File->Project Structure->Artifacts,在“右击”处右击,put into output root。

step5:编写jsp:在web目录下新建一个hellostruts2.jsp文件,其中<body>hello struts2</body>。

打开:struts.xml配置如下内容:

然后右上角绿色启动;

step6:妥妥的,报错:

我们点开旁边的Tomcat Localhost Log看下:

得,类找不到,这个org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter怎么会找不到呢?

看下我们工程下的lib下的结构目录,该目录放了我们环境需要依赖的jar包:

这个dispatcher下哪有什么.ng文件啊!打开WEB-INF下的web.xml,这里果然报错标红了:

没有当然报错了,百度下https://blog.csdn.net/hgx_suiyuesusu/article/details/78167616,我们修改为:

运行:然而有出错了:

查看tomcat的日志文件:

反射异常,报错提示,缺少了 javassist的jar文件(不知道为什么开始见工程的时候选择struts2中并没有step2中的截图):上maven库找:http://mvnrepository.com/。 javassist-3.20.0-GA.jar 。

将这个jar导入project中:

运行,成功了:

打开浏览器输入访问地址: http://localhost:8080/hello

完成!!!

struts2学习一:hello struts2及struts2环境配置中遇到的问题的更多相关文章

  1. Ant学习-001-ant 基础知识及windows环境配置

    一.Ant 概要基础知识 Apache Ant 是一个将软件编译.测试.部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发,用以构建应用,或结合其他开源测试工具例如 git.T ...

  2. [eShopOnContainers 学习系列] - 02 - vs 2017 开发环境配置

    [eShopOnContainers 学习系列] - 02 - vs 2017 开发环境配置 https://github.com/dotnet-architecture/eShopOnContain ...

  3. [原创]java WEB学习笔记55:Struts2学习之路---详解struts2 中 Action,如何访问web 资源,解耦方式(使用 ActionContext,实现 XxxAware 接口),耦合方式(通过ServletActionContext,通过实现 ServletRequestAware, ServletContextAware 等接口的方式)

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  4. Struts2学习笔记(一) Struts2配置文件的配置

    1.配置web.xml文件. 在Struts2中,struts框架式通过Filter启动的.Filter在web.xml中的配置如下: <filter> <filter-name&g ...

  5. struts2学习笔记(二)—— struts2的架构【转】

    一.系统架构   Struts2的官方文档附带了Struts2的架构图. 从这张图能够非常好的去理解Struts2 关于图中的Key: Servlet Filters:过滤器链,client的全部请求 ...

  6. struts2学习笔记(一)—— struts2介绍及入门程序

    一.struts2概述 1.1 什么是struts2? 在介绍Struts2之前,先来认识一下Struts1.Struts1是最早的基于MVC模式的轻量级web框架,他能够合理的划分代码结构,并包含了 ...

  7. Python学习(一)安装、环境配置及IDE推荐

    Python的安装.环境配置及IDE推荐 官网:https://www.python.org/ 版本:2.x 和 3.x 差别较大:python3是不向下兼容:版本区别可参考网官网介绍 至于选择 Py ...

  8. 【Mac + Appium + Python3.6学习(三)】之IOS自动化测试环境配置

    在做这一节之前先配置我的另一篇文章所需要安装的前提准备条件:<[Mac + Appium学习(一)]之安装Appium环境前提准备> 一.安装IOS自动化测试环境 配置环境: Appium ...

  9. cocos2d-x的初步学习二十一之iosandroid跨平台环境配置

    这篇文章中,我们将来构建下跨平台开发的环境配置,我自己也是参考了别人了文章,折腾了几个小时,尤其是android的配置相对麻烦些.... 参考自子龙山人:http://www.cnblogs.com/ ...

  10. cocos2dx 3.0 学习笔记 引用cocostudio库 的环境配置

    cocostudio创建UI并应用时须要引用cocostudio库,须要额外的环境配置: 之前已经搭配好了基础的开发环境,包含 1) JDK 2) Python 2.7 3) ant 4) visua ...

随机推荐

  1. RENIX报文两个字段嵌套变化——网络测试仪实操

    RENIX软件如何实现报文中两个字段嵌套变化,以下为您实操讲解详细步骤. 1.打开Renix软件,连接机框并预约测试端口: 2.创建一条RAW流量(Binding流量也可以,这里用RAW流做例子) 3 ...

  2. for循环中i++和++i 的区别(转载)

    ++i是先执行i=i+1再使用i的值,而i++是先使用i的值再执行i=i+1: for循环的执行顺序是这样的: for(a;b;c){ d; } 进入for循环,首先执行起始语句a,然后判断语句b是否 ...

  3. C# 9.0元组 (ValueTuple)详细解说

    元组 (ValueTuple)类型是值类型:元组元素是公共字段,可以使用任意数量的元素定义元组.Tuple类型像一个口袋,在出门前可以把所需的任何东西一股脑地放在里面.您可以将钥匙.驾驶证.便笺簿和钢 ...

  4. CLR 详解

    公共语言运行时就是按照CLI标准制作的执行托管代码的环境.CLR 能运行非托管代码. 公共语言运行的功能:代码JIT/AOT编译.  内存管理 .垃圾回收.异常处理.反射服务.安全服务.程序集加载.本 ...

  5. oj教程--栈

    栈(stack)又名堆栈,它是一种运算受限的线性表.其限制是仅允许在表的一端进行插入和删除运算.这一端被称为栈顶,相对地,把另一端称为栈底.向一个栈插入新元素又称作进栈.入栈或压栈,它是把新元素放到栈 ...

  6. 哈工大 信息安全实验 XSS跨站脚本攻击原理与实践

    XX大学XX学院 <网络攻击与防御> 实验报告 实验报告撰写要求 实验操作是教学过程中理论联系实际的重要环节,而实验报告的撰写又是知识系统化的吸收和升华过程,因此,实验报告应该体现完整性. ...

  7. 树莓派4B安装 百度飞桨paddlelite 做视频检测 (一、环境安装)

    前言: 当前准备重新在树莓派4B8G 上面搭载训练模型进行识别检测,训练采用了百度飞桨的PaddleX再也不用为训练部署环境各种报错发愁了,推荐大家使用. 关于在树莓派4B上面paddlelite的文 ...

  8. ASP.NET Core 6框架揭秘实例演示[18]:HttpClient处理管道

    我们知道ASP.NET的核心就是由中间件组成的请求处理管道,HttpClient也采用了类似的设计.HttpClient管道由一组HttpMessageHandler对象构成,这些HttpMessag ...

  9. PhpStorm中绘画UML

    IDE支持 在Plugins中 安装PlantUML integration插件 到http://www.graphviz.org/网站下载graphviz.exe并安装(这个软件可以支持更多的UML ...

  10. knative入门指南

    尽管Knative自2018年以来一直由社区维护,但最近一直有关于该项目的传言,因为谷歌最近将Knative提交给了云原生计算基金会(CNCF),作为一个孵化项目考虑. 太酷了!但Knative到底是 ...