Diana Seam Facelets Support

Doesn't look like Diana understands Extended EL that is used with Seam. It doesn't support code completion and complains about the method not being accessible.

Encountered with build 8445.

Edited by: Samuel Doyle on Jun 10, 2008 2:40 AM

6 comments
Comment actions Permalink

Works for me.

Can you post the EL and the method signature?

Your module does have a seam facet added to it, right?

0
Comment actions Permalink

Works for me.

Can you post the EL and the method signature?

Your module does have a seam facet added to it, right?


Yes it understands the Seam component so I can ctrl+b and jump to the Java source for something like

<h:selectOneMenu value="#{x.yMode}"

Here is the example I speak of that doesn't work

<f:selectItems value="#{x.getYModes()}" />

This is valid and works but yet Diana complains about Cannot resolve property or method.

Sorry left out the signature.
public SelectItem[] getYModes();

Edited by: Samuel Doyle on Jun 10, 2008 9:21 PM

0
Comment actions Permalink

That's probably this known bug:

http://www.jetbrains.net/jira/browse/IDEADEV-26616

If the method has getter/setter signature then Idea mistakes the EL for a value expression rather than a method expression.

Does it work for methods that do not begin with "get" or "set"?

0
Comment actions Permalink

Gosh. Forget that remark about value and method expressions - it is and should be a value expression in this case.

Still I think the problem is in the "get" prefix. Just for testing I changed the "get" prefix to "query" and that works for me.

0
Comment actions Permalink

Ok thanks I'll give that a try but I guess it is still a bug.

0
Comment actions Permalink

Sure, it is a bug, and you are welcome to comment on it in Jira or vote for it to be fixed. I was just asking wether you can confirm that you are indeed experiencing the same bug.
I am pretty sure that JetBrains will fix it during EAP, because after all Seam support is one of the topics on the road map for Idea 8.

0

Please sign in to leave a comment.