Java ValueChangeListener中所做的更改没有反映在其他地方

Java ValueChangeListener中所做的更改没有反映在其他地方,java,file-upload,oracle-adf,valuechangelistener,Java,File Upload,Oracle Adf,Valuechangelistener,摘要: 在JSPX页面中有一个输入文件主管,用户可以在其中选择要上载的文件。用户将按下保存按钮将文件存储在数据库中 工作流程: 当用户选择要上载的文件时,将调用valueChangeListener 在valueChangeListener中,我将文件存储到uplodeFile类型的局部变量中。我可以从valueChangeListener中的该变量访问所有文件属性;也就是说,我可以访问文件名、大小,。。。在valueChangeListener中形成局部变量 当用户按下Save按钮时,将调用c

摘要:

JSPX
页面中有一个
输入文件
主管,用户可以在其中选择要上载的文件。用户将按下
保存
按钮将文件存储在数据库中

工作流程:

  • 当用户选择要上载的文件时,将调用
    valueChangeListener

  • valueChangeListener
    中,我将文件存储到
    uplodeFile
    类型的局部变量中。我可以从
    valueChangeListener
    中的该变量访问所有文件属性;也就是说,我可以访问文件名、大小,。。。在
    valueChangeListener
    中形成局部变量

  • 当用户按下
    Save
    按钮时,将调用
    commit
    更改的方法

  • commit
    方法中,我从保存文件数据的局部变量获取文件数据

  • 问题是:

    这个应该存储文件数据的局部变量总是
    NULL
    。我不知道为什么这个变量不包含文件数据,尽管我在
    valueChangeListener
    中设置了它的值

    注意:

    我试图将
    输入文件
    绑定到一个局部变量,它再次给了我相同的结果
    NULL


    我使用的是ADF技术JDeveloper 11.1.2.3

    您必须在值更改侦听器中处理数据,因为它仅在请求期间存在。请求后,文件数据将被删除。

    不知道为什么否决投票。这个问题很清楚,格式很好,并且已经得到了像Timo Hahn这样的专家的回答