2010-12-14 2 views
1

JNLP를 사용하여 애플릿을 배포하려고합니다. 파일 구조는 이렇게이다 : 나는 모든 확인을해야 볼 수 있습니다 마찬가지로 지금까지JNLP 파일에서 애플릿 라이브러리를 지정하는 방법

<?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> 

하지만 그건 :

<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의 아니. 나는 substance.jar에있는 org.pushingpixels.substance.api.skin.SubstanceNebulaLookAndFeelClassNotFoundException을 얻습니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까?

더 넓고, 2010 년에 애플릿과 JNLP를 사용하는 것에 대한 훌륭한 설명서 또는 책이 있습니까?

답변

1

먼저 codebase이 비어 있습니다. 내가 아는 한, 그것은 당신의 어플리케이션에 대한 절대 경로를 포함해야합니다. 아마도 나는 틀렸지 만 이것부터 시작하십시오. 도움이되지만 jnlp 파일을 다시 사용하려면 codebase = "."를 사용하십시오. (비록 그것이 합법이라고 확신하지는 않지만)

다음으로 브라우저를 사용하여 lib 디렉토리 아래에있는 jar 파일 중 하나를 다운로드하십시오. 이 디렉토리에 액세스 할 수 있는지 확인해야합니다.

행운을 빈다.

+0

서버에 물건을 업로드하는 경우에만'.'과 함께 작동합니다. 로컬로 html 파일을 열지 않습니다. –

+0

임베디드 JWS 애플릿의 경우, Sun은 codebase 속성을 완전히 제거한다고 말했지만 (빈 값이있는 것과 같지 않음). 이 경우 코드베이스는 애플릿 HTML의 위치로 간주됩니다. 애플릿 페이지를 포함하는 애플릿 페이지가있는 곳이면 어디든됩니다. –

+0

좋은 지적, 앤드류. 난 몰랐어. 다음에 JNLP를 사용하여 개발할 때이 메서드를 사용해 보겠습니다. – AlexR

0

href=""에도 jlnp의 이름을 입력해야합니다. 다음과 같이하십시오.

<jnlp spec="1.0+" codebase="http://mydomain:5500/myapp" href="dbstats.jnlp"> 
관련 문제