Bindows Plugin

Compatible with: IntelliJ IDEA PhpStorm WebStorm PyCharm RubyMine AppCode CLion GoLand DataGrip Rider MPS Android Studio
Nov 02, 2007
16 905
Launch and debug Bindows AJAX applications directly from within IntelliJ IDEA.
The debugging features enable you to send messages to a console window inside IntelliJ IDEA from your code. This works for both Internet Explorer and Firefox.
You can also send JavaScript code to be evaluated inside any running browser instance from IntelliJ IDEA. This enables you to remote control the browser, check the values of variables and even rewrite whole methods during runtime.
Check our web site for more information on how to use these features.
We also have an xml schema that will give you code completion of Bindows classes in xml. The schema is included in the plugin and automatically installed.
You also have the ability to add multiple Bindows distributions and quickly switch between them.

Recent change notes

Bindows plugin for IntelliJ IDEA
Version: 1.0 beta 6


This is a beta version. Please contact us at to suggest features and report problems. More information about the plugin is available here

Release Notes Beta 6

  • Linux support restored
  • Support for InfiView 1.5b
    A special InfiView version of the Bindows schema has been included together with the InfiView schema. This enables code completion in InfiView ADF's. A special InfiView ADF live template called niv (NewInfiView) has also been added. This feature requires a copy of InfiView. InfiView also need to be launched with a special InfiView version of Bindows, that comes with InfiView.
  • Added support for JsDoc generation (alpha version)
    Go into the module dependant settings in the Bindows facet to add and remove .js files, set output path and generate documentation for your Bindows source code. Settings are currently not saved but generation should work as expected.
  • Fixed a bug which occured when you have two projects open and one has the Bindows facet and the other does not. If the console had been opened in the Bindows enabled project and the non-bindows enabled project was closed; IDEA would crash.
  • Fixed a bug where it was sometimes impossible to close the project because the console window was not open.
  • Changed Mac shortcut keys for launching Bindows apps to Ctrl+B because it is not possible to use Alt+B on Macs.
  • Changed the live template loading logic so that existing live templates are overwritten with the ones that come with the plugin. This enables us to update existing templates. If you have modified our templates you should back them up before installing this update./>

Known Issues in Beta 6

  • If there is an error in the JavaScript you're sending, such as a typo, you will get a generic error message saying "XMLHttp problems, Could not send message". In the future we will extend this with slightly more elaborate messages.
  • Mac OS X: Bindows popup menus do not work in the embedded browser component of IDEA. This causes GridPanel2Designer to be unusable on Mac OS X and also normal menus to not work. Another thing to note is that the ok button on alert boxes also does not work. This is a JetBrains bug and we are waiting for a fix.
  • GridPanel2Designer is currently using our online Bindows distribution. Changing your active Bindows distro does not reflect in the designer. The reason for this is that you need at least Bindows 3.0 to use the BiGridPanel2 layout manager. This has the side effect that you will not be able to use the designer if you do not have an internet connection.

Release Notes Beta 5 rev 1

  • Fixed a problem where the plugin would crash when a registered Bindows folder had been removed or renamed without the plugin knowing about it.

Release Notes Beta 5

  • Facet support
    The Bindows plugin now support IntelliJ IDEA's facet architecture. This represents a major workflow change.
    To be able to use the features of the plugin you must have the "Bindows Facet" added to your project. (At least one of the modules in the project must have the facet.)
    There are two ways to add the facet to your project;
    1. Upon creating a new project you can enable a checkbox for Bindows in the new project wizard.
    2. You can add the facet to an already existing project by going into Project settings->Modules, clicking the module and then clicking the little plus sign and selecting the Bindows facet from the popup menu.
  • Integrated BiPad
    BiPad is a new tool window that allows real time previewing of Bindows xml.
    It extracts the code between the Application->Window tags and renders it in an embedded mozilla based browser window as you type. When active bindows distribution/version is switched, BiPad will be relaunched to use the new distro.
  • Integrated GridPanel2 Designer
    The GridPanel2Designer is a new tool window that allows you to visually design Bindows interfaces and forms. The designer makes use of the new highly efficient BiGridPanel2 layout component, introduced in Bindows 3.0. The code that the designer generates appears in a special tab window in the designer. You can copy this code and paste it into your editor and integrate it into your projects.
  • Color coded logging levels
    It is now possible to print logging messages at three different levels and colors. New live templates have been added to expedite this.
    Code Color Live template(s) Meaning
    BiLog.out(""); Black blog, blog2 Normal/user message (default)
    BiLog.out("", BiLog.ERROR); Red blogErr Error message
    BiLog.out("", BiLog.SYSTEM);Green blogSyst System message
  • Updated toolbar in console window
    A new clear button has been added to the console view. It clears all text in the console view. Both buttons also now have icons.
  • Plugin description improved The plugin description inside the plugin manager and in JetBrains' plugin repository now uses html to better display the text.
  • Major internal refactorings
    We have improved and replaced code in numerous places. The internal webserver has been completely rewritten for example.
  • Logo added
    The Bindows plugin now properly displays the Bindows logo on the Quick Start menu.
  • Release notes added
    The release notes now display properly in IntelliJ IDEA's plugin manager.
  • Dynamically change the server port
    If the Bindows port contends with another service, you can now easily switch the Bindows port and launch our Bindows app without having to restart IDEA. If you select a port that is currently in use you will receive a message declaring that so you should choose another.
  • Remote Bindows locations
    Now you may add remote locations (URLs) to the Bindows distributions list.
  • Remote Resources
    Added a virtual folder /remote/ for the embedded server. You can now refer to resources on a different (remote) domain using a path like the following "/remote/mydomain/mypath" and it will be translated to "http://mydomain/mypath". Yet to the client the call is to the same domain, and therefore allowed. I.e. no security error due to cross-domain calls.
    Note: There is yet no support for https or other protocols, nor other ports.
  • Arbitrary Browsers
    The browsers to appear in the Bindows popup menu are now configured with the aid of a list-box. You may add an arbitrary set of browsers to this list and also remove the default browsers.
    Note that Bindows, at this time, only runs in Microsoft Internet Explorer and Mozilla Firefox. The idea with the list is to enable the user to add different versions of the supported browsers.
    To support an arbitrary number of browsers and versions (max 9) the default launcher shortcuts have changed from single-stroke to two-stroke. Press alt+B (to indicate the Bindows popup menu) followed by the (1-based) ordinal of the menu item representing the desired browser.
  • Fixed security issue
    You no longer have to block the server port in your firewall.
  • Distros can now be located on any drive letter
    Your Bindows distributions can now be located on any local hard drive. Not just C: in Windows OS.

