2009-09-21 2 views
7

가능한 중복 :
Is there a way to embed a browser in Java?삽입 브라우저 기반의 데스크톱 응용 프로그램

이 어떻게 자바 기반의 데스크톱 응용 프로그램에서 브라우저를 포함 할 수 있습니다? 로컬 호스트가 아닌 임베디드 브라우저와 직접 통신 할 수 있습니까? HTML 텍스트로드, onclick 이벤트 캡처, 양식 값 가져 오기 등?

감사

+0

실제 임베디드 브라우저를 원하십니까? 아니면 프로그래밍 방식으로 HTML 페이지를 탐색 하시겠습니까? – skaffman

+0

체크 아웃 할 수 있습니다. https://github.com/rogerwang/node-webkit – jrhicks

답변

6

체크 이클립스, 그들이 지원 (사용자가 구성 할 수있는 임베디드 브라우저가 있습니다 여러 브라우저).

AWT_SWT 브리지를 사용하는 AWT 기반 응용 프로그램을 사용하는 경우에도 브라우저를 포함시킬 수 있습니다.

article으로 시작하는 것이 도움이 될 수 있습니다.

+0

독립 실행 형 버전이 있습니까? –

3

당신은 JEditorPane를 사용하여 매우 원시적 브라우저를 구축 할 수 있습니다. Hyperlink 이벤트를 수신 할 수 있지만 자바 스크립트 또는 양식 값을 가져 오는 것은 불가능합니다.

6

Swing Jeditor pane은 HTML을 표시 할 수 있습니다.

확인 또한 여기에 SO에 http://www.apl.jhu.edu/~hall/java/Swing-Tutorial/Swing-Tutorial-JEditorPane.html

이 주제에 대한 더 자세한 답변입니다 : 밖으로

https://stackoverflow.com/questions/48249/java-embedding-a-web-browser-pane

+0

SO 링크는 JWebPane을 제안하지만 JEditor를 제안합니다. 나는 그들이 같은 것이라고 생각하지 않는다. 링크를 가져 주셔서 감사합니다, 나는 둘 다 조사 할 것입니다. – jrhicks

2

Lobo은 Swing 응용 프로그램에 임베드 할 수있는 Java 웹 브라우저입니다.

HTML 4, CSS 2 및 자바 스크립트를 지원하며, 이는 HTML 3.2 만 지원하는 JEditorPane에 비해 최신 버전입니다.

무엇이 가능한지에 대한 아이디어로는 Lobo Browser API documentation이 Lobo와 어떤 관련이 있는지 아이디어를 제공해야합니다. 특히, org.lobobrowser.guiJPanel의 하위 클래스 인 BrowserPanel 클래스를 가지므로 Swing 응용 프로그램에 직접 포함될 수 있습니다.

예를 들어 BrowserPanel.navigate 메서드를 사용하여 웹 페이지로 이동할 수 있으며 브라우저에 발생하는 이벤트를 캡처 할 수있는 Listener이 많이 있습니다.

+0

원래 Lobo 프로젝트가 죽은 것 같습니다. https://sourceforge.net/projects/loboevolution/ – Stefan

1

당신은 JxBrowser 라이브러리를 시도해 볼 수도 있습니다 : http://www.teamdev.com/jxbrowser/features/ 그냥 다음 코드를 할 필요가 자바 스윙 응용 프로그램에 Mozilla 브라우저를 포함하는 예를 들어

:

Browser browser = BrowserFactory.createBrowser(BrowserType.Mozilla); 

JFrame frame = new JFrame(); 

frame.add(browser.getComponent(), BorderLayout.CENTER); 
frame.setSize(700, 500); 
frame.setLocationRelativeTo(null); 
frame.setVisible(true); 

browser.navigate("http://www.google.com"); 
+2

이것은 무료입니다 :/ – mikakun

+0

참고 : 오픈 소스 프로젝트는 무료입니다. – Vladimir

+0

업데이트 : 4.0 버전 이후 JxBrowser는 Mac OS X, Linux 및 Windows를 포함한 모든 플랫폼에서만 Chromium 엔진과 통합됩니다. – Vladimir