I added a message outside a convert/validator. The only thing I did different (that I can recall) was explicitly set the locale as the 3rd param.
----- Original Message ----- From: "Ray Clark" <[EMAIL PROTECTED]> To: "MyFaces Discussion" <[email protected]> Sent: Monday, April 11, 2005 10:58 PM Subject: Re: FacesMessage question > Hi Rob, thanks for trying, but this didn't seem to > help. > > I changed the code to be like this: > > FacesContext.getCurrentInstance().addMessage("body", > new FacesMessage(FacesMessage.SEVERITY_ERROR, > "summary message", "detail message")); > > When I put the messages tag in my page like you > suggest: > > <h:messages id="body" layout="table" > styleClass="message" showSummary="true" > showDetail="false"/> > > I get a "java.lang.IllegalStateException: parent is > null?" exception. > > When I leave the id attribute off, it doesn't throw an > exception but of course it doesn't work either. > > So I tried this: > > <h:message for="body" showSummary="true" > showDetail="true"/> > > This doesn't show a message either. It doesn't throw > an exception, it just doesn't seem to do anything. > > I know the message is getting into the context because > I can execute this and the message gets printed out. > > Iterator iter = > FacesContext.getCurrentInstance().getMessages(); > while (iter.hasNext()) { > FacesMessage msg = (FacesMessage) iter.next(); > System.out.println("severity=" + msg.getSeverity() > + ", summary=" + msg.getSummary() > + ", detail=" + msg.getDetail()); > } > > I was using null instead of "body" because I thought I > read in the javadoc that null meant that it was a > global message. But changing it to null and adding > the globalOnly="true" attribute to the messages tag > didn't do a think either. > > Anybody got any other ideas? > > Surely people are using h:message or h:messages to put > out messages to the users from a method other than a > converter or validator. > > I'm using MyFaces 1.0.8, what are you using Rob? > > Thanks, > Ray > > --- Robert Breidecker <[EMAIL PROTECTED]> wrote: > > Ray, > > > > You need to set the client id when adding the > > message > > to FacesContext. > > > > The last line in your code example would be... > > context.addMessage("myClientId", message); > > > > Your JSP messages tag would be... > > <h:messages id="myClientId" layout="table" > > styleClass="message" showSummary="true" > > showDetail="false"/> > > > > Hope this helps. > > > > Rob Breidecker > > > > > > > > > > --- Ray Clark <[EMAIL PROTECTED]> wrote: > > > I have a method in a managed bean that is getting > > > called. I wish to put a message on the page to > > > inform > > > the user that the operation that he/she requested > > > was > > > performed correctly. I can successfully do this > > > with > > > a variable in the managed bean. My problem is > > that > > > I > > > was wanting to use the built in FacesMessage class > > > for > > > this if possible. Here is my code to add my > > > message: > > > > > > FacesMessage message = new FacesMessage(); > > > message.setSeverity(FacesMessage.SEVERITY_ERROR); > > > message.setSummary("Add was successful"); > > > message.setDetail("Add was successful"); > > > FacesContext context = > > > FacesContext.getCurrentInstance(); > > > context.addMessage(null, message); > > > > > > It does add the message to the context because I > > can > > > use System.out to print it out right after that. > > > The > > > problem is that the message doesn't display on the > > > page. I do get other Faces messages displayed so > > I > > > don't believe it is a problem with the JSP. I'm > > > wondering if FacesMessage was not designed to be > > > used > > > like this. Is FacesMessage only designed to be > > used > > > in the converter and validator? > > > > > > Has anyone else been able to put a message in the > > > context and been able to print it out on the page? > > > > > > Here is my JSP snippet. > > > > > > <h:messages layout="table" styleClass="message" > > > showSummary="true" showDetail="false"/> > > > <h:messages layout="table" styleClass="message" > > > showSummary="false" showDetail="true"/> > > > > > > > > > Thanks, > > > Ray > > > > > > > > > > > > __________________________________ > > > Do you Yahoo!? > > > Make Yahoo! your home page > > > http://www.yahoo.com/r/hs > > > > > > > > > > > __________________________________ > > Do you Yahoo!? > > Make Yahoo! your home page > > http://www.yahoo.com/r/hs > > > > > > __________________________________ > Do you Yahoo!? > Yahoo! Small Business - Try our new resources site! > http://smallbusiness.yahoo.com/resources/

