00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 package org.openmobileis.embedded.webserver;
00031
00032 import java.io.IOException;
00033 import java.util.Properties;
00034
00035 import org.openmobileis.common.context.ApplicationContext;
00036 import org.openmobileis.common.context.ApplicationContextManager;
00037 import org.openmobileis.common.context.Plateform;
00038 import org.openmobileis.common.util.log.LogManager;
00039 import org.openmobileis.embedded.util.SystemAPI;
00040 import org.openmobileis.embedded.webserver.WebServer;
00041
00042 public final class StartWebServer {
00043
00044 public static void main(String[] args) {
00045
00046 System.out.println("Starting Open Mobile IS server version 1.0");
00047 System.out.println("User.dir : " + System.getProperty("user.dir"));
00048 String buildversion = StartWebServer.class.getPackage().getImplementationVersion();
00049 System.out.println("Open Mobile IS Build Version 1.0 : " + buildversion);
00050 ApplicationContext appContext = ApplicationContextManager.getManager().getApplicationContext();
00051 appContext.setOpenMISFWKVersion(buildversion);
00052
00053
00054
00055
00056
00057
00058
00059
00060
00061 String jvmVersion = System.getProperty("java.vm.version");
00062 String os = System.getProperty("os.name");
00063 if (jvmVersion != null && jvmVersion.indexOf("phoneme_advanced") != -1 && os != null && os.indexOf(" CE") != -1) {
00064 try {
00065 System.loadLibrary("ppcsystemapi");
00066 } catch (Throwable exi) {
00067 exi.printStackTrace();
00068 }
00069 }
00070
00071 try {
00072 Properties props = new Properties();
00073 LogManager.registerLogManager(props);
00074
00075 try {
00076 WebServer server = null;
00077 if (args != null && args.length > 0) {
00078 server = new WebServer(args[0]);
00079 } else {
00080 server = new WebServer();
00081 }
00082
00083 server.serve();
00084 } catch (IOException ex) {
00085
00086 Plateform plateform = ApplicationContextManager.getManager().getApplicationContext().getPlateform();
00087 if (plateform.getOS().equals(Plateform.POCKETPCOS)) {
00088 try {
00089 System.loadLibrary("ppcsystemapi");
00090 SystemAPI.getManager().execProgram("\\Windows\\iexplore.exe", "");
00091 } catch (Throwable exi) {
00092 exi.printStackTrace();
00093 }
00094 }
00095 }
00096 } catch (Throwable ex) {
00097 ex.printStackTrace();
00098 LogManager.traceError(0, ex);
00099 }
00100 }
00101
00102 }