"Go To Action/Package" by name
Ctrl+Shift+Alt+N (Go To -> Symbol) to quickly navigate to any Action/Package by simply entering its name (including wildcards):
Dedicated icons for configuration/JAVA (Action) files
Recognize Struts related files/classes at a glance throughout the IDE (Project/Packages View, Editor tabs, Autocompletion, ..):
Struts 2 facet
All plugin configuration settings are bundled in a dedicated facet. Simply attach a new Struts 2-facet to an existing Web-facet, create a fileset and add your struts.xml files from all auto-scanned configuration files in your project and the plugin is ready to work.
Dedicated facet with configuration options
File Set manager
Group and manage your struts.xml files with an easy to use editor, providing maximum flexibility w/r to your project setup.
Detect struts.xml files not mapped to file sets
Spot setup errors easily, additionally providing a quickfix to add the unmapped struts.xml-files to any existing fileset.
Creates IDEA project/module-library and - if required - downloads all necessary JAR files required for Struts 2.
Library validator/setup for standard plugins (Spring, Tiles, JSF, ..)
Autodetection of Struts 2 facets
Existing struts.xml files are recognized upon opening your project and a new S2 facet is created automatically.
Integration with "New Project"
Add a blank ready-to-start Struts 2 application template by selecting Struts 2 from the list of available technologies. A S2-facet with default fileset and an empty struts.xml-file already mapped in web.xml will be created automatically, all necessary libraries will be setup as well.
Autocompletion for all possible elements
Auto-completion is available for virtually all tags and attributes, just give it a try:
Rename refactoring/Find Usages for all referencable elements
Need to refactor your S2 application? Just use the Rename refactoring (
Shift+F6) or perform Find Usages (
Navigation to referenced elements
Ctrl-click (or press
Ctrl+B) on any element to navigate to its declaration - or take a peek without leaving the current editor using Quick Definition Lookup (
Highlighting of configuration/reference errors
Errors are highlighted immediately in the editor, additional validation is triggered for Make Project.
IDEA 7: see "Validation" tab in S2 facet for more options
IDEA 8+: see Settings->Compiler->Validation
struts.xml: restrict resolving to result location depending on result-type (e.g. Velocity)
Various inspections for common configuration errors
Highlight common configuration errors or possible problems on-the-fly.
Visually groups all relevant info with Autoscroll from/to source:
Pageflow graph (struts.xml)
Graph of all relevant S2 elements.
Navigation to/from corresponding Action-class
Show validation.xml node(s) under corresponding Action-class (like GUI-Designer forms)
validation.xml-template from Action
Navigation to Action-declaration in struts.xml
Simply click on the action icon in the left editor bar to quickly open up the corresponding mapping(s) in
IDEA 8.1.1+: also for Groovy
Highlight unused Actions, Quickfixes: Delete, Map in struts.xml
Autocompletion/navigation to result-declaration in struts.xml
Navigation to Action-declaration/class
Click on the Action-class icon to quickly open the corresponding JAVA/Groovy-class or Ctrl+click on the "action"-attribute to go to the
Autocompletion/navigation for form properties
Autocompletion/navigation for other tags
Autocompletion is available for most attributes with static values.
(IDEA 8+: plugin "CSS Support" must be enabled)
Define inline-styles (
cssStyle) or reference existing CSS classes (
Plugins/3rd Party Extensions
(plugin "Spring Support" must be enabled and Spring facet configured properly)
Reference Spring beans where supported (e.g. in
Autocompletion/navigation/usage search in annotations (WIP):
Integration with Tiles 2
(plugin "Struts 1.x" must be enabled)
struts2-tiles-plugin.jar must be present as well as Tiles libraries. Configured
tiles.xml-files will be set automatically as described in http://struts.apache.org/2.x/docs/tiles-plugin.html.