What's New in 4.1.0.Beta1
Arquillian
Arquillian Eclipse
Arquillian Eclipse is a new JBoss Tools component that makes using Arquillian easier.
See Arquillian Eclipse.
Add/Remove Arquillian Support
The Arquillian support can be added/removed by right-clicking the project and selecting Configure>Add/Remove Arquillian support.
The project has to be a maven project. The Add Arquillian Support action adds the Arquillian nature to the project as well as the arquillian artifacts (bom, dependencies, required plugins, profiles …) to the project’s pom.xml. The Remove Arquillian Support removes the Arquillian nature, but doesn’t change the project’s pom.xml.
Related JIRA: JBIDE-6319
See screencast.
New Arquillian JUnit Test Case wizard
The wizard is based on the JUnit Test Case wizard, but adds the following to a created class:
-
@RunWith(Arquillian.class) annotation
-
the deployment method
The user can define the name of the deployment method, the name and order of the deployment, the type and name of the archive, add an empty beans.xml, available classes and resources to the deployment archive.
Related JIRA: JBIDE-6318
See screencast.
Generate Arquillian Deployment Method
The Generate Arquillian Deployment Method action has been added to the context menu of the Java editor and Eclipse views.
Related JIRA: JBIDE-8553
See screencast.
Hyperlink on Arquillian resources
The Arquillian Eclipse has ability to click through to resources specified as part of Shrinkwrap definition.
Related JIRA: JBIDE-6338
See screencast.
Run As Arquillian launch configuration
The Run As Arquillian launch configuration includes the following features:
-
is activated only if there is the org.jboss.arquillian.junit.Arquillian class
-
runs only Arquillian JUnit tests
-
checks if there is exactly one implementation of the org.jboss.arquillian.container.spi.client.container.DeployableContainer interface
-
includes the Arquillian tab that enables the user to check/change the Arquillian configuration properties, select maven profiles, review/start/stop WTP servers. The Arquillian configuration properties are added using declarations from the arquillian.xml, arquillian.properties and the default values when instantiating the corresponding container configuration.
See screecast.
Related JIRA: JBIDE-10526
Arquillian Validator
The Arquillian Validator finds the following issues:
-
classes that are used in a test, but aren’t included in the deployment
-
tests without any deployment method and/or any test method
-
resources that can’t be found
Arquillian issues can be ignored, marked as a warning or as an error. It is possible to add quick fixes (haven’t been implemented yet) for some or all Arquillian issues.
Related JIRA: JBIDE-6568
See screencast.
Arquillia Cruiser
The Arquillian view (Arquillia Cruiser) shows Arquillian deployment archives.
Related JIRA: JBIDE-6662
See screencast.
Add Arquillian Profiles
Arquillian Profiles can be added by right-clicking the project and selecting Configure>Add Arquillian Profiles support.
See Issue 6 for more details.
See screencast.
Default VM arguments
Arquillian Eclipse enables adding default VM arguments to Arquillian/JUnit/TestNG launch configurations.
Related JIRA: JBIDE-13289
See screencast.
Aerogear
Hybrid Mobile (Cordova) Tools
New Hybrid Mobile Project wizard Creates a project structure that is compatible with the cordova-cli projects
Wizard will pre-populate your config.xml.
Related JIRA: JBIDE-13650
Cordova Configuration Editor
Provides easier editing for Cordova’s flavour of w3c widget specification XML configuration
Related JIRA: JBIDE-13646
Run support for Android and iOS
Creates, compiles and runs the native application on the native platform emulators and devices.
-
Run on iOS emulator. Creates and compiles a XCode project and runs the resulting artifacts on the iOS simulator.
-
Run on Android emulator Creates and compiles an Android project and runs it on the Android emulator.
-
Run on Android device Runs the project on an Android device if there is one attached
Related JIRAs: JBIDE-13645, JBIDE-13648
BrowserSim
CordovaSim
New CordovaSim Application
CordovaSim is a simulator of Apache Cordova (aka PhoneGap) environment based on BrowserSim and Ripple. It emulates main APIs of Apache Cordova such as Accelerometer, Geolocation, Camera, Barcode Scanner, etc.
There is CordovaSim Launch configuration which can run Hybrid Mobile projects and Cordova enabled Android projects.
The Launch Configuration is also available from the Run As context menu.
Related JIRAs: JBIDE-13552, JBIDE-14362, JBIDE-14300, JBIDE-14383
BrowserSim
LiveReload support
If you enable LiveReload BrowserSim will inject livereload.js into html pages it load. Making it automatically load if the url is managed by a livereload server such as JBoss Tools new LiveReload plugin.
Related JIRA: JBIDE-14360
Synchonized Windows
Now you can open more than one BrowserSim windows which work synchronously. It provides ability to see multiple devices rendering the same page, repeat your navigation steps and when reload it reloads all of them. Synchronized window can be opened via Menu > Open Synchronized Window > skin_to_open
As a result of this action two devices working synchronously will appear.
Related JIRA: JBIDE-13525
CDI Tools
Missing beans.xml validation
CDI Tools validator reports a warning if beans.xml is missing in CDI 1.0 project. image::images/4.1.0.Beta1/beansXmlValidation.png[]
This problem can be fixed via QuickFix menu (Ctrl+1):
Related JIRAs: JBIDE-13996, JBIDE-14383
Forge Tools
Forge 1 Eclipse-style Wizards
There was a demand from our users to support the functionality offered by Forge not only in the command-line style but to also provide Eclipse-style wizards that expose this funtionality. The initial implementation of some of these wizards is now available. Note that changes to these wizards will happen according to the feedback we receive from our users.
The wizards assume that you have created a Maven enabled project, you can do this easily by creating e.g. a Java EE Web Project from the JBoss Central page.
The first important wizard is a wizard to generate entities from an existing database.
The second wizard enables you to scaffold a JSF user interface from JPA entities in your project. More scaffold types (such as html5) are on the way.
Initial Forge 2 Support
We have included Forge 2 support. The included runtime is 2.0.0.Alpha4 and as the alpha status indicates, this support is experimental. You can bring up a popup containing the available Forge 2 commands by issuing 'Ctrl+5'.
We invite you to watch this short video to get an initial idea of how to use this functionality.
JBoss Central
Design improvements
The JBoss Central UI has been improved to better scale in small(er) resolutions:
Related JIRA: JBIDE-13884
"Proxy" Wizards
JBoss Central now displays wizards for plugins that may not have been installed yet. For instance, it will display the OpenShift Application link even if you don’t have the JBoss OpenShift tooling installed. Clicking on that link will ask you to install the required OpenShift features:
Moreover that wizard list can be updated, reordered at any time, remotely from the JBoss Tools team.
As part of this change, the GWT Project wizard has been replaced by the Maven Project wizard.
Related JIRA: JBIDE-13987-JBIDE-14445
OpenShift in the Software/Update page
OpenShift Tools have been added to the JBoss Central Software/Update page, giving users easier access to developing on and for the Cloud.
Related JIRA: JBIDE-14330
JST / JSF / HTML Editor
jQuery Mobile
jQuery Mobile Palette
There are a few new jQuery Mobile widget wizards available in jQuery Mobile Palette for HTML5 files:
-
Panel:
Related JIRA: JBIDE-13620
-
Grouped Buttons:
Related JIRA: JBIDE-14104
-
Collapsible Set:
Related JIRA: JBIDE-14398
There are also some minor enhancements of wizards introduced in 4.1.0.Alpha:
New content assist is now available for URL properties in New JQM Widget wizards. Just use Ctrl+Space to see all the available pages, dialogs, popups and panels declared in the file you are editing:
Related JIRA: JBIDE-14438
OpenOn for
A new hyper link (Ctrl+Click) for multi-page HTML files is now available. Just use Ctrl+Click on <div data-role="page"> to open this particular page with the default browser or BrowserSim:
See screencast.
Related JIRA: JBIDE-13890
jQuery Mobile 1.3.1 Page Template
New HTML5 jQuery Mobile page template was updated to the new JQM 1.3.1:
Related JIRA: JBIDE-14290
LiveReload
Server Mode Support
In Addition with the Directory Mode support introduced in 1.0.0.Alpha, the new Server Mode brings LiveReload support to resources deployed on a JBoss AS Server (other types of servers will follow). In this mode, the LiveReload commands are sent to the connected browsers once resources have been redeployed on the Application Server. This means that notified browsers will wait until the latest version of the resources have been deployed before loading them.
As before, users only need to create and start the LiveReload server, connect their browser using the installed extension and then start working on resources in their workspace.
Related JIRA: JBIDE-13950
Directory Mode Support via Proxy
The LiveReload server now features an optional embedded proxy mode which enhances the Directory Mode experience. Using this proxy, users can not only access their local files from remote devices, but also have the <script> tag to load the livereload.js script automatically inserted at the bottom of the <body> element of the returned HTML pages. This means that LiveReload support is now available for tablets and smartphones that do not allow for browser extension installation !
In the Project Explorer and Package Explorer, the contextual menu has been filled with a new "Open With>Web Browser via LiveReload Proxy" action. This latter one opens the selected file in the Web Browser, but instead of using the file:// protocol, it uses the http:// protocol and connects to the LiveReload embedded proxy.
For security reasons, the proxy is disabled by default. Once enabled, it may optionally accept remote connections if you want to enable LiveReload from remote devices or remote computers. For users wanting to use the BrowserSim with LiveReload, there is no need to allow for remote connections.
In any case, only workspace projects files are exposed by this Proxy.
Related JIRAs: JBIDE-13970, JBIDE-14498
Maven
JBoss Maven Integration
Edit Maven Repositories
Maven Repositories defined in profiles in your settings.xml (Window > Preferences > JBoss Tools > Maven Integration > Configure Maven Repositories…) can now be edited with the "Edit Repository…" button :
image::images/edit-maven-repositories.png Inactive repositories now stand out with an (Inactive) suffix. Click on the "Edit Repository…" button to (re)activate them.
Related JIRA: JBIDE-13831
OpenShift
Application Wizard
Verbose Cartridge Labels
In Beta1 we gave labels in the OpenShift application wizard some love. We show you better descriptions of what application you’re about to create and what cartridge you’re about to embed:
Related JIRA: JBIDE-14459
Publish Right Away
To create or import an OpenShift application in JBoss Tools you launch the application wizard that does all the heavy lifting for you. This wizard creates the application and imports it to a new project or merges it into an existing one. To then publish these changes to OpenShift, you get over to the server adapter and tell it to publish your Eclipse project. In Alpha2 you had to think about publishing and manually trigger the adapter once you had run through the wizard. Beta1 now prompts you right away and asks you if you want to push once the import/merge is done.
Related JIRA: JBIDE-13075
Server adapter
See it pushing while it’s happening
JBoss Tools offers you a server adapter to publish your local changes to OpenShift. This adapter does all git pushing for you. In case of maven projects publishing will usually trigger a maven build on OpenShift. This may therefore take quite some time. In Alpha2 you had to wait for this to complete in order to see the results. A limitation in Eclipse EGit prevented us from showing you the output while it was occurring. We improved EGit/JGit and contributed this enhancement to Eclipse. We are therefore now able to give you immediate feedback while we push to OpenShift.
Related JIRA: JBIDE-12137
Restart Application
In Alpha2 we allowed you to restart an application from the context menu in the OpenShift Explorer. Beta2 now adds this option to the context menu of the server adapter.
Related JIRA: JBIDE-13960
Binary Deploy to JBoss EWS (Tomcat 6/7)
If you want to deploy some binary artifact (ex. your application war) in JBoss Tools you simply drag and drop your Eclipse project to the OpenShift server adapter. The adapter will then war and push it to OpenShift. While this worked fine with JBoss AS and EAP, things didn’t work out of the box for tomcat 6 and 7. We now fixed this for Beta1.
Related JIRA: JBIDE-13401
Various Improvements
Removing Cartridges
Removing cartridges may cause loss of data. This is especially true when you remove databases like mysql, postgres or mongo db. Thus we now remind you of this potential risk and ask you to confirm this irreversible removal.
Related JIRA: JBIDE-13961
Upload SSH Keys
Various operations like cloning and inspecting your application logs require you to upload your SSH keys to OpenShift. In order to have an even smoother workflow the application wizard will prompt you if you have no keys on OpenShift yet. It will ask you right away to create a new or upload your existing key(s).
Related JIRA: JBIDE-13020
Port Forwarding for Scalable Apps
In Alpha2 port forwarding failed for scalable applications. In Beta1 we now made sure that you can forward the ports of any OpenShift application be it scalable or not.
Related JIRA: JBIDE-14404
Missing credentials when Creating Jenkins
Before Beta1 it could happen that you created a jenkins application but didn’t get the credentials for it. The dialog that reported these was empty. In order to fix this we increased the timeouts that made you miss these informations. To make your experience even smoother in case it still fails we now offer you a link to the environments variables in the creation dialog. This link allows you to easily look the credentials via a single click.
Related JIRA: JBIDE-14342
OpenShift Java Client
New Version 2.2.0
The latest openshift-java-client 2.2.0 moved to exclusively support protocol 1.2. With this upgrade JBoss Tools and all other user application will benefit from far more informative descriptions for cartridges. Further additional enhancement will make it to the library with the upcoming releases.
Related JIRA: JBIDE-12320
Project Examples
Opening cheatsheet on import project
Project examples plugin can now open a .cheatsheet.xml or cheatsheet.xml when a project is imported.
For now this feature must be enabled manually using the Window>Preferences>JBoss Tools>Project Examples preferences page.
Related JIRA: JBIDE-14332
Show in Cheat Sheets view.
There is now a new action in the "Show in" context menu: the Show in Cheat Sheets action.
This allow you to easily re-open or test a cheatsheet.xml found in examples.
The action is enabled for the Java, J2EE, JBoss and PDE perspectives.
See a screencast of this in action.
Related JIRA: JBIDE-14334
New cheatsheet commands
We have added new context sensitive parameterized commands for open file, show type etc. The commands can be used when creating cheatsheets.
getProjectForCheatsheet |
Used to store currentProject so you can refer to it in other commands |
openFileInEditor(path,fromLine,toLine) |
Used to open a file in an editor and highlight lines of a text from fromLine to toLine |
These commands can be used like any other command in a cheatsheet. Example of this working in a project can be found at helloworld-cheatsheet
Related JIRA: JBIDE-14333
Server Tools
Deployment Scanners
Deployment Scanner cleanup
When starting a JBoss server, the server adapter automatically adds deployment scanners to your server to pick up deployments to locations outside the server. Depending on your server version, these scanners may be persisted across future restarts, or may not be. On servers where they are persisted, we also typically remove these scanners, to prevent multiple workspaces using the same server from having collisions or conflicting deployment locations.
Some users prefer to manage their deployment scanners on their own, and wish the server adapter did not automatically take control of this aspect of their development environment. For these users, two new settings have been added to the server editor which will allow control for this behavior.
Related JIRA: JBIDE-9830
Starting and Stopping Deployed Modules
Module start, stop and restart
Start, stop and restart on modules in the server adapter now perform an actual start, stop and restart of the module on AS7 and above.
These operations are implemented with JBoss Management API instad of file copying/moving operations and have the following consequences:
-
The operations are now much faster
-
Restart no longer does a full redeploy/publish. Use "Full publish" for this.
-
Status of the module in server view and administration console should now be in sync
Related JIRA: JBIDE-2625
Visual Editor
Windows 64-bit Support
Thanks to a contribution of Carsten Pfeiffer, Visual Page Editor got experimental support for Windows 64-bit. So if you see this screen:
then you may install XULRunner from this update site (via Help > Install New Software) and make it work:
Related JIRAs: JBIDE-2720, JBIDE-14451, JBIDE-14452
Web Services Tools
WS Tester Performance Improvements
The WS Tester now uses the JBoss Wise framework to generate sample SOAP messages when testing JAX-WS services. This offers several benefits in stability and maintenance as well as a major improvement in processing complex WSDLs.
Related JIRA: JBIDE-13527