[ 
https://issues.apache.org/jira/browse/MYFACES-4590?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17698102#comment-17698102
 ] 

Melloware commented on MYFACES-4590:
------------------------------------

So this line is return NULL instead of the default MAX VALUE in MyFaces.
{code:java}
public Long getSizeLimit() {
        return (Long) getStateHelper().eval(PropertyKeys.sizeLimit, 
Long.MAX_VALUE);
} {code}

> NullPointerException when PrimeFaces FileUpload used in composite component
> ---------------------------------------------------------------------------
>
>                 Key: MYFACES-4590
>                 URL: https://issues.apache.org/jira/browse/MYFACES-4590
>             Project: MyFaces Core
>          Issue Type: Bug
>          Components: General
>    Affects Versions: 4.0.0, 4.0.1
>         Environment: primefaces-test project, jakarta branch 
>            Reporter: Manuel K
>            Assignee: Melloware
>            Priority: Major
>
> Using the following composite component, an exception occurs upon rendering 
> only on MyFaces but not on Mojarra. Please let me know if this is a 
> PrimeFaces bug instead and I'll open an issue there.
> {code:java}
> <?xml version="1.0" encoding="UTF-8"?>
> <ui:component xmlns="http://www.w3.org/1999/xhtml";
>               xmlns:cc="http://xmlns.jcp.org/jsf/composite";
>               xmlns:ui="http://xmlns.jcp.org/jsf/facelets";
>               xmlns:p="http://primefaces.org/ui";
>               xmlns:h="http://xmlns.jcp.org/jsf/html";>
>     <cc:interface>
>         <cc:attribute name="fileUploadListener"
>                       required="true"
>                       method-signature="void 
> listener(org.primefaces.event.FileUploadEvent)"/>
>         <cc:attribute name="update"
>                       type="java.lang.String"/>
>         <cc:attribute name="allowTypes"
>                       default="/.*/"/>
>         <cc:attribute name="accept"/>
>         <cc:attribute name="fileLimit"
>                       default="1"/>
>         <cc:attribute name="sizeLimit"/>
>         <cc:attribute name="multiple"
>                       default="false"/>
>     </cc:interface>
>     <cc:implementation>
>         <div id="#{cc.clientId}">
>             <p:fileUpload id="fileUpload"
>                           listener="#{cc.attrs.fileUploadListener}"
>                           update="#{cc.attrs.update}"
>                           fileLimit="#{cc.attrs.fileLimit}"
>                           sizeLimit="#{cc.attrs.sizeLimit}"
>                           auto="true"
>                           accept="#{cc.attrs.accept}"
>                           sequential="true"
>                           allowTypes="#{cc.attrs.allowTypes}"
>                           multiple="#{cc.attrs.multiple}"/>
>         </div>
>     </cc:implementation>
> </ui:component> {code}
> The exception:
> {code:java}
> Caused by: java.lang.NullPointerException: Cannot invoke 
> "java.lang.Long.longValue()" because the return value of 
> "org.primefaces.component.fileupload.FileUpload.getSizeLimit()" is null
>     at org.primefaces.component.fileupload.FileUploadRenderer.encodeScript 
> (FileUploadRenderer.java:127)
>     at org.primefaces.component.fileupload.FileUploadRenderer.encodeEnd 
> (FileUploadRenderer.java:79)
>     at jakarta.faces.component.UIComponentBase.encodeEnd 
> (UIComponentBase.java:634) {code}
> You can find my reproducer here: 
> [https://github.com/mkomko/primefaces-test/tree/file-upload-npe]
> Thank you very much in advance as always :).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to