문제

외부 구성이 필요한 WebStart 응용 프로그램이 있습니다. 구성은 고객이 수동으로 변경되므로 외부 상태 여야합니다. 이 구성으로 다른 항아리를 추가하는 것을 고려했습니다. 응용 프로그램이 서명되었으며 고객에게 열쇠를 제공하는 것은 옵션이 아닙니다. 웹 서버에서 액세스 할 수 있도록이 파일을 배치하는 데 기대고 있습니다.

WebStart 응용 프로그램에서 CodeBase URL을 검색하는 방법 또는 WebStart JNLP 파일을 구성하여 ClassPath에 JAR 이외의 다른 파일을 추가하는 방법이 있습니까?

단서 인 경우 Maven을 완전히 빌드하기 위해 Maven을 사용합니다.

다른 아이디어는 수용 가능합니다.

도움이 되었습니까?

해결책

코드베이스를 얻을 수 있습니다 BasicService.getCodeBase.

다른 팁

당신은 사용할 수 있습니다 Java 기본 설정 API 외부 구성 데이터를 저장합니다. 이것은 Persons Machine에 현지에있을 것입니다. Windows에서는 레지스트리를 사용합니다. On Unix는 Classic ".xyz"파일을 사용합니다.

이 구성을 조작하기 위해 앱에 UI가있는 것이 가장 좋습니다 (Regedit에 사용자를 보내는 것은 정말 좋은 것은 아닙니다). 이름/값 쌍 편집기가 트릭을 수행합니다. "건전되지 않은"앱을 시작하기 위해 합리적인 기본값을 사용하십시오.

당신이 사용하는 경우 JNLP 다운로드 서블릿 $$ CodeBase 매크로를 시스템 속성으로 애플리케이션에 전달할 수 있으며 코드베이스 URL에 액세스 할 수 있습니다.

WebStart 애플리케이션 구성은 SQL을 사용하여 서버에 저장되지만 이는 귀하의 요구에 약간 헤비가 될 수 있습니다.

JNLP 구문 참조를 확인하십시오.http://java.sun.com/j2se/1.5.0/docs/guide/javaws/developersguide/syntax.html

당신에게 중요한 부분은 "리소스"태그입니다.

<resources>
  <j2se version="1.4.2+" java-vm-args="-esa -Xnoclassgc"/>
  <jar href="lib/SwingSet2.jar"/>
</resources>

위의 예에서는 Swingset2.jar가 클래스 경로에 추가됩니다. 클래스 스팟에 더 많은 항아리가 필요하십니까? 다른 항아리 자원을 추가하십시오

<resources>
 <j2se version="1.4.2+" java-vm-args="-esa -Xnoclassgc"/>
 <jar href="lib/SwingSet2.jar"/>
 <jar href="lib/SwingSetSupplment.jar"/>
</resources>

나는 코드베이스와 똑같은 문제가있었습니다. jnlpservlet을 사용하여 결국 (Google에 있어야합니다.

<property name="app.codebase" value="$$codebase"/>

리소스 섹션에.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top