Release Notes Beta 4

  • Linux support
    Tested on Ubuntu 7.04.
  • Consolidated browsers into one button
    To better accomodate more than two different browsers we have consolidated the two buttons into one with a popup where you choose the browser. This will enable use to dynamically add/remove browsers in the future.

Release Notes beta 3 rev1

  • Fixed a problem with Windows Vista

Release Notes beta 3

  • Mac OS X support (Linux coming soon).
    You can now launch Bindows applications in Firefox from the plugin. All the other features are also available on the Mac. You do not have to specify the path to the Firefox executable on the Mac. This is all done automatically for you.

  • New user interface layout in settings.
    To better facilitate more options we have added some tabs to the plugin settings dialog.

  • Multiple instances of IntelliJ IDEA can now be used at the same time with the plugin.
    The built-in server is now a common resource shared by all IntelliJ IDEA frames.

  • Delete temporary html files checkbox.
    This is activated by default. The plugin will erase the temporary html file that is used to launch the Bindows application. Sometimes it can be useful to keep this file (you can study it or use it as a template for something else). Unchecking this will prevent its destruction. Only in debug mode will the plugin be able to delete it because it is only then it is receiving signals from the browser.

  • More intelligent live templates.
    We are now making use of a new feature of IntelliJ IDEA that the good folks at JetBrains were kind enough to add. It allows us to create live templates that understand what class and what method we are currently in. We have two live templates that benefit from this: blog2 and newStaticMethod. E.g. The blog2 is a BiLog.out call that automatically prints the line number of JavaScript file, the class name and the method name plus a message that you add. To be able to use this new feature you need IntelliJ IDEA built 7087 or later. While we wait for JetBrains to release the final version 7, you can find EAP versions here:

  • Variable server port.
    You can now change the server port in the plugin settings dialog. After changing it you must restart IntelliJ IDEA. The plugin automatically changes the server port in your Bindows application so you do not have to match the port in your JavaScript code. This is all done automatically for you.

  • Friendly names for Bindows distributions.
    If you have many Bindows distributions (as we have) it is very useful to be able to rename them to whatever you want. This can now be done with the rename button in the plugin options dialog.

Release Notes beta 2

  • New schema to support Bindows 3.0
    The schema is now called: and has several improvements. All different packages are now enumerated and popup in the code completion. Several classes that were not useful in markup have been removed, e.g. all abstract classes.

  • Auto include of BiLog.js
    You no longer have to manually include the file BiLog.js. This file will be included automatically by the plugin when debug mode is active. This works in the following way: When the browser GETs BiEventTarget.js from the server, BiLog.js is silently attached at the end of the file. However, when the obfuscated version of Bindows is used BiEventTarget is merged into Application.js and needs to be attached to this file instead. Therefore choose between obfuscated or non-obfuscated code in the plug-in settings.

  • Live Templates Included.
    Several useful live templates are now included with the plug-in. Both for use in xml markup and for use in JavaScript. We also added templates for building skeleton applications and classes as well as dispose methods event handlers with enumerated event types etc. To see which live templates are included, look under "Live Templates" in the IntelliJ IDEA settings. To access live templates from your code press Ctrl+J.

  • A pause button was added to the Bindows Console

  • The layout of the settings dialog should now resize better.

  • BiLog.receiveCommands is now spelled correctly.