[jboss-user] [JBoss Seam] - seam fileupload problem reflection error

yilmaz_ do-not-reply at jboss.com
Mon Dec 3 16:10:11 EST 2007


OS : Win xp
Seam 1.2.1 GA @ JBOSS 4.2.2 GA
I tried both 
private InputStream picturedata; 
or
private byte[] picturedata;[]

i am getting following error

  | 23:09:06,203 WARN  [lifecycle] javax.el.ELException: /private/profile/profile.xhtml @43,5 data="#{privatePerson.picturedata}": Error writing 'picturedata' on type org.javassist.tmp.java.lang.Object_$$_javassist_15
  | javax.faces.el.EvaluationException: javax.el.ELException: /private/profile/profile.xhtml @43,5 data="#{privatePerson.picturedata}": Error writing 'picturedata' on type org.javassist.tmp.java.lang.Object_$$_javassist_15
  | 	at javax.faces.component.ValueBindingValueExpressionAdapter.setValue(ValueBindingValueExpressionAdapter.java:147)
  | 	at org.jboss.seam.ui.UIFileUpload.decode(UIFileUpload.java:57)
  | 

I am using this interface and implemented all methods.

  | public interface PrivatePersonService {
  | 	public String updatePerson();
  | 	public InputStream getPicturedata();
  | 	public void setPicturedata(InputStream data) ;
  | 	public String getContentType() ;
  | 	public void setContentType(String contentType);
  | 	public String getFileName();
  | 	public void setFileName(String fileName);
  | 	public String getTitle() ;
  | 	public void setTitle(String title);
  | }
  | 

  | @Stateless
  | @Name("privatePerson")
  | public class PrivatePerson implements PrivatePersonService {
  | 	@In
  | 	@Out
  | 	User user;
  | 	@In
  | 	EntityManager entityManager;
  | 	@In
  | 	FacesMessages facesMessages;
  | 	@In
  | 	FacesContext facesContext;
  | 	@Logger
  | 	Log log;
  | 	private String contentType;
  | 	private String fileName;
  | 	private String title;
  | 	private InputStream picturedata;
  | 	public String updatePerson() {
  | 		try {
  | 			entityManager.merge(user.getPerson());
  | 			if (getPicturedata() != null) {
  | 				//....
  | 			}
  | 			
  | 		} catch (Exception e) {
  | 			
  | 		}
  | 		return "";
  | 	}
  | 
  | 	/**
  | 	 * @return the data
  | 	 */
  | 	public InputStream getPicturedata() {
  | 		return picturedata;
  | 	}
  | 
  | 	/**
  | 	 * @param data
  | 	 *            the data to set
  | 	 */
  | 	public void setPicturedata(InputStream picturedata) {
  | 		this.picturedata = picturedata;
  | 	}
  | 
  | 	/**
  | 	 * @return the contentType
  | 	 */
  | 	public String getContentType() {
  | 		return contentType;
  | 	}
  | 
  | 	/**
  | 	 * @param contentType
  | 	 *            the contentType to set
  | 	 */
  | 	public void setContentType(String contentType) {
  | 		this.contentType = contentType;
  | 	}
  | 
  | 	/**
  | 	 * @return the fileName
  | 	 */
  | 	public String getFileName() {
  | 		return fileName;
  | 	}
  | 
  | 	/**
  | 	 * @param fileName
  | 	 *            the fileName to set
  | 	 */
  | 	public void setFileName(String fileName) {
  | 		this.fileName = fileName;
  | 	}
  | 
  | 	/**
  | 	 * @return the title
  | 	 */
  | 	public String getTitle() {
  | 		return title;
  | 	}
  | 
  | 	/**
  | 	 * @param title
  | 	 *            the title to set
  | 	 */
  | 	public void setTitle(String title) {
  | 		this.title = title;
  | 	}
  | 
  | }
  | 

i configured web.xml
<filter>
  |   <filter-name>Seam Filter</filter-name>
  |   <filter-class>org.jboss.seam.web.SeamFilter</filter-class>
  |  </filter>
  |  <filter-mapping>
  |   <filter-name>Seam Filter</filter-name>
  |   <url-pattern>/*</url-pattern>
  |  </filter-mapping>
component.xml file

<component class="org.jboss.seam.web.MultipartFilter">
  | 		<property name="createTempFiles">true</property>
  | 		<property name="maxRequestSize">1000000</property>
  | 	</component>
Server log show multipart component is intalled. 

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

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



More information about the jboss-user mailing list