Hi. I'm currently evaluating IntelliJ IDEA 7 and hope to persuade management to upgrade from 4.5, since there are a couple of nifty features that may make it worthwile. On of them is the expression language awareness (code completion, refactoring etc) in JSP pages.
We have an MVC model where the beans are put in request scope by a servlet. In this case I can add a <jsp:useBean /> tag to the page, just for IntelliJ.
But, in many cases the servlet also adds Maps and Lists to the request, and then we use EL to loop the List or look up values in the Map. It seems I am able to put a <jsp:useBean /> inside the loop, to have IntelliJ detect the type.
- Is it possible to make IntelliJ aware of the types of loop variable by some other means? It understands the var attribute on our custom loop tags, but adding a class attribute didn't seem to work.
- It is possible to make IntelliJ aware of the collections in the request, to avoid the "Cannot resolve variable XYZ" warning without turning the inspection off? <jsp:useBean /> can only be used for beans.
- Is there any other way to make the page aware of request scope variables? Sometimes we don't want the <jsp:useBean /> to create a new bean if there is none, but rather be able to separate between a bean instance being provided by the servlet and not (i.e. null).
Thanks in advance.