[jboss-user] [JBoss Seam] - Action not invoked - config error?
taprogge
do-not-reply at jboss.com
Tue Apr 10 06:59:36 EDT 2007
Hello all!
I am currently working on a project that has been dorment for a while. It uses JBoss Seam with JBoss Portal through the MyFacesGenericPortlet.
A have updated Seam to 1.2.1 now and added a new component to test the s:fileUpload functionality.
My problem is now that the action declared in my jsp's commandButton is never invoked when I click it. The server just redisplays the portal page. No error message is given.
The component itself is found when the application deploys, that was ther first thing I checked.
This obviously has to be an error on my part, but somehow, it eludes me.
Perhaps anyone of you has some insights?
My jsp looks like this:
| <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
| <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
| <%@ taglib uri="http://jboss.com/products/seam/taglib" prefix="s"%>
|
| <f:view>
| <h3>Upload</h3>
| <p>
| <h:form enctype="multipart/form-data">
| <s:fileUpload data="thedatafield"/>
| <h:messages style="color:red"/>
| <h:commandButton type="submit" value="upload" action="#{UploadAction.load}" styleClass="portlet-form-button" />
| </h:form>
| </p>
| </f:view>
|
and my component like this (I'll omit the local interface and omit imports... nothing fancy in there):
| @Stateful
| @Scope(SESSION)
| @Name("UploadAction")
| public class UploadActionBean implements UploadAction {
|
| private static Logger logger = Logger.getLogger(UploadActionBean.class);
|
| @PersistenceContext(type = EXTENDED)
| private EntityManager em;
|
| @In(create = true)
| @Out(required = false)
| private byte[] thedatafield;
|
| @In(create = true)
| private transient ResourceBundle resourceBundle;
|
| @In
| private transient FacesContext facesContext;
|
| @SuppressWarnings("unchecked")
| public String load() {
| System.out.println("in load()");
| if (thedatafield != null) {
| logger.info(thedatafield);
| }
| else {
| logger.info("thedatafield is null");
| }
| return Outcome.REDISPLAY;
| }
|
| public void setThedatafield(byte[] field) {
| this.thedatafield = field;
| }
|
| public byte[] getThedatafield() {
| return this.thedatafield;
| }
|
| @Remove
| @Destroy
| public void destroy() {
| // nothing to clean up here
| }
| }
|
Thanks in advance for any ideas you guys might have.
Best regards,
Phil
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4035922#4035922
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4035922
More information about the jboss-user
mailing list