Bonjour a tous,

Voila, j'ai repris l'exemple telecharger sur le site...
Voila les sources:
Bean:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
 
import java.io.IOException;
 
import org.apache.myfaces.custom.fileupload.UploadedFile;
 
import javax.faces.context.FacesContext;
 
/**
 * @author Manfred Geiler (latest modification by $Author: grantsmith $)
 * @version $Revision: 472610 $ $Date: 2006-11-08 14:46:34 -0500 (Wed, 08 Nov 2006) $
 */
public class FileUploadForm
{
    private UploadedFile _upFile;
    private String _name = "";
 
    public UploadedFile getUpFile()
    {
        return _upFile;
    }
 
    public void setUpFile(UploadedFile upFile)
    {
        _upFile = upFile;
    }
 
    public String getName()
    {
        return _name;
    }
 
    public void setName(String name)
    {
        _name = name;
    }
 
    public String upload() throws IOException
    {
        	FacesContext facesContext = FacesContext.getCurrentInstance();
            facesContext.getExternalContext().getApplicationMap().put("fileupload_bytes", _upFile.getBytes());
            facesContext.getExternalContext().getApplicationMap().put("fileupload_type", _upFile.getContentType());
            facesContext.getExternalContext().getApplicationMap().put("fileupload_name", _upFile.getName());
    	return "ok";
    }
 
    public boolean isUploaded()
    {
        FacesContext facesContext = FacesContext.getCurrentInstance();
        return facesContext.getExternalContext().getApplicationMap().get("fileupload_bytes")!=null;
    }
 
}
la page.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
	xmlns:t="http://myfaces.apache.org/tomahawk"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	>
	<body>
	<f:view>
   <h:form id="form1">  		
            <h:outputText value=""/>
            <h:outputText value="Fichier"/>
            <t:inputFileUpload id="fileupload"
                               accept="image/*"
                               value="#{fileUploadForm.upFile}"
                               storage="file"
                               styleClass="fileUploadInput"
                               required="true"
                               maxlength="200000"/>
            <h:message for="fileupload" showDetail="true" />
            <f:verbatim><br/></f:verbatim>
            <h:outputText value="Name"/>
            <h:inputText value="#{fileUploadForm.name}"/>
            <h:commandButton value="envoie" action="#{fileUploadForm.upload}" />
 
    </h:form>
   </f:view>  					
	</body>
</html>
resultat.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
 
Error calling action method of component with id form1:_id9
Caused by:
java.lang.NullPointerException - /envoie.jsp @25,81 action="#{fileUploadForm.upload}": java.lang.NullPointerException
 
javax.faces.FacesException: Error calling action method of component with id form1:_id9
	at org.apache.myfaces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:72)
	at javax.faces.component.UICommand.broadcast(UICommand.java:141)
	at javax.faces.component.UIViewRoot._broadcastForPhase(UIViewRoot.java:115)
	at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:191)
	at org.apache.myfaces.lifecycle.InvokeApplicationExecutor.execute(InvokeApplicationExecutor.java:32)
	at org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:105)
	at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:80)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:143)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:301)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
	at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:857)
	at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:565)
	at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1509)
	at java.lang.Thread.run(Unknown Source)
Caused by: javax.faces.el.EvaluationException: /envoie.jsp @25,81 action="#{fileUploadForm.upload}": java.lang.NullPointerException
	at com.sun.facelets.el.LegacyMethodBinding.invoke(LegacyMethodBinding.java:73)
	at org.apache.myfaces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:61)
	... 22 more
Caused by: java.lang.NullPointerException
	at util.dataObjet.user.FileUploadForm.upload(FileUploadForm.java:41)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at com.sun.el.parser.AstValue.invoke(Unknown Source)
	at com.sun.el.MethodExpressionImpl.invoke(Unknown Source)
	at com.sun.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:68)
	at com.sun.facelets.el.LegacyMethodBinding.invoke(LegacyMethodBinding.java:69)
	... 23 more
En faite, si j'ai bien compris l'objet upFile est null alors que _name est bien mise a jour....
Je ne trouve pas de piste... surtout que dans l'exemple ça fonctionne.

Merci d'avance.