2012-05-12 1 views
0

자바 서블릿 용 RPC 모델을 사용하여 GWT 백엔드를 작성하려고합니다. 원격 sql 데이터베이스와 통신하기 위해 RPC 내에서 ssh 터널을 사용할 수 있습니까?GWT 앱에서 SSH를 통해 DB와 통신하기 (RPC 사용)

아래 코드는 Jsch를 사용하여 실행하려고 시도한 코드입니다. "session.connect();"오류가 발생합니다.

String host="xxxxx.xxx.edu"; 

String user="username"; 
String password="password"; 

Session session= null; 
try{ 
      //Set StrictHostKeyChecking property to no to avoid UnknownHostKey issue 
      java.util.Properties config = new java.util.Properties(); 
      config.put("StrictHostKeyChecking", "no"); 
      JSch jsch = new JSch(); 
      session=jsch.getSession(user, host, 22); 
      session.setPassword(password); 
      session.setConfig(config); 
      session.connect(); 
} 

나는 다음과 같이 라인은 ') (session.connect'를 타고 런타임 오류 : (전체 오류를보고 오른쪽으로 스크롤은)

com.jcraft.jsch.JSchException: java.security.AccessControlException: access denied (java.net.SocketPermission xxxxx.xxx.edu resolve) 
at com.jcraft.jsch.Util.createSocket(Util.java:341) 
at com.jcraft.jsch.Session.connect(Session.java:194) 
at com.jcraft.jsch.Session.connect(Session.java:162) 
at com.front.server.GameServiceImpl.createGame(GameServiceImpl.java:39) 

이것에 대해 실망스러운 부분은 내가 복사 한 것입니다/정확한 코드를 간단한 자바 프로그램에 붙여 넣으면 작동합니다. 그래서 코드가 정확하다는 것을 압니다. 분명히 GWT가 로컬 테스트 용으로 만든 부두 서버는 코드를 실행하는 데 문제가 있습니다. 내가 할 수있는 다른 것/GWT로이 상황에서 내가해야 할 일은 무엇인가? GWT 응용 프로그램의 백엔드가 ssh를 사용할 수 있어야합니까?

답변

0

다른 웹 컨테이너 (Tomcat, JBoss)로 gwt 응용 프로그램을 실행 해보십시오. -noserver 플래그를 사용하여 호스트 된 모드를 실행하여 디버깅 기능을 계속 사용할 수 있습니다. here