Main Region

Fileupload Filesize
6 answers | 3129 views

DE
Oct 27, 2014 09:06 +00:00

Hello,

I have a problem with "FOEX Multiple File Upload". When I upload a file which is bigger than 6mb (not exactly 6mb, but somewhere near it), the upload fails.
I've tried uploading different files in different Browsers but it doesn't work. APEX File Upload works. I also changed the "File Size Limit" to 20480kb but still no changes.

Thanks in advance

Dominik

12 comments

CH
Christian86 Oct 27, 2014 09:40 +00:00 

Hi

we use PL/SQL Gateway. I can´t find these two directories. They should be in the Database Software directory, am I right?

Christian

MN
Matt Nolan Oct 27, 2014 09:45 +00:00 

Yes, it is in the dads.conf or plsql.conf config file under the software installation i.e. $ORACLE_HOME

http://www.oracleq.com/oracle-database/oracle-apex-error-on-page-too-many-arguments-passed-in/

http://www.jk-consult.nl/tag/plsqlmaxparameters/

CH
Christian86 Oct 27, 2014 09:53 +00:00 

Problem is that i can´t find any Apache oder ohs directory.

MN
Matt Nolan Oct 27, 2014 09:55 +00:00 

I guess you're going to have to check with the sysadmins/dbas or whoever installed/setup your environment.

MN
Matt Nolan Oct 27, 2014 10:26 +00:00 

I assumed you were referring to modplsql.

The embedded PLSQL Gateway is not meant for production, if you are using this we strongly advise against it! You should be using the APEX Listener like the majority of companies who use and deploy APEX.

That said to increase the value for the embedded PLSQL Gateway you can issue:

dbms_epg.set_global_attribute(‘max-parameters’, ‘5000’);

Please make sure you spend some time researching Oracle specific settings to understand them.

MN
Matt Nolan Oct 27, 2014 10:32 +00:00 

If you also read the documentation about the multiple file upload plugin you will find that it uses the HTML5 File API and AJAX to upload files, whereas APEX does not it uses a traditional method. Therefore when stating APEX fileuploads work just fine well that's because it uses a different method.

Different webservers impose different set limits on accepting large POSTs from browsers and separately have restrictions on the size allowed for the uploading of files. Hence why there is a difference with the allowed files sizes between upload methods.

CH
Christian86 Oct 27, 2014 10:33 +00:00 

Thanks, now it works. We will think about APEX Listener.

MN
Matt Nolan Jan 22, 2015 14:16 +00:00 

Please refer to the documentation of Web Logic for the correct version you installed, as we do not use this type of web server.

e.g. something like

http://docs.oracle.com/cd/E13222_01/wls/docs81/ConsoleHelp/domain_server_protocols_http.html

MN
Matt Nolan Jan 23, 2015 06:09 +00:00 

Check the web server logs and investigate. Also have your browser developer tols open and check the ajax responses for the file uploads.

MN
Matt Nolan Jan 30, 2015 07:41 +00:00 

I previously stated before the multiple file upload uses the HTML5 API which is different from a standard APEX file submit. It POSTs the file in a base64 encoded array.

What are the messages from the web server log and the AJAX response in firebug/developer tools?

MN
Matt Nolan Jan 30, 2015 14:48 +00:00 

That error looks like you will need to increase your Java heap size e.g. -XX:MaxPermSize=1024m

CH
Christian86 Feb 2, 2015 06:25 +00:00 

I´ll try, thank you very much for your great help. This forum is really great!

MN
Oct 27, 2014 09:25 +00:00

You need to increase the maximum allowed file size on your server:

For modplsql the default the setting for PlsqlMaxParameters is 2000 which equates to about a 5.75M file. To increase the allowed file size modify your DAD configuration in the $ORALCE_HOME/ohs/modplsql/conf/dads.conf file or $ORALCE_HOME/Apache/modplsql/conf/dads.conf file and set PlsqlMaxParameters to a higher value.

For the APEX listener you need to increase "maxPostSize" on your web server. For Glassfish the default value is 2097152 bytes. To in crease it on glassfish you can find it under "Network Config"->"Network Listeners"->"http-listenerX"

alt text

0 comments

CH
Oct 27, 2014 10:21 +00:00

Hi Matt.

I am the DBA. We use Standardedition one and APEX/Foex uses the embedded plsql gateway. We can´t find any Apache or ohs directory. With Standard APEX Fileupload it works fine.

Christian

0 comments

CH
Jan 22, 2015 13:33 +00:00

Hi Matt

now we use Weblogic instead of embedded PLSQL Gateway. Where do I find the parameter here for max. filesize? Thank you in advance

Christian

0 comments

CH
Jan 23, 2015 05:52 +00:00

we have set maxpostsize to unlimited but the upload still fails.

0 comments

CH
Jan 30, 2015 07:34 +00:00

The error only occurs when I use the file upload from FOEX. With Standard File Upload from APEX, it works.

0 comments

CH
Jan 30, 2015 09:05 +00:00

I found the following Error:

[2015-01-30T09:42:59.068+01:00] [WLS_FORMS] [ERROR] [] [] [tid: [ACTIVE].ExecuteThread: '16' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: <anonymous>] [ecid: 08547c8bfe1f0116:-1f7cae7b:14b292c4277:-8000-000000000014b5ab,0] [APP: apex] Java heap space[[ java.lang.OutOfMemoryError: Java heap space at oracle.jdbc.driver.OraclePreparedStatement.processPlsqlIndexTabBinds(OraclePreparedStatement.java:2500) at oracle.jdbc.driver.OraclePreparedStatement.setupBindBuffers(OraclePreparedStatement.java:3118) at oracle.jdbc.driver.OraclePreparedStatement.processCompletedBindRow(OraclePreparedStatement.java:2377) at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3607) at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:3713) at oracle.jdbc.driver.OracleCallableStatement.execute(OracleCallableStatement.java:4755) at oracle.jdbc.driver.OraclePreparedStatementWrapper.execute(OraclePreparedStatementWrapper.java:1378) at sun.reflect.GeneratedMethodAccessor433.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at oracle.ucp.jdbc.proxy.StatementProxyFactory.invoke(StatementProxyFactory.java:230) at oracle.ucp.jdbc.proxy.PreparedStatementProxyFactory.invoke(PreparedStatementProxyFactory.java:124) at oracle.ucp.jdbc.proxy.CallableStatementProxyFactory.invoke(CallableStatementProxyFactory.java:101) at $Proxy145.execute(Unknown Source) at oracle.dbtools.apex.OWA.execute(OWA.java:145) at oracle.dbtools.apex.ModApex.handleRequest(ModApex.java:201) at oracle.dbtools.apex.ModApex.doPost(ModApex.java:152) at oracle.dbtools.apex.ModApex.service(ModApex.java:303) at oracle.dbtools.rt.web.HttpEndpointBase.modApex(HttpEndpointBase.java:350) at oracle.dbtools.rt.web.HttpEndpointBase.service(HttpEndpointBase.java:132) at javax.servlet.http.HttpServlet.service(HttpServlet.java:820) at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227) at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125) at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300) at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:111) at java.security.AccessController.doPrivileged(Native Method) at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313) at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413) at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:94) at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:161)

]]

0 comments

You must log in or sign up to post questions and answers.