You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Thomas Götz (JIRA)" <ji...@apache.org> on 2010/08/13 14:16:16 UTC

[jira] Commented: (WICKET-2986) Feedback messages should be String not Serializable.

    [ https://issues.apache.org/jira/browse/WICKET-2986?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12898201#action_12898201 ] 

Thomas Götz commented on WICKET-2986:
-------------------------------------

As already discussed in the #wicket channel, I see your point but also think that Serializable is of more general use. Maybe one could think of some other possibility, e.g. having the ability to attach some metadata to the FeedbackMessage ...

In my usecase, I throw in some specialized object to error(Serializable s), get it back in FeedbackPanel.newMessageDisplayComponent(String id, FeedbackMessage message), which I override for a special feedbackpanel, and then can get the metadata back and do whatever stuff with it.

As I am free to override newMessageDisplayComponent() I think it's also acceptable to go with an own implementation there and do with the message whatever I decide to do. But you are also right if you mention type safety. So maybe some metadata attached to FeedbackMessage? e.g. Component.error(String message, Object data) ...? Just thinking loud, maybe there's also other solutions to this.

> Feedback messages should be String not Serializable.
> ----------------------------------------------------
>
>                 Key: WICKET-2986
>                 URL: https://issues.apache.org/jira/browse/WICKET-2986
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket
>    Affects Versions: 1.4.10
>            Reporter: Maarten Billemont
>
> Component#error currently accepts a Serializable as message parameter.  This is inconsistent with #info, #fatal and #warn.  What's more, Serializable is a really bad idea, because a message should always be a String, not a random object that can be toString'ed.
> toString is really bad practice for generating messages for user consumption.
> 1. It (generally) bleeds implementation details.
> 2. It (generally) isn't localized and often impossible to localize.
> That also means FeedbackMessage#message should be a String and not a Serializable, for the exact same reasons.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.