1.SpringBoot项目改造,适配金蝶服务器
1.1修改打包方式,去除内置的tomcat依赖
<packaging>war</packaging>
<!-- 移除嵌入式tomcat插件 -->
<!--provided:编译和测试时有效,但是该依赖在运行时由服务器提供,并且打包时也不会被包含进去-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
1.2.修改启动类,初始化方法
//1、修改启动类,继承 SpringBootServletInitializer 并重写 configure 方法
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
log.info("======AAS===WebApplication====start==========");
return builder.sources(ServerApplication.class).initializers(applicationContext ->{
new ApplicationCtxUtil().initialize(applicationContext);
});
}
//2、如果模块需要上传文件需要添加下面的代码,如果没有可以忽略
@Bean(name = "multipartResolver")
public MultipartResolver multipartResolver() {
// MultipartResolver resolver = new CommonsMultipartResolver(); // 国产服务器可能需要使用这个
MultipartResolver resolver = new StandardServletMultipartResolver();
return resolver;
}
1.3.添加额外的依赖包,如适配人大金仓数据库
<!--适配人大金仓数据库-->
<dependency>
<groupId>cn.com.kingbase</groupId>
<artifactId>kingbase8</artifactId>
<version>8.6.0</version>
</dependency>
2.金蝶服务器配置修改
2.1 补充缺少的jar包(若未报错,可不添加)
位置:#rootPah/AAS/common 增加jakarta.el-3.0.4.jar
位置:#rootPath/AAS/lib 增加javax.el-api-3.0.0.jar
2.2 修改金蝶中间件的参数
位置:#rootPath/AAS/domains/mydomain/config/vm.options
注释下面的一行,放开限制的方法:
##放开访问的方法限制
#apusic.http.disabledMethods=DELETE,PUT,TRACE,OPTIONS
##放开访问的ip限制
com.apusic.webtool.allowHosts=*
2.3 domain端口修改:
配置文件位置:
#rootPath/AAS/domains/mydomain/config/apusic.conf
Apusic domain的端口,默认可以不改,若有需要可以修改
2.4 服务的启停:
启动服务:进入DOMAIN_HOME/bin/目录,执行
nohup ./startapusic &
停止服务:进入DOMAIN_HOME/bin/目录:
./stopapusic
## 如果停止不了,可以查找端口占用,然后kill pid服务
lsof -i:6888
kill -9 pid
2.5 登录页面:
中间件管理网页 http://ip:6888/admin 用户名admin
2.6 在金蝶服务器上添加应用服务
修改内存
在一个域(domain)下部署多个服务时,内存可能不够,需要添加修改:
添加应用服务
应用访问地址: http://ip:6888/system
3. 其他问题
3.1 多文件上传问题
如果出现参数里面获取不到文件时,如
@RequestParam("files")
List<MultipartFile> files;
需要在金蝶的域下面的config/web.xml添加
<context-param>
<description>
Setpasstagestage.
</description>
<param-name>apusic.allowCasualMultipartParsing</param-name>
<param-value>true</param-value>
</context-param>
然后重启金蝶服务器即可