2010-01-05 2 views
0

Java 1.3에서 Java 1.5로 이식 된 레거시 프로그램이 있습니다. 이 응용 프로그램은 전에 제대로 작동했던 애플릿을 포함합니다. 그러나 포팅 한 후에는 애플릿이로드되지 않습니다. 그러나 오류나 예외는 없습니다. 응용 프로그램은 단지 그것을 영원히로드하려고합니다. 우리는 Java 1.6 및 poof로 실행하려고했습니다! 어떤 문제도 없습니다. Java 6와 호환되지 않습니까? 그러면 1.5 버전이 아닌 해당 버전에서 어떻게 실행됩니까? 자바 1.5.0_19 애플릿이로드되지 않습니다.

basic: Registered modality listener 
basic: Registered modality listener 
basic: Registered modality listener 
liveconnect: Invoking JS method: document 
liveconnect: Invoking JS method: document 
liveconnect: Invoking JS method: document 
liveconnect: Invoking JS method: URL 
liveconnect: Invoking JS method: URL 
liveconnect: Invoking JS method: URL 
basic: Referencing classloader: [email protected], refcount=1 
basic: Referencing classloader: [email protected], refcount=2 
basic: Referencing classloader: [email protected], refcount=3 
basic: Added progress listener: [email protected] 
basic: Loading applet ... 
basic: Initializing applet ... 
basic: Starting applet ... 
basic: Added progress listener: [email protected] 
basic: Added progress listener: [email protected] 
basic: Loading applet ... 
basic: Initializing applet ... 
basic: Starting applet ... 
basic: Loading applet ... 
basic: Initializing applet ... 
basic: Starting applet ... 
basic: Referencing classloader: [email protected], refcount=4 
basic: Releasing classloader: [email protected], refcount=3 
basic: Referencing classloader: [email protected], refcount=4 
basic: Releasing classloader: [email protected], refcount=3 
basic: Referencing classloader: [email protected], refcount=4 
basic: Releasing classloader: [email protected], refcount=3 
network: Connecting <something>.jar with proxy=HTTP @ proxy/<ip address> 
basic: Loading <something>.jar from cache 
basic: No certificate info, this is unsigned JAR file. 
Left START init() 
Left END init() 
Right START init() 
Control start() Waiting for Left Panel to load... 
Right START start() 
network: Connecting socket://<ip address>:14444 with proxy=DIRECT 
Control start() Waiting for Left Panel to load... 
Control start() Waiting for Left Panel to load... 
Control start() Waiting for Left Panel to load... 
my HostName : <ip address> 
Thread-19 Check : 
Thread-19 Check : Monitor : run : start 
Thread-20 Monitor : Monitor: run() start 
Control start() Waiting for Left Panel to load... 
Control start() Waiting for Left Panel to load... 
Control start() Waiting for Left Panel to load... 
Control start() Waiting for Left Panel to load... 
Control start() Waiting for Left Panel to load... 
Control start() Waiting for Left Panel to load... 

에 대한

====

Java 콘솔 로그 마지막 메시지는 작업 버전으로 이제 영원히 계속 ... 그리고 :

=== =

basic: Added progress listener: sun.plugin.util.GrayBoxPainter$GrayBoxP[email protected] 
basic: Added progress listener: [email protected] 
basic: Added progress listener: [email protected] 
network: CleanupThread used 6 us 
network: CleanupThread used 5 us 
network: CleanupThread used 6 us 
cache: Skip blacklist check as cached value is ok. 
network: Cache entry found [url: <something>.jar, version: null] 
network: Connecting <something>.jar with proxy=HTTP @ proxy/<ip address> 
network: ResponseCode for <something>.jar : 304 
network: Encoding for <something>.jar : null 
network: Disconnect connection to <something>.jar 
Reading certificates from 11 <something>.jar | <something>.idx 
network: No certificate info for unsigned JAR file: <something>.jar 
basic: Applet loaded. 
basic: Applet loaded. 
basic: Applet resized and added to parent container 
basic: Applet resized and added to parent container 
basic: PERF: AppletExecutionRunnable - applet.init() BEGIN ; jvmLaunch dt 330275 us, pluginInit dt 27768955 us, TotalTime: 28099230 us 
Right START init() 
basic: PERF: AppletExecutionRunnable - applet.init() BEGIN ; jvmLaunch dt 330275 us, pluginInit dt 27770563 us, TotalTime: 28100838 us 
Left START init() 
basic: Applet loaded. 
basic: Applet resized and added to parent container 
basic: PERF: AppletExecutionRunnable - applet.init() BEGIN ; jvmLaunch dt 330275 us, pluginInit dt 27779332 us, TotalTime: 28109607 us 
Left END init() 
basic: Applet initialized 
basic: Removed progress listener: [email protected] 
basic: Applet made visible 
자바 1.6.0_15에 대한

