2010-12-14 4 views
1

JNLPを使用してアプレットをデプロイしようとしています。ファイル構造は、このようです:JNLPファイルでアプレットライブラリを指定する方法

<html> 
    <head> 
     <title>Dreambearstatistieken</title> 

     <script src="http://www.java.com/js/deployJava.js"></script> 
     <script type="text/javascript"> 

      var attributes = { 
       code:'dreambear.stats.viewer.DBStatsViewer', 
       width:900, height:600 
      }; 
      var parameters = {jnlp_href: "dbstats.jnlp"}; 
      var version = "1.6"; 

     </script> 

    </head> 
    <body> 

    <script type="text/javascript"> 
     deployJava.runApplet(attributes, parameters, version); 
    </script> 

    </body> 
</html> 

そして、JNLPファイル:

/ 
    dbstats.html 
    dbstats.jnlp 
    dbstats.jar 
    lib/ 
    substance.jar 
    trident.jar 
    guava-0.7.jar 

は、ここに私のHTMLです

<?xml version="1.0" encoding="UTF-8"?> 
<jnlp spec="1.0+" codebase="" href=""> 
    <information> 
     <title>Dreambearstatistieken</title> 
     <vendor>Weber</vendor> 
    </information> 
    <resources> 
     <j2se version="1.6+" href="http://java.sun.com/products/autodl/j2se" /> 
     <jar href="lib/trident.jar" /> 
     <jar href="lib/substance.jar" /> 
     <jar href="lib/guava-r07.jar" /> 
     <jar href="dbstats.jar" main="true" /> 
    </resources> 
    <applet-desc 
     name="Dreambearstatistieken" 
     main-class="dreambear.stats.viewer.DBStatsViewer" 
     width="900" 
     height="600"> 
    </applet-desc> 
    <update check="background" /> 
</jnlp> 

私の知る限り見ることができるように、すべてがOKでなければなりませんが、それはですない。私はorg.pushingpixels.substance.api.skin.SubstanceNebulaLookAndFeelClassNotFoundExceptionを得ています。これはsubstance.jarです。私は間違って何をしていますか?

さらに、2010年代にアプレットとJNLPを使用することについてのチュートリアルや書籍がありますか?

答えて

1

最初にcodebaseが空です。私の知る限り、アプリケーションへの絶対パスが含まれているはずです。おそらく私は間違っているが、これから始める。役立つが、jnlpファイルを再利用したい場合は、codebase = "。"を試してください。 (私はそれが合法であるとは確信していませんが)

次に、ブラウザを使用してlibディレクトリのjarファイルの1つをダウンロードしようとします。このディレクトリにアクセスできることを確認する必要があります。

幸運を祈る!

+0

これは '.'と一緒に動作しますが、私はそのものをサーバにアップロードした場合に限ります。 htmlファイルをローカルで開いていない場合。 –

+0

埋め込まれたJWSアプレットの場合、Sunはコードベース属性を完全に削除するように言いました(ブランク値を持つことと同じではありません)。この場合、コードベースはアプレットHTMLの場所と見なされます。アプレットHTMLを埋め込むアプレットページがどこにあっても、その場所になります。 –

+0

良い点、アンドリュー。それは知らなかった。次回はJNLPを使って開発しています。 – AlexR

0

の名前をhref=""に置く必要があります。これは次のようになります:

<jnlp spec="1.0+" codebase="http://mydomain:5500/myapp" href="dbstats.jnlp"> 
関連する問題