Symbol |
Status |
---|---|
planned |
|
in progress |
|
done |
|
future planning |
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.
Library validator/setup
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 will be 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.
IDE integration
"Go To Action/Package" by name
Press Ctrl+Shift+Alt+N
(Go To -> Symbol) to quickly navigate to any Action/Package by simply entering its name (including wildcards):
"Go To -> Related File"
IDEA 10.5+
Use this shortcut to quickly navigate from any web-resource used in <result>
to its <action>
-declaration and/or Action-method.
IDEA 11+
Also vice versa from Action-class to <action>
-declaration and any referenced result(s) files
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.xml/validation.xml
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 (Alt+F7
or Ctrl+Alt+F7
):
Navigation to referenced elements
Simply 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 (Ctrl+Shift+I
).
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
Quickfixes
Various quickfixes to create missing elements etc.
struts.xml: restrict resolving to <result> value depending on result-type (e.g. Tiles, Velocity)
IDEA 10+
Various inspections for common configuration errors
Highlight common configuration errors or possible problems on-the-fly.
Structure View
Visually groups all relevant info with Autoscroll from/to source. Searching for something in the tree? Just start typing its name to find it.
Pageflow graph (struts.xml)
IDEA 8+
Graph of all relevant S2 elements.
validation.xml
Navigation to/from corresponding Action-class
IDEA 11+
Autocompletion/Navigation to Action-class properties in <field>
"name"
Show validation.xml node(s) under corresponding Action-class (like GUI-Designer forms)
Create corresponding validation.xml
-template from Action
Structure View
I18N-support
IDEA 11+
Support for .properties
-based I18N for <message>
"key" (can be disabled in S2 facet, tab "Features").
Actions (JAVA/Groovy)
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 struts.xml
:
IDEA 8.1.1+: also for Groovy
Highlight unused Actions, Quickfixes: Delete, Map in struts.xml
Navigate to result
IDEA 10.5+
Use the gutter icon to directly navigate to any result(s) from your action method:
JSPs
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 struts.xml
-definition:
Autocompletion/navigation for form properties
IDEA 11+
Form properties will be autocompleted/resolved in "surrounding" Action class. Ofcourse, refactoring is supported here as well.
Autocompletion/navigation for other tags
Autocompletion is available for most attributes with static values.
JavaScript support
(plugin "JavaScript Support" must be enabled)
Enjoy the power of IDEA's powerful JavaScript-support within all S2 UI-tags.
CSS support
(IDEA 8+: plugin "CSS Support" must be enabled)
Define inline-styles (cssStyle
) or reference existing CSS classes (cssClass
).
I18N-support
IDEA 10+
Support for .properties
-based I18N for <s:text>
(can be disabled in S2 facet, tab "Features").
OGNL support
IDEA 11+
Currently under active development, see Struts2PluginOGNLSupport for details.
Plugins/3rd Party Extensions
Support struts2-spring-plugin
(plugin "Spring Support" must be enabled and Spring facet configured properly)
Reference Spring beans where supported (e.g. in <action>
"class", <constant>
"value").
Support Convention plugin
IDEA 9+
Sophisticated configuration properties support
Autocompletion/navigation/usage search in annotations (WIP):
Integration with Tiles 2
(plugin "Struts 1.x" must be enabled)
IDEA 8.1.1+
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.
Freemarker
(plugin "FreeMarker support" must be enabled)
IDEA 8+
All supported S2 taglibs are automatically available:
Global variables as well as properties provided from corresponding Action-class will be resolved:
Velocity
(plugin "Velocity support" must be enabled)
IDEA 10.x+
Add all global macros (struts.vm
in struts2-core.jar) automatically.
Autocomplete all global variables.
Blog post incl. screen-shots
Support struts2-jQuery plugin
IDEA 9+
Provides autocompletion, navigation for JSP tags.
Blog post showing off some features