Java 콘솔 로그

그리고 그게 전부입니다. 아직도 java6가 아닌 java5와 함께 작동하는 이유를 알아 내지 못했습니다.


@valli : 객체 태그는

@thorbjorn을 애플릿하지, 사용 : 어떻게 : 내가 시도 이미 ... 그냥 말을 계속로드 애플릿 ...

@aaron 그 정말로 예외가 있다면 어떤 예외인지 알겠습니까? 그리고 예, 우리는 자바 버그라고 생각했지만 여전히 그 버그가 무엇인지 발견하지 못했습니다. ... 내일 보고서를 제출해야하고 내가 그물을 흐르고 있지만, 아직 같은 아무것도 해낸 한

@all : 귀하의 답변 주셔서 감사합니다 아마 예외가 어딘가하지만 돈이

+1

애플릿을로드하는 HTML 코드를 제공하는 방법은 무엇입니까? – Bozho

+0

수 없습니다. 우리는 허용되지 않습니다. 우리 계약서에 ... 미안 해요. – jcp

+0

도움이 될만한 java 콘솔 로그를 추가했습니다. 내가 제거/클래스 이름과 디렉토리 같은 일부 부분을 변경했지만 – jcp

답변

0

그것을 보지 마라 (아마 삼켰을 것이다). 또는 Java 5에서 수정 된 Java 5 버전의 버그입니다.

0

하나의 가능한 문제점은 애플릿이 "애플릿"태그를 사용하여 HTML 페이지에 포함 된 경우 " "애플릿"태그가 사용되지 않으므로 "object"태그가 필요합니다.

+0

도 참조 http://java.sun.com/javase/6/docs/technotes/guides/plugin/developer_guide/using_tags.html#applet – trashgod

0

Java 콘솔뿐만 아니라 콘솔의 모든 추적/디버그 정보를 활성화하십시오.

그런 다음 애플릿을 다시로드하고 내용을 확인하십시오.

0

Java 6은 Java 5와 호환되며 자바 5에서 작동하는 애플릿이 Java 6에서도 작동한다는 것을 의미합니다. 애플릿은 Java 5에서 작동해야하는지 여부는 전혀 밝히지 않은 Java 6에서도 작동합니다. Java 5에서 실행될 때 사용할 수없는 Java 6의 새로운 기능입니다.

Java 6에서만 사용 가능한 일부 클래스를 사용하는 경우 Java 5에서 ClassDefNotFoundError 또는 ClassNotFoundException이 표시 될 것으로 예상됩니다. 코드의 어딘가에서 예외를 잡아서 조용히 삼킬 가능성이 있습니다. 빈 캐치 블록이나 지나치게 광범위한 캐치 블록 (예 : 특정 예외 대신 catch 또는 Exception 또는 Throwable)을 찾습니다. 코드가 멀티 스레드 인 경우 각 스레드에 uncaught exception handlers을 추가하여 문제를 기록하십시오.

그 외의 경우 (JDK 5) 애플릿 뷰어에서 애플릿을 실행하고 디버거를 연결하여 문제의 위치를 ​​정확하게 찾으십시오.

편집 : JDK5로 애플릿을 빌드 했습니까? 그러면 호환성 문제가 부각 될 것입니다. JDK 6으로 빌드하는 경우 적어도 Java 5 바이트 코드를 생성하도록 컴파일러를 설정하십시오. 그러나 바람직하게는 JDK 5 클래스 (JDK 5를 사용하거나 -bootclasspath 옵션을 JDK 6과 함께 사용)를 작성하여 사용하지 않는 항목이 있는지 확인할 수 있습니다.

+0

우리는 JDK5를 사용하여 빌드했습니다. 애플릿 Java 5를 사용하고 Java 6을 사용하여 애플릿을 실행 해 보았습니다 ... Java 콘솔의 로그가 다르기 때문에 실제로 버전에 문제가 있습니까? 어쨌든, 나는 너의 제안을 시도 할 것이다. 고맙습니다 :) – jcp

관련 문제