hi, 


   i  followed every thing mentioned in  your solution below for input file
upload. 


But  i am getting error valuebinding Impl i.e can not set the value for
expression "#{mybean.myfile} to  a new value of type
org.apache.myfaces.custom.fileupload.UploadedFileDefaultMemoryImpl . 

and giving exception 

javax.servlet.jsp.el.ELException: Attempt to coerce a value of type
"org.apache. 
myfaces.custom.fileupload.UploadedFileDefaultMemoryImpl" to type
"org.apache.myf 
aces.custom.fileupload.UploadedFile" 



this is my problem please help me as soon as possible through mail 

my address   [EMAIL PROTECTED]






JBuilderDoug wrote:I finally figured this out, so  I'm going to put an
entire example in this post.  I'm using Tomahawk 1.1.3 with RI JSF created
in Borland's JBuilder.  I've created a .war file from borland and deployed
it under Tomcat 5.5 so it should be Borland independent.  The problems I was
having previously were in trying to deploy Tomahawk on a old JSF project.
I'm pretty sure I'm safe in saying you must use JSP 2.0 and Servlet 2.4 as a
minimum. 

inputFileUpload/Tomahawk specific elements are bold/italic 

In the backing bean WelcomeBean.java, I only read the uploaded file into a
byte [].  In my personal application, I simply insert the byte [] into an
Oracle BLOB.  You may need to write it to a file.  I'll assume you know how
to do that. 

I think that's pretty much it.  If you have any questions please respond to
this post.  I'll receive an e-mail and try to help.  If you want to know how
to implement Tomahawk 1.1.3 into Borland's JBuilder, I can help with that
also I believe. 

Doug 

Required libraries for this minimal project 

commons-beanutils.jar 
commons-collections.jar 
commons-digester.jar 
commons-fileupload.jar 
commons-logging.jar 
jsf-api.jar 
jsf-impl.jar 
jstl.jar 
standard.jar 
tomahawk-1.1.3.jar 

index.jsp 

<html> 
<html> 
<head> 
<title>index</title> 
</head> 
<body bgcolor="#ffffc0"> 
<h1></h1> 
<jsp:forward page="Welcome.faces"></jsp:forward> 
</body> 
</html> 

Welcome.jsp 

<[EMAIL PROTECTED] uri="http://java.sun.com/jsf/html"; prefix="h"%> 
<[EMAIL PROTECTED] uri="http://java.sun.com/jsf/core"; prefix="f"%> 
<%@ taglib uri="http://myfaces.apache.org/tomahawk"; prefix="t" %> 
<html> 
<head> 
<title>index</title> 
</head> 
<body bgcolor="#ffffff"> 
<h1>GoHurst Welcome</h1> 
<f:view> 
  <h:form id="welcomeForm" enctype="multipart/form-data"> 
    <t:panelGrid columns="3"> 
    <t:inputFileUpload id="uFile" value="#{WelcomeBean.theFile}"
storage="file" required="true" /> 
    </t:panelGrid> 
    <h:panelGrid columns="3"> 
    <h:commandButton id="onlyButton" action="#{WelcomeBean.fmWelcome}"
value="Click here to Upload"/> 
    </h:panelGrid> 
  </h:form> 
</f:view> 
</body> 
</html> 

WelcomeBean.java 

package tomahawkfileupload; 

import java.io.File; 
import java.io.InputStream; 
import javax.servlet.http.HttpSession; 
import javax.faces.context.FacesContext; 
import org.apache.myfaces.custom.fileupload.UploadedFile; 

public class WelcomeBean 
{ 
    private UploadedFile theFile; 

    public UploadedFile getTheFile() { 
      return theFile; 
    } 

    public void setTheFile (UploadedFile theFile) { 
      this.theFile = theFile; 
    } 

    public String fmWelcome() 
    { 
        FacesContext context = FacesContext.getCurrentInstance(); 
        HttpSession session = (HttpSession)
context.getExternalContext().getSession(false); 
        try { 
          InputStream stream = theFile.getInputStream(); 
          long fSize = theFile.getSize(); 
          byte [] buffer = new byte[(int)fSize]; 
          stream.read(buffer, 0, (int)fSize); 
          stream.close(); 
        } catch (Exception ioe) { 
           ioe.printStackTrace(); 
        } 
        return "success"; 
    } 
} 


web.xml 

<?xml version="1.0" encoding="UTF-8"?> 
<web-app xmlns="http://java.sun.com/xml/ns/j2ee";
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"; version="2.4"> 
  <display-name>TomaModule</display-name> 
  <servlet> 
    <servlet-name>Faces Servlet</servlet-name> 
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class> 
    <load-on-startup>1</load-on-startup> 
  </servlet> 
  <servlet-mapping> 
    <servlet-name>Faces Servlet</servlet-name> 
    <url-pattern>*.faces</url-pattern> 
  </servlet-mapping> 
  <filter> 
    <filter-name>MyFacesExtensionsFilter</filter-name> 
   
<filter-class>org.apache.myfaces.webapp.filter.ExtensionsFilter</filter-class> 
    <init-param> 
      <param-name>maxFileSize</param-name> 
      <param-value>20m</param-value> 
    </init-param> 
  </filter> 
  <filter-mapping> 
    <filter-name>MyFacesExtensionsFilter</filter-name> 
    <servlet-name>Faces Servlet</servlet-name> 
  </filter-mapping> 
  <filter-mapping> 
    <filter-name>MyFacesExtensionsFilter</filter-name> 
    <url-pattern>/faces/myFacesExtensionResource/*</url-pattern> 
  </filter-mapping> 
</web-app> 


faces-config.xml 

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer
Faces Config 1.1//EN" "http://java.sun.com/dtd/web-facesconfig_1_1.dtd";> 
<faces-config xmlns="http://java.sun.com/JSF/Configuration";> 
  <managed-bean> 
    <managed-bean-name>WelcomeBean</managed-bean-name> 
    <managed-bean-class>tomahawkfileupload.WelcomeBean</managed-bean-class> 
    <managed-bean-scope>session</managed-bean-scope> 
  </managed-bean> 

  <navigation-rule> 
    <from-view-id>*</from-view-id> 
    <navigation-case> 
      <from-action>#{WelcomeBean.fmWelcome}</from-action> 
      <from-outcome>success</from-outcome> 
      <to-view-id>/Welcome.jsp</to-view-id> 
    </navigation-case> 
    <navigation-case> 
      <from-action>#{WelcomeBean.fmBicycle}</from-action> 
      <from-outcome>bypass</from-outcome> 
      <to-view-id>/Welcome.jsp</to-view-id> 
    </navigation-case> 
  </navigation-rule> 
</faces-config> 
-- 
View this message in context: 
http://www.nabble.com/input-fileupload-in-jsf-giving-error-tf2643067.html#a7377970
Sent from the MyFaces - Users mailing list archive at Nabble.com.

Reply via email to