Document usage of BundleTemplateMessage/TemplateMessage
-------------------------------------------------------

                 Key: SEAMINTL-70
                 URL: https://issues.jboss.org/browse/SEAMINTL-70
             Project: Seam International
          Issue Type: Feature Request
          Components: Messages
    Affects Versions: 3.1.0.Beta3
            Reporter: Gerald Turner
            Assignee: Ken Finnigan
            Priority: Optional


As a user, the current documentation is sufficient for severity+text messages, 
however on closer inspection of the Message class, I see that detail and 
targets properties are available, much like FacesMessage.

I dug around the seam-international source and experimented with a bean having 
fields/method like the following:

  @Inject
  private Messages messages;

  @Inject
  private transient TemplateMessage message;

  public void doSometing() {
    messages.add(message.level(Level.WARN).text("Text {0}, {1}, 
{2}").textParams('a', 'b', 'c').detail("Detail {0}, {1}, {2}").detailParams(1, 
2, 3).targets("message").build());

    
messages.add(message.level(Level.FATAL).text("Fatality!").targets("message").build());
  }

This works.  A few caveats:

* TemplateMessage field has to be marked transient, otherwise get WELD error 
during deployment about Serializable bean having non-Serializable field.

* Make sure to call add(Message) signature (invoke build()) instead of 
add(MessageBuilder), otherwise only the most recent message is added.

* doSomething method is not reentrant/thread-safe because of the builder.

I'd prefer to use Messages instead of the builders, perhaps have a methods like 
info(String text, String details, String targets, Object... args), however that 
gets ugly with the varargs, having to cast Object[], etc.  Perhaps I should 
stick with FacesMessages.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        
_______________________________________________
seam-issues mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/seam-issues

Reply via email to