我有一个可插入 5 个项目的 jar (xyz.jar),当任何人登录到这 5 个名为“loginObject”的应用程序中的任何一个时,所有项目都会在 session 中创建一个对象,我必须在“中的 session 中使用这个对象” xyz.jar”,但 LoginObject 类位于主项目中,因此我无法将其类型转换为“loginObject”类。
EGlobalLoginBean loginObject=(EGlobalLoginBean ) httpSession.getAttribute("loginObject");
现在类“EGlobalLoginBean”位于主项目中而不是“xyz”中,因此我无法对其进行类型转换,并且由于无法进行类型转换,因此我无法调用它的方法。 我无法将主项目作为依赖项目添加到“xyz”中,因为它应该以相反的方式发生。
我们非常感谢所有建议。
最佳答案
恕我直言,你必须解决这个问题
将 .class 文件复制到 xyz.jar 的 web-inf/classes(如果它是 Web 应用程序),或者将其添加到服务器的类路径(不好,但它会起作用)。无论哪种方式,您都必须提取 .class 文件(及其依赖项)。
使用 URL 类加载器加载 .class 文件,让它实现一个公共(public)接口(interface)并使用该接口(interface)调用它的方法。
关于java - 在 session 中调用对象的方法而不进行类型转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28317940/