Changeset a6686cb


Ignore:
Timestamp:
Feb 14, 2011 5:12:12 PM (9 years ago)
Author:
mathiasdm <mathiasdm@…>
Branches:
master
Children:
8141160, e75d0b7
Parents:
581cd72
Message:

Fix headless issue without reboot.

Files:
4 edited

Legend:

Unmodified
Added
Removed
  • apps/desktopgui/src/net/i2p/desktopgui/Main.java

    r581cd72 ra6686cb  
    5757    public static void beginStartup(String[] args) {
    5858        try {
    59             String headless = RouterManager.getRouterContext().getProperty("router.isHeadless");
     59            String headless = System.getProperty("java.awt.headless");
    6060            boolean isHeadless = Boolean.parseBoolean(headless);
    6161            if(isHeadless) {
     62                log.warn("Headless environment: not starting desktopgui!");
    6263                return;
    6364            }
  • apps/routerconsole/java/src/net/i2p/router/web/RouterConsoleRunner.java

    r581cd72 ra6686cb  
    5656    private static final String USAGE = "Bad RouterConsoleRunner arguments, check clientApp.0.args in your clients.config file! " +
    5757                                        "Usage: [[port host[,host]] [-s sslPort [host[,host]]] [webAppsDir]]";
    58     private static final String PROP_HEADLESS = "router.isHeadless";
    5958   
    6059    static {
     
    6261       
    6362        //Check if we are in a headless environment, set properties accordingly
    64         List<RouterContext> contexts = RouterContext.listContexts();
    65         if(contexts != null && contexts.size() > 0) {
    66                 RouterContext context = contexts.get(0);
    67                 String headless = context.getProperty(PROP_HEADLESS);
    68                 if(headless == null) {
    69                         /*
    70                          * Let's check if we are in a headless environment.
    71                          * We do this by setting headless to false
    72                          * and trying to get the graphics environment.
    73                          * If this fails, we should be headless.
    74                          */
    75                         System.setProperty("java.awt.headless", "false");
    76                         try {
    77                         GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
    78                         ge.isHeadlessInstance();
    79                         context.setProperty(PROP_HEADLESS, "false");
    80                         }
    81                         catch(InternalError e) {
    82                                 context.setProperty(PROP_HEADLESS, "true");
    83                         }
    84                         context.router().setConfigSetting(PROP_HEADLESS, context.getProperty(PROP_HEADLESS));
    85                 context.router().saveConfig();
    86                 context.router().shutdown(0);
    87                 }
    88                 boolean isHeadless = true;
    89                 try {
    90                         isHeadless = Boolean.parseBoolean(headless);
    91                 }
    92                 catch(Exception e) {
    93                         //Incorrect setting, let's choose headless for safety
    94                         isHeadless = true;
    95                 }
    96                 if(isHeadless) {
    97                         System.setProperty("java.awt.headless", "true");
    98                 }
    99                 else {
    100                         System.setProperty("java.awt.headless", "false");
    101                 }
     63        String headless = "java.awt.headless";
     64        if(GraphicsEnvironment.isHeadless()) {
     65                System.setProperty(headless, "true");
     66        }
     67        else {
     68                System.setProperty(headless, "false");
    10269        }
    10370    }
     
    360327
    361328        try {
    362                 //TODO: move away from routerconsole into a separate application.
    363                 //ApplicationManager?
    364                 VersionComparator v = new VersionComparator();
    365                 if(v.compare(System.getProperty("java.runtime.version"), "1.6") >= 0) {
     329            //TODO: move away from routerconsole into a separate application.
     330            //ApplicationManager?
     331            VersionComparator v = new VersionComparator();
     332            if(v.compare(System.getProperty("java.runtime.version"), "1.6") >= 0) {
    366333                String[] args = new String[0];
    367                 net.i2p.desktopgui.Main.beginStartup(args);     
    368                 }
     334                net.i2p.desktopgui.Main.beginStartup(args);   
     335            }
    369336        } catch (Throwable t) {
    370337            t.printStackTrace();
  • history.txt

    r581cd72 ra6686cb  
     12011-02-14 Mathiasdm
     2    * Fix headless issue without reboot
     3
    142011-02-13 zzz
    25    * Connect Client: Minor NPE fix cleanup
  • router/java/src/net/i2p/router/RouterVersion.java

    r581cd72 ra6686cb  
    1919    public final static String ID = "Monotone";
    2020    public final static String VERSION = CoreVersion.VERSION;
    21     public final static long BUILD = 10;
     21    public final static long BUILD = 11;
    2222
    2323    /** for example "-test" */
Note: See TracChangeset for help on using the changeset viewer.