gpt4 book ai didi

java - 调用托管在 JBOSS 4 上的 EJB 的 Tomcat 在新部署后产生错误

转载 作者:行者123 更新时间:2023-11-28 22:16:16 27 4
gpt4 key购买 nike

我的应用程序中有以下设置:

ABCAPI.java (TestAPIInterface.jar)

public void search(FormData data);

ABCAPIBean.java (TestAPI.ear)

public void search(FormData data) 
{
//log
//more code
}

ABCAction.java (TestUI.war)

public void loadList(session) {
//get ABCAPIBean
api.search(loadFormData(session));
}
public FormData loadFormData(session) {
//get some information from ABCCore class based on form filters
}

ABCCore.java (TestCore.jar)

在JBoss、tomcat服务器中部署了以下包

JBoss 集群(节点 1、节点 2)

TestAPI.ear
TestAPIInterface.jar
TestCore.jar

Tomcat Web 服务器(节点 1、节点 2)

TestUI.war
TestAPIInterface.jar
TestCore.jar

在我对 ABCCore.java 文件进行一些代码更改并将最新的 TestCore.jar 部署到所有服务器之前,一切似乎都运行良好。

现在,当访问 UI 时,我交替获得结果和错误。当我检查日志时,每当 UI 应用程序从节点 1 请求 ABCAPIBean 时,它都会抛出错误“InvalidObjectException”,而当它从节点 2 请求时,它会给出结果。 “ABCCore.java”中引入的新常量会发生这种情况。

一个可能的问题是最新的 jar,但我通过将 TestCore.jar 从 node2 复制到 node1 来消除它。我仍然在 node1 中看到同样的问题。还有其他建议吗?

P.S:我在 Jboss node1 中没有看到日志语句 (ABCAPIBean),但我在 Jboss node2 中看到了它。 InvalidObjectException 出现在 tomcat UI 日志中

最佳答案

这看起来像是部署错误。如果您确定您的服务器上分别有正确版本的 jar 和 war 文件,您可以尝试清理部署。

在 Tomcat 中,停止进程,删除 work 目录内容,然后重新启动。 JBOSS 中也有一个类似的工作目录,您可以按相同的方式进行(停止、清理、启动)。

顺便说一句,你没有说你是在 Windows 还是 Linux 上。 Windows 上的 Tomcat 上有一些老错误,称为“jar 锁定”,可能会产生此类错误。

关于java - 调用托管在 JBOSS 4 上的 EJB 的 Tomcat 在新部署后产生错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49283463/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com