前言
在跑支付宝提供的支付案例Demo的时候,遇到了一些问题。支付宝提供的Demo是用Eclipse跑的JAVAEE项目。我想用IDEA来跑一下看看、结果使用习惯了Mavne管理jar包和SpringBoot项目。启动web项目的时候,还遇到一些问题。特此记录遇到的一些小问题。顺便回顾一下web项目启动。
案例代码地址:电脑网站支付 Demo
IDEA导入项目,配置tomcat后,直接启动运行
源码传送门
1、IDEA中导入项目
先不使用直接打开项目的方式,而是使用new->Project from Existing Source...
的方式
好几次的next,中间页面都选择默认配置
选择jdk的版本,案例提供的是jdk1.7。我这里使用的是jdk1.8 。需要修改
2、配置Web项目
打开项目结构,然后依次配置。直接按照图片来就行
2.1 修改Project
修改jdk版本
2.2 修改modules
这里将项目自带的有关Eclipse的相关配置删除。然后配置自己的。按照步骤来就行
在modules中新增加Web,这里有个很重要的点,就是配置的web目录必须是项目中对应的文件名。默认生成的是web,但是项目中使用的是Webcontent
这里很重要,一定要修改成和项目中的目录名一样。默认是web
由于没有配置依赖库,此时点击不会有依赖加入
2.3 添加Libraries
这里就是将项目中的jar导入。特此说明,这里项目提供的jar包不完整,需要额外添加jar包,否则代码中的部分接口调用会失败,也会导致项目启动失败。具体jar包在后续流程给出。
2.4 修改Artifacts
这里将刚刚添加的依赖库加入
2.5 添加新的依赖包
如果不添加依赖包,代码报错、就像下图所示。eclipse中应该有默认的jar包。但是idea中需要额外添加。
将jsp-api.jar 和servler-api.jar 放入项目中的lib目录下。关于这两个jar包从哪里来,你可以去官网下载,也可以直接到安装的tomcat目录下寻找。我就是直接在tomcat中的库拷贝的。
新的依赖库加入方式,同 2.3,然后还需要导入到项目中 同2.4 。其实你也可以直接先将这两个jar包放入lib包下。然后一次性将所有的jar包加入。
加入新的jar包后就不会报错了,如果还报错,请清除一下idea的缓存,重启动IDEA。
3、项目配置tomcat
具体配置过程略,可以参考我之前写的
2022年最新最详细在IDEA中配置Tomcat(含有详细图解过程)、建立使用IEDA建立一个Web项目的案例
配置tomcat
4 、启动项目
启动项目的时候,可能会报错非法字符啥的。这个时候,你需要修改字符编码方式。方法很简单。页面右下角有个选项,选择GBK,然后在弹出框中选择Convert。然后再次选择UTF-8,然后选择Convert,这样在启动项目就不会报这个错误了。
5、修改代码中参数
将公私和私钥、ID啥的写入对应位置。有关以下参数、请在支付宝案例文档中查看。
6、支付效果展示
7、遇到的问题
1、项目报状态404 ?
我知道是没有web项目没有配置后,找了蛮久,最后发现就是添加modules的时候,生产的是默认的web,项目中的是Webcontent。两者不匹配导致。需要修改web为Webcontent。
2、页面报非法字符?
修改编码方式,配置中file-encoding 也要修改以下。页面的编码方式按照convert那个方式可行。查看人家的方式得知。
3、页面中的代码爆红?
是项目中的jar包缺少jsp-api.jar 和servler-api.jar 这两个。需要将这两个jar包也放入项目中的lib目录下,然后在配置一下Artifacts