当我尝试从我的jsf页面请求大数据(图像6Mo base64编码)到我的支持bean时,我遇到了问题
<h:inputHidden id="myInputHidden" value="#{myBean.base64DataImage}" /> <script> document.getElementById("myForm:myInputHidden").value = data.value; </script>
2.当我的base64字符串大于~2300000个字符时,我的动作监听器不会被执行
<p:commandLink id="myLink" actionListener="#{myBean.myActionListener}" process="@this,myInputHidden" update="@form" /> <script> document.getElementById("myForm:myLink").click(); </script>
N.B:如果我放了一个小图像,我的动作监听器被正确执行,我可以在我的支持bean中使用我的图像
有人可以帮我告诉我请求的表单数据的限制是什么,以及是否有办法使其更大。
看起来你必须调整max-post-size
的HTTP Connector属性:
POST的最大大小(以字节为单位)将由容器FORM URL参数解析处理。可以通过将此属性设置为小于或等于0的值来禁用该限制。如果未指定,则此属性设置为2097152(2兆字节)。
默认的2,097,152字节限制解释了为什么您的2,300,000个字符串不能成功发布的原因。
应该还有错误写入服务器日志。