2014-02-06 2 views
0

Javascript에서 HTTP 세션에 저장된 자바 객체의 setter 메소드를 호출 할 가능성이 있습니까? 자바 스크립트에서 자바 객체의 멤버 함수에 대한 액세스

나는이 같은 게터 액세스 관리 :

var result='<%=((MyObject) portletSession.getAttribute("resultObj")).getValue() %>'; 

하지만 자바 스크립트의 일부 수정 후이 결과를 다시 설정해야합니다.

내 생각을 포기할 수 있습니까?

답변

2

당신이 생각하는대로 불가능합니다.

서버가 콘텐츠를 다시 보내는 Java 프로세스 실행을 마친 후에 브라우저에서 Javascript가 실행된다는 사실을 알고 있어야합니다. Javascript에서 실행되는 코드와 서버의 JVM 프로세스 간에는 연결이 없습니다.이 코드는 두 곳에서 실행됩니다.

서버가 사용자에게 파이프를 보내기 위해 Javascript를 생성 할 때 Javascript에서 Java 세션 속성을 읽을 수 있습니다. 그러나 사용자의 브라우저가 코드를 실행하면 다른 사람의 컴퓨터에서 실행되는 코드가 서버에서 값을 마술처럼 바꿀 수는 없습니다.

비동기 HTTP 요청을 사용자 브라우저 (JavaScript)에서 서버로 보내는 방법을 살펴 보겠습니다.

+0

간단히 말해서 'session'은 서버에 있으며, 스크립트는 클라이언트에 있습니다. 그래서 아니야. –

0

아니요.

Java가 실행되고 브라우저의 서버와 자바 스크립트가 실행됩니다. 그것들 사이의 연결 유형이 없습니다. 원격 함수를 호출하기위한 서비스가 필요합니다.

0

javascript의 http 세션에 저장된 java 개체의 setter 메서드를 호출 할 가능성이 있습니까?

수 없습니다. 자바는 서버 측에서, 자바 스크립트는 클라이언트 측에서 재생됩니다. 그래서 큰 아니요.

하지만 자바 스크립트에서 수정 한 후에이 결과를 다시 설정해야합니다.

는 다시 없음 우선은 자바에 몇 가지 값을 보내기 위해 서버 요청을해야합니다.

Asynchronous call이 필요합니다. Learn Ajax.

관련 문제