2009-07-01 99 views
0

我知道這是一個非常有幫助的社區..所以我希望我能爲我的問題得到答案。實際上,我有一個通過JDBC與Oracle數據庫聯繫的應用程序。如何通過WebStart部署JDBC客戶端應用程序?

現在我想通過WebStart部署它。我在應用程序中有一個打印日誌消息的文本區域。

一切順利,jnlp在客戶端下載我的應用程序jar。但突然間,日誌區域說,它無法連接到數據庫。我的意思是,當建立到數據庫的連接時,我得到一個SQL異常。

什麼可能會出錯。 當我通過web啓動部署應用程序時,是否應該包括任何其他jar/library? 但我聽說我只能通過webstart和 下載一個jar文件,一個jar不能包含另一個jar文件。

請幫忙。

這裏是我的JNLP文件

<?xml version="1.0" encoding="utf-8"?> 

<jnlp spec="0.2 1.0" codebase="http://172.16.3.214:8080/CRM" href="CsvClient.jnlp"> 

<information> 
    <title>CSV Import Client</title> 
    <vendor>CRM Software</Vendor> 
    <homepage href="index.jsp" /> 
    <description>CSV Import client</description> 
    <icon href="csv.gif" /> 
    <offline-allowed/> 
</information> 

<resources> 
    <j2se version="1.6+" /> 
    <jar href="csv.jar" /> 

</resources> 

<application-desc main-class="org.csv.Main" /> 

</jnlp> 

這是我經常拿jar文件Manifest.txt文件..

Manifest-Version: 1.0 

Main-Class: org.csv.Main 
+0

你可以發佈你的SQLException堆棧跟蹤嗎? – Mark 2009-07-01 16:13:34

+0

你能提供sql異常輸出嗎? – northpole 2009-07-01 16:14:06

回答

1

你當然需要包括特定的JDBC驅動程序應用程序需要。你可以在jnlp資源中有幾個罐子。 您可能還需要指定安全約束,默認情況下,jnlp應用程序在沙盒環境中運行,因此可能不允許連接到另一個主機(如數據庫服務器)。但是,顯示SQL異常,它應該包含什麼錯誤的線索。

Here是一個不錯的地方開始

0

你可以有多個罐子資源的JNLP。 JNLP文件也可以使用擴展JNLP文件。清單中的Main-Class條目用於java -jar,並被WebStart忽略。

Oracle發佈了許多類型的數據庫驅動程序。你可能想要純Java的。您還需要安排應用程序從數據庫所在的同一臺計算機上提供(或者至少看起來像)。對於大型項目,通常會使用應用程序層(可能有點過於熱切,因爲這會導致更復雜的項目)。

0

如果您的數據庫與Web服務器不是同一臺主機,那麼您已經超出了沙箱邊界。

您必須簽署代碼才能允許授予其無限制的訪問權限。檢查JNLP文檔。

相關問題