如何通过WebStart部署JDBC客户端应用程序?

时间:2009-07-01 16:10:34

标签: java jdbc jar

我知道这是一个非常有帮助的社区..所以我希望我能得到我的问题的答案。实际上,我有一个swing应用程序通过JDBC联系oracle数据库。

现在我想通过WebStart部署它。我在应用程序中有一个打印日志消息的文本区域。

一切顺利,jnlp在客户端下载我的应用程序jar。但突然间,日志区域显示,它无法连接到数据库。我的意思是,我在建立与数据库的连接时遇到SQL异常。

可能出了什么问题。 我应该在通过网络启动部署应用程序时包含任何其他jar /库。 但我听说我只能通过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

3 个答案:

答案 0 :(得分:1)

您当然需要包含应用程序所需的特定jdbc驱动程序。你可以在jnlp资源中拥有几个jar。 您可能还需要指定安全性约束,默认情况下,jnlp应用程序在沙盒环境中运行,因此可能不允许它连接到另一个主机(如数据库服务器)。但是显示SQL异常,它应该包含什么错误的线索。

Here是一个不错的起点

答案 1 :(得分:0)

您可以在JNLP中拥有多个jar资源。 JNLP文件也可以使用扩展JNLP文件。清单中的Main-Class条目用于java -jar并被WebStart忽略。

Oracle提供了许多类型的数据库驱动程序。你可能想要纯Java。您还需要安排从与数据库相同的计算机(或至少看起来是)提供应用程序。对于较大的项目,经常使用应用程序层(可能有点过于急切,因为它会导致更复杂的项目)。

答案 2 :(得分:0)

如果您的数据库与Web服务器不是同一个主机,那么您将超越沙箱边界。

您必须签署代码才能允许其无限制访问。检查JNLP文档。