2013-07-30 1 views
0

저는 Java Web Start 애플리케이션을 만들기 시작했습니다. 내가 JWS예제 Java Web Start 응용 프로그램 배포가 실패합니다.

A) Official Java Documentation

B) Java Web Start (Jnlp) Hello World Example

나는 한 다음 단계에 대해 다음 자습서 다음하고 다음과 같은 예외

가 계속 나는 제대로 로컬로 배포 할 수 없습니다입니다 :

1. 내 .class 파일을 실행 가능한 jar 파일로 패키지화합니다.

2. 항아리에 서명했습니다.

3. jnlp 파일을 만들었습니다

4 html 파일 생성

jar, jnlp 및 html 파일을 동일한 JWS 디렉토리에 배치하고 html 파일을 호출했습니다.

JWS\ 

Demo.jar 
NewFile.html 
Test.jnlp 

Test.jnlp 파일은 다음과 같은 :

<?xml version="1.0" encoding="utf-8"?> 
    <jnlp spec="1.0+" codebase="http://localhost:8080/" href="Test.jnlp"> 
     <information> 
      <title>Jnlp Testing</title> 
      <vendor>SUM</vendor> 
      <homepage href="http://localhost:8080/" /> 
      <description>Testing Testing</description> 
     </information> 
     <security> 
      <all-permissions/> 
     </security> 
     <resources> 
      <j2se version="1.6+" /> 
      <jar href="Demo.jar" /> 
     </resources> 
     <application-desc main-class="com.mytest.TestJnlp" /> 
    </jnlp> 

홈페이지 예외 :

com.sun.deploy.net.FailedDownloadException: Unable to load resource: http://localhost:8080/Test.jnlp 
    at com.sun.deploy.net.DownloadEngine.actionDownload(Unknown Source) 
    at com.sun.deploy.net.DownloadEngine.downloadResource(Unknown Source) 
    at com.sun.deploy.cache.ResourceProviderImpl.getResource(Unknown Source) 
    at com.sun.deploy.cache.ResourceProviderImpl.getResource(Unknown Source) 
    at com.sun.javaws.Launcher.updateFinalLaunchDesc(Unknown Source) 
    at com.sun.javaws.Launcher.prepareToLaunch(Unknown Source) 
    at com.sun.javaws.Launcher.prepareToLaunch(Unknown Source) 
    at com.sun.javaws.Launcher.launch(Unknown Source) 
    at com.sun.javaws.Main.launchApp(Unknown Source) 
    at com.sun.javaws.Main.continueInSecureThread(Unknown Source) 
    at com.sun.javaws.Main.access$000(Unknown Source) 
    at com.sun.javaws.Main$1.run(Unknown Source) 
    at java.lang.Thread.run(Unknown Source) 

포장 예외 :

java.net.ConnectException: Connection refused: connect 
    at java.net.DualStackPlainSocketImpl.connect0(Native Method) 
    at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source) 
    at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source) 
    at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source) 
    at java.net.AbstractPlainSocketImpl.connect(Unknown Source) 
    at java.net.PlainSocketImpl.connect(Unknown Source) 
    at java.net.SocksSocketImpl.connect(Unknown Source) 
    at java.net.Socket.connect(Unknown Source) 
    at java.net.Socket.connect(Unknown Source) 
    at sun.net.NetworkClient.doConnect(Unknown Source) 
    at sun.net.www.http.HttpClient.openServer(Unknown Source) 
    at sun.net.www.http.HttpClient.openServer(Unknown Source) 
    at sun.net.www.http.HttpClient.<init>(Unknown Source) 
    at sun.net.www.http.HttpClient.New(Unknown Source) 
    at sun.net.www.http.HttpClient.New(Unknown Source) 
    at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(Unknown Source) 
    at sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source) 
    at sun.net.www.protocol.http.HttpURLConnection.connect(Unknown Source) 
    at com.sun.deploy.net.BasicHttpRequest.doRequest(Unknown Source) 
    at com.sun.deploy.net.BasicHttpRequest.doRequest(Unknown Source) 
    at com.sun.deploy.net.BasicHttpRequest.doGetRequest(Unknown Source) 
    at com.sun.deploy.net.DownloadEngine.actionDownload(Unknown Source) 
    at com.sun.deploy.net.DownloadEngine.downloadResource(Unknown Source) 
    at com.sun.deploy.cache.ResourceProviderImpl.getResource(Unknown Source) 
    at com.sun.deploy.cache.ResourceProviderImpl.getResource(Unknown Source) 
    at com.sun.javaws.Launcher.updateFinalLaunchDesc(Unknown Source) 
    at com.sun.javaws.Launcher.prepareToLaunch(Unknown Source) 
    at com.sun.javaws.Launcher.prepareToLaunch(Unknown Source) 
    at com.sun.javaws.Launcher.launch(Unknown Source) 
    at com.sun.javaws.Main.launchApp(Unknown Source) 
    at com.sun.javaws.Main.continueInSecureThread(Unknown Source) 
    at com.sun.javaws.Main.access$000(Unknown Source) 
    at com.sun.javaws.Main$1.run(Unknown Source) 
    at java.lang.Thread.run(Unknown Source) 
+0

수정 코드베이스 = "통해 http : // localhost : 8080 /"코드베이스 =합니다 "에 http : // localhost를 : 8080/JWS"이 당신은 자바에서 디버그 로깅을 사용하도록 설정할 수 있습니다 – pundit

+0

를 작동 할 수있다 JNLP에 콘솔을 열고 추가 정보를 얻으십시오. –

+0

@pundit 트릭이 나던 작업 :( – rockstar

답변

-1

그래,이 문제를 해결할 수있었습니다.

가장 쉬운 방법은 IDE를 Netbeans IDE로 시작한다는 것입니다. Netbeans을 사용하면 Java 웹 응용 프로그램을 만드는 데 큰 도움이됩니다. 예를 들어 jar 파일에 서명하고 .jnlp 파일 설정을 올바르게 수정하는 것은 정말 고통 스러울 수 있습니다. 한편 Netbeans은이 두 파일을 자동으로 생성하므로 실수를 저지르는 고통을 덜어줍니다.

처음에는 같은 일식을 사용해 보았지만 일식이 매우 지루하고 오류가 발생하는 것으로 나타났습니다. Java Web Start 응용 프로그램을 만드는 경우 Netbeans을 사용하는 것이 좋습니다. 이 자습서는 당신이 즉시 시작할 수 있도록해야합니다.

Enabling Java Web Start in the NetBeans IDE