Ok, full working example code, tested just now. 

First post regarding the missing RuntimeException (Second post follows later 
after coding example...):

Interface:

  | package org.esit.server.sessionbeans;
  | 
  | import javax.ejb.Local;
  | 
  | @Local
  | public interface Blob {  
  |     
  |     public boolean isAvailable();
  |     
  |     public void raiseBlob();
  |     
  |     public void observeBlob();
  |     
  |     public void destroy();
  |     
  | }
  | 

SessionBean:

  | package org.esit.server.sessionbeans;
  | 
  | import javax.ejb.Remove;
  | import javax.ejb.Stateful;
  | 
  | import org.jboss.seam.annotations.Begin;
  | import org.jboss.seam.annotations.End;
  | import org.jboss.seam.annotations.In;
  | import org.jboss.seam.annotations.Name;
  | import org.jboss.seam.annotations.Observer;
  | import org.jboss.seam.core.Events;
  | import org.jboss.seam.faces.FacesMessages;
  | 
  | @Stateful
  | @Name("blob")
  | public class BlobAction implements Blob {
  | 
  |     @In FacesMessages facesMessages;
  | 
  |     @In Events events;
  |     
  |     public boolean isAvailable() {
  |             boolean out = true;
  |             facesMessages.add("isAvailable(): #0", out);
  |             return out;
  |     }
  | 
  |     @Begin
  |     @End
  |     public void raiseBlob() {
  |             facesMessages.add("raiseEvent() called");
  |             events.raiseAsynchronousEvent("blob");
  |     }
  |     
  |     @Observer("blob")
  |     public void observeBlob() {
  |             System.out.println("blob");
  |             throw new RuntimeException("blob");
  |     }
  | 
  |     @Remove
  |     public void destroy() { }
  | }
  | 
  | 

Called by blob.xhtml (seam generated and edited)

  | <!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
  |                              
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";>
  | <ui:composition xmlns="http://www.w3.org/1999/xhtml";
  |                 xmlns:s="http://jboss.com/products/seam/taglib";
  |                 xmlns:ui="http://java.sun.com/jsf/facelets";
  |                 xmlns:f="http://java.sun.com/jsf/core";
  |                 xmlns:h="http://java.sun.com/jsf/html";
  |                 xmlns:rich="http://richfaces.ajax4jsf.org/rich";
  |                 xmlns:a="https://ajax4jsf.dev.java.net/ajax";
  |                 template="layout/template.xhtml">
  |                        
  | <ui:define name="body">
  | 
  |     <h:messages globalOnly="true" styleClass="message"/>
  | 
  |     <rich:panel>
  |         <f:facet name="header">blob</f:facet>
  |     
  |         <h:form id="blobActionForm">
  |         
  |             <h:commandButton id="isAvailable" value="isAvailable!" 
  |                              action="#{blob.isAvailable}"/>                 
          
  | 
  |             <h:commandButton id="raiseBlob" value="raiseBlob!" 
  |                              action="#{blob.raiseBlob}"/>                   
          
  |         
  |         </h:form>
  |         
  |     </rich:panel>
  | 
  | </ui:define>
  | 
  | </ui:composition>
  | 

Fresh seam-gen project, no further configuration gives only following Server 
output on JBoss 4.2 (using Java 1.5 Beta 12 and Seam 2.0 Beta1):

  | ...
  | 23:31:40,437 INFO  [STDOUT] blob
  | ...
  | 

But no sign of the RuntimeException. I tried to throw the RuntimeException in 
method raiseBlob() directly and voilá, there it is as expected.

Missing RuntimeException, where are you?

Note: Just tested without

  |     @Begin
  |     @End
  | 
with same effect

Greetz, GHad

View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4077075#4077075

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4077075

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

Reply via email to