Dukascopy
 
 
Wiki JStore Search Login

Attention! Read the forum rules carefully before posting a topic.

    Submit JForex API bug reports in this forum only.
    Submit Converter issues in Converter Issues.
    Off topics are strictly forbidden.

Any topics which do not satisfy these rules will be deleted.

JForex3 chart.setFeedDescriptor access control exception
 Post subject: JForex3 chart.setFeedDescriptor access control exception Post rating: 0   New post Posted: Wed 18 Jan, 2017, 10:26 
User avatar

User rating: 0
Joined: Fri 09 Aug, 2013, 11:00
Posts: 4
Location: United KingdomUnited Kingdom
The following strategy changes all charts to the same period. It works fine with JForex2 but generates an access control exception in JForex3.

The strategy:
package jforex;

import java.util.*;

import com.dukascopy.api.*;
import com.dukascopy.api.feed.*;
import com.dukascopy.api.feed.util.*;

public class Strategy implements IStrategy {
   
    @Configurable("Period")
    public Period period = Period.FIFTEEN_MINS;

    private IEngine engine;
    private IConsole console;
    private IHistory history;
    private IContext context;
    private IIndicators indicators;
    private IUserInterface userInterface;
   
    public void onStart(IContext context) throws JFException {
        this.engine = context.getEngine();
        this.console = context.getConsole();
        this.history = context.getHistory();
        this.context = context;
        this.indicators = context.getIndicators();
        this.userInterface = context.getUserInterface();
        Set<IChart> charts = context.getCharts();
        for (IChart chart : charts) {
            IFeedDescriptor feedDescriptor;
            if (period.equals(Period.TICK)) {
                feedDescriptor = new TicksFeedDescriptor(chart.getInstrument());
            } else {
                feedDescriptor = new TimePeriodAggregationFeedDescriptor(chart.getInstrument(), period, chart.getFeedDescriptor().getOfferSide());
            }
            chart.setFeedDescriptor(feedDescriptor);
        }
        context.stop();
    }

    public void onAccount(IAccount account) throws JFException {
    }

    public void onMessage(IMessage message) throws JFException {
    }

    public void onStop() throws JFException {
    }

    public void onTick(Instrument instrument, ITick tick) throws JFException {
    }
   
    public void onBar(Instrument instrument, Period period, IBar askBar, IBar bidBar) throws JFException {
    }
}

The exception:
java.security.AccessControlException: access denied ("java.lang.RuntimePermission" "modifyThread")
   at java.security.AccessControlContext.checkPermission(AccessControlContext.java:472)
   at java.security.AccessController.checkPermission(AccessController.java:884)
   at java.lang.SecurityManager.checkPermission(SecurityManager.java:549)
   at com.sun.javaws.security.JavaWebStartSecurity.checkPermission(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor.checkShutdownAccess(ThreadPoolExecutor.java:735)
   at java.util.concurrent.ThreadPoolExecutor.shutdownNow(ThreadPoolExecutor.java:1419)
   at com.dukascopy.charts.dataprovider.indicator.calculator.a.dispose(L:75)
   at com.dukascopy.charts.dataprovider.indicator.a.a.stop(L:1467)
   at com.dukascopy.charts.dataprovider.a.setActive(L:273)
   at com.dukascopy.charts.dataprovider.b.deactivate(L:882)
   at com.dukascopy.charts.dataprovider.b.setActive(L:537)
   at com.dukascopy.charts.dataprovider.e.a.setActive(L:246)
   at com.dukascopy.charts.data.b.deactivate(L:130)
   at com.dukascopy.charts.chartbuilder.bd.deactivate(L:627)
   at com.dukascopy.charts.chartbuilder.bd.b(L:493)
   at com.dukascopy.charts.chartbuilder.bd.f(L:560)
   at com.dukascopy.charts.chartbuilder.c.e(L:1281)
   at com.dukascopy.charts.chartbuilder.c.a(L:1274)
   at com.dukascopy.charts.chartbuilder.l.setFeedDescriptor(L:1403)
   at com.dukascopy.charts.g.b.setFeedDescriptor(L:762)
   at jforex.Strategy.onStart(Strategy.java:36)
   at com.dukascopy.api.impl.execution.s.call(L:27)
   at com.dukascopy.api.impl.execution.s.call(L:13)
   at com.dukascopy.api.impl.connect.at.a(L:127)
   at com.dukascopy.api.impl.connect.cm.call(L:678)
   at com.dukascopy.api.impl.connect.cm.call(L:640)
   at com.dukascopy.api.impl.execution.j.call(L:34)
   at java.util.concurrent.FutureTask.run(FutureTask.java:266)
   at com.dukascopy.api.impl.execution.f$a.f(L:904)
   at com.dukascopy.api.impl.execution.f$a.run(L:926)
   at java.lang.Thread.run(Thread.java:745)


 
 Post subject: Re: JForex3 chart.setFeedDescriptor access control exception Post rating: 0   New post Posted: Wed 25 Jan, 2017, 08:13 
User avatar

User rating:
Joined: Fri 31 Aug, 2007, 09:17
Posts: 6139
This is fixed and will be available in the next release.


 

Jump to:  

  © 1998-2024 Dukascopy® Bank SA
On-line Currency forex trading with Swiss Forex Broker - ECN Forex Brokerage,
Managed Forex Accounts, introducing forex brokers, Currency Forex Data Feed and News
Currency Forex Trading Platform provided on-line by Dukascopy.com