2011-09-20 7 views
0

JS의 Java 애플릿에서 메소드를 호출하려고합니다. 나는 내 작업 흐름을 조정하는 방법에 대해 약간 혼란 스럽다. 자바 스크립트 (pending.js)를 포함하는 jsp (pending.jsp) 클래스가 있습니다. pending.jsp는 pending.js를 보유하기위한 컨테이너 일뿐입니다. pending.js '목적은 사용자가 보고서 작성을 취소 할 수있게하는 것입니다.JSP - JS - Java 상호 작용

pending.jsp :

<div id="pending-reports-container" class="pending-reports-container"> 

    <div id="pending-reports"> 

    </div> 
</div> 

pending.js :

function update_pending_reports(response_data) 
{ bla } 
function delete_report(report_id) 
{ bla } 
function request_pending_reports() 
{ bla } 
function start_pending_reports() { 
    request_pending_reports(); 
    setInterval("request_pending_reports()", 5000); 
} 

보고서를 취소하는 것은 때때로 내가 포스트 그레스에 들어가 요청을 취소하려면 자바를 사용하고자하는 효율적인 아니기 때문에 (대기. js는 포스트 그레스에서 작동하는 프로세스를 죽이지 않습니다). Java 클래스를 만들었지 만 어디에 추가해야할지 모르겠다. 내가 태그를 사용할 수있다 알지만,이 같은 내 JSP 파일에이 태그를 추가하려고 할 때 :

<div id="pending-reports-container" class="pending-reports-container"> 

    <div id="pending-reports"> 
     <applet id="LS" width=1 height=1 code ="module/LicenseCheckService.class" codebase="."/> 
    </div> 
</div> 
이 코드 내 pending.js에서 도달 할 수

:

getJS = document.getElementById("LS"); 

내 코드에 문제가 있습니까? 아니면이 구조가 처음에 잘못 되었습니까?

+1

문자열을'setInterval'에 전달하지 마십시오. 'setInterval (request_pending_reports, 5000); 또는 인수가 필요한 경우 : setInterval (function() {request_pending_reports (something);}, 5000);' – ThiefMaster

답변

1

오라클 설명서 Invoking Applet Methods From JavaScript Code을 참조하십시오.

간단한 버전은 애플릿 ID로 애플릿 개체를 참조하고 해당 메서드를 호출 할 수 있다는 것입니다.

appletId.anAppletMethod(); 
var anAppletClass = appletId.getAnAppletClass(); 
anAppletClass.methodCalled("with a JavaScript string parameter"); 
// Etc. 
1

Dave Newton의 답변을 참조하십시오.

또는 HTML 필드를 확인하거나 애플릿에서 javascript 메소드를 호출 할 수도 있습니다. 애플릿이 적극적으로 제어하도록 상호 작용을 구성 할 수 있습니다.

여기에 링크 : Java Applet To JS Link