Websphere部署使用常见报错

  • 文档创建者:doreen0813
  • 编辑次数:3次
  • 最近更新:Roxy 于 2020-07-16
  • 1. 部署报错 404

    1.1 问题现象

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

    1.png

    1.2 原因分析 

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

    1.3 解决方案

    比如查看 Webshere 的 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 原因分析

    按照 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"

    附件列表


    主题: 部署集成
    已经是第一篇
    已经是最后一篇
    • 有帮助
    • 没帮助
    • 只是浏览
    • 评价文档,奖励 1 ~ 100 随机 F 豆!