历史版本4 :Websphere部署使用常见报错 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 部署报错 404编辑

1.1 问题现象

WebSphere 部署后输入访问地址,报错 Error 404:java.io.FileNotFoundException: SRVE0190E: 找不到文件:/decision,如下图:

1.png

1.2 原因分析 

查看 WebSphere 客户端是否安装了 OS(AIX),WebSphere 的 OS(AIX)对应的语言环境是否与 FineBI 使用不一致。

1.3 解决方案

比如查看 WebSphere 的 OS(AIX)的语言环境,默认情况下如下所示:

LANG=C LC_COLLATE="C"
LC_CTYPE="C"
LC_MONETARY="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_MESSAGES="C"
LC_ALL=

该语言环境 C 与 FineBI 中默认不一致,需要修改其为 en_US.UTF-8 ,并重启 WebSphere 服务器。

2. ERRORCODE=-4220,SQLSTATE=22021编辑

2.1 问题现象

直接安装的 FineBI 能连上 IBM DB2 数据库,打包部署到 WebSphere 中后,连不上 DB2 数据库,报错:ERRORCODE=-4220,SQLSTATE=22021,如下图所示:

1.png

1.png

2.2 原因分析

当应用程序使用用于 JDBC 和 SQLJ 的 IBM 数据服务器驱动程序(也称为 JCC 驱动程序)并使用代码集 UTF-8 (代码页 1208 )连接到数据库时,它会抛出一个包含“捕获 java.io”的消息的 SqlException 。如果查询的字符列中的数据包含的字节序列不是有效的 UTF-8 字符串,则 CharConversionException”和 ERRORCODE=-4220 。

2.3 解决方案

导航到服务器 > WebSphere application Servers > server_name > Java和流程管理 > 流程定义 > Java虚拟机 ,勾选调试方式,在通用 JVM 参数中加入参数:-Ddb2.jcc.charsetDecoderEncoder = 3,如下图所示:

1.png

添加成功后,重启 WebSphere,重新连接 IBM DB2 数据库即可。

3. NO target servlet configgred for uri:/webroot/decision编辑

3.1 问题现象

WebSphere 在成功部署 FineBI 工程后,输入访问地址(“服务器IP”+“端口”+“工程文件名”+“decision”)访问时,页面报错Error 404:com. ibm. ws. webcontainer. servlet. exception. NoTargetForURLException: No target servlet configured for uri: /webroot/decision,如下图所示:

1.png

3.2 原因分析

按照 Linux 系统 Websphere 服务器部署 部署时,在为 Web 模块映射上下文根,将上下文根改为工程名步骤时,可能填的非 webroot 工程名,则在输入访问地址时,使用 webroot 工程文件名访问就会报错 NO target servlet configgred for uri:/webroot/decision ,如下图所示:

1.png

3.3 解决方案

确定在步骤 7:为 Web 模块映射上下文根时输入的上下文根,比如上下文根输入的地址为/home/wasadmin,则在部署成功后的访问地址需要使用:http://ip:port/home/wasadmin/decision,如下图所示:

1.png

4. 权限配置无法选择含有中文的登录用户所在字段数据表编辑

4.1 问题现象

登录用户只能查看与自身相关的数据 只能选择系统用户名,无法选择含有中文的登录用户所在字段数据表。

4.2 原因分析

 WebSphere 服务器编码问题。

4.3 解决方案

修改 WebSphere 编码为 UTF-8。

1)进入服务器>服务器类型>WebSphere Application Server>SuiteServer>进程定义> Java 虚拟机

通用 JVM 参数修改为 -Dfile.encoding=UTF-8 -Ddefault.client.encoding=UTF-8,如下图所示:

12.png

2)进入目录%IBM%WebSphere/AppServer/profiles/AppSrv01/config/cells/10Cell01/nodes/10Node01/servers/SuiteServer

修改其中的server.xml中的参数genericJvmArguments="-Dfile.encoding=UTF-8 -Ddefault.client.encoding=UTF-8"