Hello All,

Here are some details

by default Tomcat has limitation of 2Mb for post data [1] (maxPostSize)
You can change this in OM 4.0.x by changing conf/jee-container.xml
You need to add
             <property name="connectorProperties">
                          <map>
                                       <entry key="maxPostSize"
value="40000000"/>
                          </map>
             </property>
to '<bean name="httpConnector" .........>'

This should fix Huge PDF download


According to PNG download: it can be done "by click" BUT
It will only 100% work if it will be dobe "via server" i.e.
1) image will be prepared in client's browser
2) uploaded to server
3) then immediately downloaded
This "server round trip" might be very expensive

You can see how proposed pop-up dialog will look like [2]
I can update demo-next with working prototype so you can try it :)


[1] https://tomcat.apache.org/tomcat-9.0-doc/config/http.html
[2] https://www.dropbox.com/s/r3pbftfvbp1fdj7/DownloadAsPng.png?dl=0


On Fri, 22 Feb 2019 at 01:46, Daniel Ascher <aplusad...@aplustutoring.com>
wrote:

> Okay. Thanks for letting me know. Dan
>
> On Thu, Feb 21, 2019 at 11:12 AM Maxim Solodovnik <solomax...@gmail.com>
> wrote:
>
>> The quality will not suffer
>> The image might be huge, but will be displayed as preview to consume
>> reasonable area on the screen
>>
>> The reason to display this dialog is: somehow "just save" is silently
>> fail in browser .....
>>
>> On Thu, Feb 21, 2019, 22:58 Daniel Ascher <aplusad...@aplustutoring.com>
>> wrote:
>>
>>> I think this means that the PNG will be a relatively lower quality image
>>> than the PDF version. Is that correct?
>>>
>>> Also, is it possible to have a "Save" or "Download" button on the
>>> preview box, rather than telling the user to right-click?
>>>
>>> Thanks. Dan
>>>
>>> On Thu, Feb 21, 2019 at 9:07 AM Maxim Solodovnik <solomax...@gmail.com>
>>> wrote:
>>>
>>>> Thanks :))
>>>>
>>>> Prepared image will have constant size something like 320x240, sort of
>>>> preview :)
>>>>
>>>> On Thu, Feb 21, 2019, 20:00 Peter Dähn <da...@vcrp.de> wrote:
>>>>
>>>>> ok.. now I got it... sorry for that...
>>>>>
>>>>> The prepared scaled image has the dimension of the current client view
>>>>> or the wb area?
>>>>>
>>>>> PS: much fun on your trip...
>>>>>
>>>>> Am 21.02.19 um 13:12 schrieb Maxim Solodovnik:
>>>>>
>>>>> Hello All,
>>>>>
>>>>> Am currently ooo (doing mountain skiing :)
>>>>> Will try to answer in one email
>>>>>
>>>>> 1 save as pdf works, but for huge pdfs it requires jee*.xml tuning
>>>>>
>>>>> 2 right-click "save as" will not work on white-board.
>>>>> As i wrote in initial email:
>>>>>
>>>>> when "Download as PNG" is clicked
>>>>> 1) image is being prepared on the client
>>>>> 2) small dialog with scaled image and text 'Please right click the
>>>>> image and choose "Save as"' is displayed to the user
>>>>>
>>>>>
>>>>> This is not yet implemented :)
>>>>>
>>>>> On Thu, Feb 21, 2019, 18:48 Peter Dähn <da...@vcrp.de> wrote:
>>>>>
>>>>>> "Save as" of smaller pics on wb also ends up with those empty pics.
>>>>>> But right after draw on it, wb with pic will be saved (doesn't help with
>>>>>> large pics).
>>>>>>
>>>>>> The download in the Files-tab works so far.
>>>>>>
>>>>>>
>>>>>>
>>>>>> But both JPG and original saves a .jpg-file!?
>>>>>>
>>>>>> Greetings Peter
>>>>>>
>>>>>> Am 21.02.19 um 09:19 schrieb Peter Dähn:
>>>>>>
>>>>>> and save as ends up in an empty png... this doesn't work as fix...
>>>>>>
>>>>>>
>>>>>>
>>>>>> Am 21.02.19 um 08:35 schrieb Peter Dähn:
>>>>>>
>>>>>> Hi there,
>>>>>>
>>>>>> Download as pdf doesn't work either...
>>>>>>
>>>>>> This one causes an error...
>>>>>>
>>>>>> ERROR 02-21 08:28:08.199 o.a.o.w.r.w.AbstractWbPanel:70
>>>>>> [0.0-5443-exec-8] - Unexpected error while processing wbAction
>>>>>> java.lang.NullPointerException: Name is null
>>>>>>     at java.base/java.lang.Enum.valueOf(Enum.java:238)
>>>>>>     at
>>>>>> org.apache.openmeetings.web.room.wb.WbAction.valueOf(WbAction.java:21)
>>>>>>     at
>>>>>> org.apache.openmeetings.web.room.wb.AbstractWbPanel$1.respond(AbstractWbPanel.java:65)
>>>>>>     at
>>>>>> org.apache.wicket.ajax.AbstractDefaultAjaxBehavior.onRequest(AbstractDefaultAjaxBehavior.java:598)
>>>>>>     at
>>>>>> org.apache.wicket.core.request.handler.ListenerRequestHandler.internalInvoke(ListenerRequestHandler.java:306)
>>>>>>     at
>>>>>> org.apache.wicket.core.request.handler.ListenerRequestHandler.invoke(ListenerRequestHandler.java:280)
>>>>>>     at
>>>>>> org.apache.wicket.core.request.handler.ListenerRequestHandler.invokeListener(ListenerRequestHandler.java:222)
>>>>>>     at
>>>>>> org.apache.wicket.core.request.handler.ListenerRequestHandler.respond(ListenerRequestHandler.java:208)
>>>>>>     at
>>>>>> org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:914)
>>>>>>     at
>>>>>> org.apache.wicket.request.RequestHandlerExecutor.execute(RequestHandlerExecutor.java:65)
>>>>>>     at
>>>>>> org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:282)
>>>>>>     at
>>>>>> org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:253)
>>>>>>     at
>>>>>> org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:221)
>>>>>>     at
>>>>>> org.apache.wicket.protocol.ws.AbstractUpgradeFilter.processRequestCycle(AbstractUpgradeFilter.java:70)
>>>>>>     at
>>>>>> org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:206)
>>>>>>     at
>>>>>> org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:299)
>>>>>>     at
>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
>>>>>>     at
>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>>>>>>     at
>>>>>> org.red5.logging.LoggerContextFilter.doFilter(LoggerContextFilter.java:84)
>>>>>>     at
>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
>>>>>>     at
>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>>>>>>     at
>>>>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:200)
>>>>>>     at
>>>>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
>>>>>>     at
>>>>>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:607)
>>>>>>     at
>>>>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)
>>>>>>     at
>>>>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
>>>>>>     at
>>>>>> org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:668)
>>>>>>     at
>>>>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
>>>>>>     at
>>>>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
>>>>>>     at
>>>>>> org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408)
>>>>>>     at
>>>>>> org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
>>>>>>     at
>>>>>> org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:834)
>>>>>>     at
>>>>>> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1415)
>>>>>>     at
>>>>>> org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
>>>>>>     at
>>>>>> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
>>>>>>     at
>>>>>> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
>>>>>>     at
>>>>>> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
>>>>>>     at java.base/java.lang.Thread.run(Thread.java:834)
>>>>>>
>>>>>>
>>>>>> In general I think simply point to the "Save as" dialog isn't very
>>>>>> handy.
>>>>>>
>>>>>> Greetings Peter
>>>>>>
>>>>>> Am 21.02.19 um 06:24 schrieb Stefan Kühl:
>>>>>>
>>>>>> Morning ;-)
>>>>>>
>>>>>> Great, that should work fine.
>>>>>>
>>>>>> Greetz
>>>>>>
>>>>>> Stefan
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> Am 21.02.2019 05:31, schrieb Maxim Solodovnik:
>>>>>>
>>>>>> Hello All,
>>>>>>
>>>>>> Recently Daniel Asher find out download whiteboard as png is not
>>>>>> working for huge white board
>>>>>> (10MB is huge :)) [1 
>>>>>> <https://issues.apache.org/jira/browse/OPENMEETINGS-2018>]
>>>>>>
>>>>>> This seems to be sort of browser limitation, there is no error or
>>>>>> whatever, download just silently fail for big white boards
>>>>>>
>>>>>> What I propose is to change the behavior of 'Download as PNG' as follows:
>>>>>> when "Download as PNG" is clicked
>>>>>> 1) image is being prepared on the client
>>>>>> 2) small dialog with scaled image and text 'Please right click the
>>>>>> image and choose "Save as"' is displayed to the user
>>>>>>
>>>>>> WDYT?
>>>>>>
>>>>>> [1] https://issues.apache.org/jira/browse/OPENMEETINGS-2018
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>
>>> --
>>> Daniel Ascher, M.Ed.
>>> President
>>> A+ Test Prep and Tutoring
>>> "Creating Bright Futures"
>>>
>>> 505 York Road, Suite 6
>>> Jenkintown, PA 19046
>>> Office: 215.886.9188
>>> Direct: 267.242.9640
>>> Click here to schedule a phone call with me.
>>> <https://www.aplustutoring.com/meetings/aplusadmin/phone-call>
>>> Sign Up for A+ News and Test Prep Tips!
>>> <https://www.aplustutoring.com/educational-blog-articles-subscription>
>>> <http://aplustutoring.com>
>>>
>>
>
> --
> Daniel Ascher, M.Ed.
> President
> A+ Test Prep and Tutoring
> "Creating Bright Futures"
>
> 505 York Road, Suite 6
> Jenkintown, PA 19046
> Office: 215.886.9188
> Direct: 267.242.9640
> Click here to schedule a phone call with me.
> <https://www.aplustutoring.com/meetings/aplusadmin/phone-call>
> Sign Up for A+ News and Test Prep Tips!
> <https://www.aplustutoring.com/educational-blog-articles-subscription>
> <http://aplustutoring.com>
>


-- 
WBR
Maxim aka solomax

Reply via email to