Am 29. Januar 2018 11:23:42 MEZ schrieb Philippe Mouawad 
<[email protected]>:
>Ok for me regarding your solution

Which one exactly? 

>
>On Mon, Jan 29, 2018 at 11:16 AM, Felix Schumacher <
>[email protected]> wrote:
>
>> Am 29.01.2018 10:57, schrieb Felix Schumacher:
>>
>>> Am 29.01.2018 10:34, schrieb Philippe Mouawad:
>>>
>>>> Hi Felix,
>>>> I reckon I didn't test such "complex" setup :-)
>>>>
>>>> Do you think we should support such use case ?
>>>>
>>>
>>> Well, I like to use it :)
>>>
>>> I think it would be enough to check for the
>>> UnsupportedOperationException and switch to local help.
>>>
>>> Or reverse the logic. Check for !USE_LOCAL_HELP and try to
>initialize
>>> the external browser.
>>> Surround that with a catch UOE and log a warning (show a dialog
>about
>>> setting the property).
>>> Return early on success and otherwise fallback to the old logic.
>>>
>>> Something like this:
>>>
>>> if (!USE_LOCAL_HELP) {
>>>   try {
>>>     // init external browser
>>>     ...
>>>     return; // successful init
>>>   } catch (UnsupportedOperationException e) {
>>>     log.warn("set help.local=true");
>>>   }
>>> }
>>>
>>> // use local browser
>>> ...
>>> return;
>>>
>>
>> Seems like this will not work. The UOE is caught by OpenLinkAction.
>> If we rethrow the UOE, it will get caught by ActionRouter :( I
>haven't
>> gone further.
>>
>> So to support the exception getting not caught, we would have to
>decide in
>> OpenLinkAction, if this is a call for external help browser and then
>throw
>> a custom exception which we could route through ActionRouter and
>catch in
>> Help.
>>
>> Seems a bit complex. The alternatives are:
>>
>> * set help.local to true as default (revert to old behaviour)
>> * display a warning when the browser doesn't start in OpenLinkAction
>(when
>> opening help, only?)
>>
>> On a slightly different topic:
>> In OpenLinkAction there are a few log errors. The format strings have
>a
>> paramter "{}", but no parameter is given to the log statement. The
>> exception as last parameter does not count.
>> I think we should add "url" to the log statements.
>>
>> Felix
>>
>>
>>
>>>
>>> Felix
>>>
>>>
>>>> Regards
>>>>
>>>> On Mon, Jan 29, 2018 at 10:28 AM, Felix Schumacher <
>>>> [email protected]> wrote:
>>>>
>>>> Hi all,
>>>>>
>>>>> while testing the current trunk I noticed the following exception
>when
>>>>> trying to open help:
>>>>>
>>>>> 2018-01-29 10:20:59,280 ERROR o.a.j.g.a.OpenLinkAction:
>OpenLinkAction:
>>>>> Current platform does not support the Desktop.Action.BROWSE
>actionon {}
>>>>> java.lang.UnsupportedOperationException: The BROWSE action is not
>>>>> supported on the current platform!
>>>>>         at java.awt.Desktop.checkActionSupport(Desktop.java:225)
>>>>> ~[?:1.8.0_162]
>>>>>         at java.awt.Desktop.browse(Desktop.java:381)
>~[?:1.8.0_162]
>>>>>         at
>org.apache.jmeter.gui.action.OpenLinkAction.doAction(OpenLin
>>>>> kAction.java:71)
>>>>> ~[ApacheJMeter_core.jar:4.0-SNAPSHOT.20180129]
>>>>>         at
>org.apache.jmeter.gui.action.ActionRouter.performAction(Acti
>>>>> onRouter.java:88)
>>>>> ~[ApacheJMeter_core.jar:4.0-SNAPSHOT.20180129]
>>>>>         at
>org.apache.jmeter.gui.action.ActionRouter.doActionNow(Action
>>>>> Router.java:125)
>>>>> ~[ApacheJMeter_core.jar:4.0-SNAPSHOT.20180129]
>>>>>         at
>org.apache.jmeter.gui.action.Help.doAction(Help.java:115)
>>>>> ~[ApacheJMeter_core.jar:4.0-SNAPSHOT.20180129]
>>>>>         at
>org.apache.jmeter.gui.action.ActionRouter.performAction(Acti
>>>>> onRouter.java:88)
>>>>> ~[ApacheJMeter_core.jar:4.0-SNAPSHOT.20180129]
>>>>>         at
>org.apache.jmeter.gui.action.ActionRouter.lambda$actionPerfo
>>>>> rmed$0(ActionRouter.java:70)
>>>>> ~[ApacheJMeter_core.jar:4.0-SNAPSHOT.20180129]
>>>>>         at
>java.awt.event.InvocationEvent.dispatch(InvocationEvent.
>>>>> java:311)
>>>>> [?:1.8.0_162]
>>>>>         at
>java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
>>>>> [?:1.8.0_162]
>>>>>         at java.awt.EventQueue.access$500(EventQueue.java:97)
>>>>> [?:1.8.0_162]
>>>>>         at java.awt.EventQueue$3.run(EventQueue.java:709)
>[?:1.8.0_162]
>>>>>         at java.awt.EventQueue$3.run(EventQueue.java:703)
>[?:1.8.0_162]
>>>>>         at java.security.AccessController.doPrivileged(Native
>Method)
>>>>> [?:1.8.0_162]
>>>>>         at
>java.security.ProtectionDomain$JavaSecurityAccessImpl.doInte
>>>>> rsectionPrivilege(ProtectionDomain.java:80) [?:1.8.0_162]
>>>>>         at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
>>>>> [?:1.8.0_162]
>>>>>         at
>java.awt.EventDispatchThread.pumpOneEventForFilters(EventDis
>>>>> patchThread.java:205)
>>>>> [?:1.8.0_162]
>>>>>         at
>java.awt.EventDispatchThread.pumpEventsForFilter(EventDispat
>>>>> chThread.java:116)
>>>>> [?:1.8.0_162]
>>>>>         at
>java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDis
>>>>> patchThread.java:105)
>>>>> [?:1.8.0_162]
>>>>>         at
>java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.
>>>>> java:101)
>>>>> [?:1.8.0_162]
>>>>>         at
>java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.
>>>>> java:93)
>>>>> [?:1.8.0_162]
>>>>>         at
>java.awt.EventDispatchThread.run(EventDispatchThread.java:82
>>>>> )
>>>>> [?:1.8.0_162]
>>>>>
>>>>> Setting help.local=true works (using the built-in help browser).
>>>>>
>>>>> The system is a Leap 42.3 used remotely with a X11 forwarding ssh
>>>>> session.
>>>>>
>>>>> Regards,
>>>>>  Felix
>>>>>
>>>>>

Reply via email to