Hi Richard,
I can see that @OutputProperty might not always be what you want,
depending on how your code is structured. Can you please add an issue
for a feature enhancement to Jira? Like that we can track the
implementation of your request.
Take care,
Geert
On 30 Apr 2007, at 19:57, Richard Reich wrote:
Actually, I spent a good bit of time trying to get @OutputProperty to
work. My results were mixed. First, since the code that's there now
works fine without the addition of a getter and a property, adding it
seems like a mistake. All that adding the property and the getter
achieved was to produce a compile-time definition. Also, when I
removed
the part of the working code that explicitly sets the output value in
the setExitQuery call (might as well let the getter do its thing), the
code failed. I think there's something a bit different about the
timing
of things in the gotBeanInstance context so that the automatic
usage of
the getter to access the output fails. But even if I had succeeded
with
the @OutputProperty, it's still a step backward in terms of unneeded
complexity, reliance on invisible actions, loss of re-entrance (the
field), etc.
Or I don't understand how to use it properly! :) Thanks for your
patience.
-r
Geert Bevin wrote:
Hi Richard,
the reason why there's no @OutputField annotation is because there is
an @OutputProperty annotation that is much more useful. More
information can be found here:
http://rifers.org/wiki/display/RIFE/Annotations+support+for+element
+declaration
We can add an @OutputField annotation, but I'm not sure that it will
be used much.
Take care,
Geert
On 30 Apr 2007, at 06:46, Richard Reich wrote:
I'm very new to RIFE. So I may be missing something very obvious.
I'm playing with the "friends" example. Adding stuff, changing
stuff.
Right now, I'm trying to expunge as much XML as possible while
maintaining a clean component structure. I also want to remove
as many
string literals as possible from annotations. (I rely on smart IDE
searches and typing completions.) So I'd very much like to be
able to
treat an element's output in the same way that the ExitField
treats an
exit. That is, I'd like an annotation OutputField applicable to
public
static final Strings.
Is this a reasonable request, consistent with the RIFE design
outlook?
FYI, the relevant fragment of the code I've been playing with is
below,
if that helps.
-r
Display.java:
@Elem(outputs = @Output(name="friendid")) // nice to get rid of the
"outputs"
public class Display extends Element {
@ExitField
public static final String EXIT_EDIT = "edit";
public void processElement() {
final Template t = getHtmlTemplate("display");
final Datasource ds =
Datasources.getRepInstance().getDatasource(Config.getRepInstance
().getString("DATASOURCE"));
GenericQueryManager<Friend> fm =
GenericQueryManagerFactory.getInstance(ds, Friend.class);
fm.restore(new DbBeanFetcher<Friend>(ds, Friend.class) {
public boolean gotBeanInstance(Friend friend) {
setExitQuery(t, EXIT_EDIT, new String[] {"friendid",
Integer.toString(friend.getId())});
t.setBean(friend);
t.appendBlock("rows", "row");
return true;
}
});
print(t);
}
}
--
Geert Bevin
Terracotta - http://www.terracotta.org
Uwyn "Use what you need" - http://uwyn.com
RIFE Java application framework - http://rifers.org
Music and words - http://gbevin.com
_______________________________________________
Rife-users mailing list
[email protected]
http://lists.uwyn.com/mailman/listinfo/rife-users
_______________________________________________
Rife-users mailing list
[email protected]
http://lists.uwyn.com/mailman/listinfo/rife-users
--
Geert Bevin
Terracotta - http://www.terracotta.org
Uwyn "Use what you need" - http://uwyn.com
RIFE Java application framework - http://rifers.org
Music and words - http://gbevin.com
_______________________________________________
Rife-users mailing list
[email protected]
http://lists.uwyn.com/mailman/listinfo/rife-users