Hi Martin,
nice Idee, I am gonna try id.

Thanks lot for your patience and help! :)

Regards Johannes

"MyFaces Discussion" <[email protected]> schrieb am 05.08.05 11:05:34:
> 
> 
> ---------- Forwarded message ----------
> From: Martin Marinschek <[EMAIL PROTECTED]>
> Date: Aug 5, 2005 11:05 AM 
> Subject: Re: Messages and navigation rule redirects post
> To: Johannes Hiemer <[EMAIL PROTECTED]>
> 
> Nice solution,
>  
>  even though a bit verbose... You might want to try a phase-listener wich you 
> add before the render response phase and which checks for this bean and adds 
> the messages to the context instead of doing that in a bean as well.
>  
>  regards,
>  
>  Martin
> 
> On 8/5/05, Johannes Hiemer < [EMAIL PROTECTED]> wrote: 
> Hi Richard, Hi Martin,
> perhaps I got something. I took my time this morning and spend it trying some 
> things. In my implementation I got a standard BaseController for all my 
> handlers. So I thought, why should I use this BaseController to save this 
> message for a while. After a few minutes I got a working solution.
> Here is my code:
> 
> ##### BaseController #####
> 
> private static FacesMessage notification;
> 
>         /**
>          * @return Returns the notification. 
>          */
>         public FacesMessage getNotification() {
>                 return notification;
>         }
> 
>         /**
>          * @param notification The notification to set.
>          */
>         public void setNotification(FacesMessage notification) { 
>                 this.notification = notification;
>         }
> 
> ###### faces-config.xml ########
> 
> <managed-bean>
>                 <managed-bean-name>BaseController</managed-bean-name>
>                 <managed-bean-class> 
>                         itecon.web.resource.BaseController
>                 </managed-bean-class>
>                 <managed-bean-scope>session</managed-bean-scope>
>         </managed-bean> 
> 
> 
> This is my BaseController, now we get to the SparepartHandler.java where 
> actually the first stept happens.
> 
> public String add() {
>                 message = this.getMessage();
>                  log.info (message);
>                 String notification = 
> Utils.getMessageResourceBundle(getBundle(), "internalDatasetExists", null, 
> getLocale());
>                 setNotification(new FacesMessage(FacesMessage.SEVERITY_INFO, 
> notification, notification));
>                 return message;
>         }
> 
> As you can see, I get my notification from my ResourceBundle of the 
> Application. After the I put it through BaseController.setNotification into 
> my private static FacesMessage notification;
> Till here - fine.
> 
> No I have a second managed bean called: NotificationHandler.
> 
> ##### NotificationHandler.java #######
> 
> public class NotificationHandler extends BaseController implements 
> Serializable { 
> 
>         private String hiddenField = null;
> 
>         public void pageLoad() {
>                 log.info(getNotification());
>                 facescontext.addMessage("globalMessage", getNotification());
>         }
> 
>         /**
>          * @return Returns the hiddenField.
>          */
>         public String getHiddenField() {
>                 return hiddenField;
>         }
> 
>         /** 
>          * @param hiddenField The hiddenField to set.
>          */
>         public void setHiddenField(String hiddenField) {
>                 this.hiddenField = hiddenField;
>         }
> }
> 
> The hiddenField was created because I don't know another way to initialize 
> the managed-bean through my success.jspx
> That's my managed bean in my faces-config.xml
> 
> ###### faces-config.xml #####
> <managed-bean>
>                 <managed-bean-name>notificationSpringBean</managed-bean-name>
>                 <managed-bean-class> 
>                         itecon.web.controller.NotificationHandler
>                 </managed-bean-class>
>                 <managed-bean-scope>session</managed-bean-scope>
>                 <managed-property> 
>                         <property-name>pageLoad</property-name>
>                         <value>true</value>
>                 </managed-property>
>         </managed-bean>
>  
>  And last but not least my success.jspx.
> 
> ####### success.jspx ######
> 
> <h:form id="form">
>         <h:panelGrid columns="3" styleClass="parentTable" 
> headerClass="tableHeader" columnClasses="childTable">
>                 <f:facet name="header">
>                         <h:outputText id="closer" value="YIIPPIIEIIOOO 
> SCHWEINEBACKE" />
>                 </f:facet>
>                 <h:inputHidden id="hiddenField" 
> value="#{notificationSpringBean.hiddenField}" />
>                 <x:messages id="globalMessage" layout="table"
>                 showSummary="true" showDetail="false" />
>         </h:panelGrid>
> </h:form>
> 
> 
> As attachement the result.
> To proove it:
> Here the extract of my Resources.properties
> internalDatasetExists=Dataset already exists 
> 
> Try it, tell me If I am wrong, or if there better ways to do it.
> 
> Regards Johannes
> 
> ______________________________________________________________
> Verschicken Sie romantische, coole und witzige Bilder per SMS! 
> Jetzt bei WEB.DE FreeMail:  http://f.web.de/?mc=021193
> 
> 
> 
> 
>   


__________________________________________________________
Mit WEB.DE FreePhone mit hoechster Qualitaet ab 0 Ct./Min.
weltweit telefonieren! http://freephone.web.de/?mc=021201

Reply via email to