java - 将 Jar 添加到 JSP 的运行时路径

标签 java jsp jakarta-ee jar

我正在使用 IBM 的 Rational Software Architect(我想本质上是 Eclipse)。我有一个 JAR 文件,其中包含用于访问 Web 服务 (JAX-RPC) 的代理类。我创建了一个带有简单 JSP 页面的动态 Web 项目,在其中我尝试使用此库中的代理类来使用 Web 服务。 JSP 页面中的代码:

<jsp:useBean id="queryProxy" scope="session" class="location.DataSearchProxy" />
<% queryProxy.setEndpoint("http://localhost:9080/CIDataService/services/DataSearch"); %>
<%=queryProxy.query("SELECT street, city, prov, postcode FROM v_location WHERE c1 = '48704'") %>

此时,我已将外部 JAR 文件添加到构建路径的库部分,但是当在浏览器中的 WebSphere 上运行 JSP 页面时;我收到“DataSearchProxy 无法解析为类型”错误。

我也尝试过使用:

<%@ page import="location.DataSearchProxy" %>
<% DataSearchProxy queryProxy = new DataSearchProxy(); %>
<% queryProxy.setEndpoint("http://localhost:9080/CIDataService/services/DataSearch"); %>
<%=queryProxy.query("SELECT street, city, prov, postcode FROM v_location WHERE c1 = '48704'") %>

但我遇到了同样的错误。我对这种类型的 Web 项目有一种感觉,我可能需要以其他方式引用它,以便可以从 JSP 页面或项目中的其他 Bean 解析它。我可能会以错误的方式处理这个问题,我希望有人能为我指出从 JSP 使用 Web 服务的正确方向。

最佳答案

您可能希望将 jar 打包到您的应用程序中。

  1. 将其从构建路径中删除(我们稍后会将其添加回来)
  2. 将 JAR 放在 EAR 的根目录中,将其拖到您的应用程序项目中,而不是 WEB 应用程序中
  3. 打开您的 Web 项目属性并转到 Java EE 依赖项。您应该看到那里提供的 jar 。选择它,它会将其添加到构建时类路径和 list 中,以便在运行时获取它。

关于java - 将 Jar 添加到 JSP 的运行时路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1306887/

相关文章:

java - 从jsp中的数据表中获取选定复选框的值

jakarta-ee - request.getSession(false)的作用是什么?

java - 如何从maven命令行读取环境变量并选择正确的属性文件

java - 如何从 Servlet 响应 'included' JSP

javascript - 使用strutst html标签时,如何在提交按钮上调用onclick事件?

java - 无状态 session bean 之间的循环依赖 - 好的做法?

servlets - 使用 Scriptlet 访问 Get 参数

java - Keycloak 自定义 spi - 自定义事务超时

java - 无法让 OnTouchListner 工作

java - 我想在 android 应用程序中实现 AsyncTask 并行执行器