2009-08-20 72 views
0

我正在使用IBM的Rational Software Architect(本質上是Eclipse,我猜想)。我有一個包含代理類來訪問Web服務(JAX-RPC)的JAR文件。我用一個簡單的JSP頁面創建了一個動態Web項目,其中我正嘗試使用此庫中的Proxy類來使用Web服務。從JSP頁面代碼:將JSP添加到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'") %> 

在這一點上我已經運行在WebSphere JSP頁面當外部JAR文件添加但是到構建路徑的庫部分,在瀏覽器中;我得到「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-Project的感覺,我可能需要以其他方式引用它,以便可以從JSP頁面或項目中的其他Beans中解析它。我可能會以錯誤的方式解決這個問題,我希望有人能夠指出我從JSP使用Web服務的正確方向。

回答

1

您可能想要將jar打包到您的應用程序中。

  1. 從您的構建路徑刪除它(我們將在後面添加回來)
  2. 把JAR的EAR的根,將其拖動到你的應用程序項目,而不是Web應用程序
  3. 打開Web項目屬性並轉到Java EE依賴項。你應該看到那裏提供的罐子。選擇它,它會將它添加到這兩個構建時間類路徑和Manifest以便它在運行時拾取。
+0

啊完美!這是確切的問題,謝謝! – 2009-08-20 15:50:35