Starting from version 4.0, JxBrowser provides a totally lightweight Swing component for displaying web pages. All web page rendering happens in separate native Chromium processes.
JxBrowser allows displaying Adobe Flash and Microsoft Silverlight contents. You will need to have Flash plugin and Silverlight installed.
You can listen to different web browser events such as Load (
DocumentLoadedInMainFrame), Title and Zoom change events. Render process events such as
RenderGone is also available. See example.
You can find required HTML elements by tag name or ID; get/set HTML element attributes; listen to different DOM events such as
unload etc. See example.
DialogHandler you can also handle basic, digest, NTML and Proxy authentications.
You can zoom in, zoom out a web page or set your own zoom level for the currently loaded web page. Zoom level is configured for each domain separately. To make sure that zoom level for the web page is changed you can use
The lightweight component displays images generated by Chromium engine. Because of this web pages will look exactly as in Google Chrome.
ContextMenuHandler allows you to handle the situation when context menu should be displayed. You can build your own Swing context menu, using different useful information from
ContextMenuParams, such as context menu location, selection text, link URL, link text, HTML element media type etc. See example.
Browser.saveWebPage() allows you to save the loaded web page as a set of files. See example
You can configure each Browser instance to use its own proxy settings. Various configurations are supported: auto detect proxy, manual proxy configuration for HTTP, HTTPS, FTP protocols, direct proxy, proxy auto configuration files. See example.
You can use JxBrowser library in Java applications that are deployed via Java Web Start or Java Applet. Read more in JxBrowser Programmer’s Guide.
With JxBrowser you can set your own user-agent for all Browser instances. See example.
DownloadHandler allows you to handle file downloads and control whether a file should be downloaded or not. You can also receive notifications about download progress, speed, completion percentage, received bytes etc. See example.
When user clicks the file upload INPUT element on a web page, the
DialogHandler.onFileChooser() method will be invoked. Using this method you can display your own file chooser dialog where user can select a file to upload.
JxBrowser is created to help Java developers to build the following kinds of applications::
By using our products or any related documentation, you accept the Terms and Conditions of the Product Licence Agreement.
JxBrowser supports Windows XP SP2, Vista, 7, 8, Server 2003 SP1, Server 2008, Server 2012, Mac OS X 10.7 - 10.9 (Intel), Ubuntu 12.04 LTS 32- and 64-bit. Oracle and Apple JDK 1.6 and higher 32- and 64-bit.
No, all the required Chromium binaries are deployed with JxBrowser library. You even don’t need to install Google Chrome to work with JxBrowser.
The library uses Chromium 38.0.2078.0 build.
Yes, you can use JxBrowser in Java Applet and JWS applications like standard Java library. You can find more information about it in JxBrowser Programmer’s Guide .
Right now JxBrowser is compatible only with Java Swing/AWT. JavaFX support will be added in one of the future versions.
A: You can distribute unlimited number of copies of your product with our library enclosed. Please use Runtime Licence for distribution of your product.
Runtime Licence is provided free of charge.
A: Please take a look at the Product Licence Agreement.
A: Yes, you can purchase JxBrowser Source Code Licence; it is provided on a per developer basis. Please contact our sales team if you are interested in this option.
A: Upon purchase of licence you will receive a licence archive. The archive will contain two JARs: development.jar and runtime.jar. Development.jar is the licence that should be used in development process. Runtime.jar should be used to distribute your application to end users.
A: You may want to purchase a Project licence, which is more cost-effective in case there are 3 and more developers on the team.
A: The best solution would be to purchase the Unlimited licence, which covers any number developers and projects in one company.
The Project licence is tied to one project only.
A: Yes, our licences are tied to a company, not to a specific developer. You can transfer licences to other developers provided that the number of developers, working on your team equals the number of licences purchased.