Exemple #1
0
  public boolean readProperties() throws IOException {

    properties = new Properties();
    FileInputStream is = new FileInputStream(SERVERPROPSFILE);
    properties.load(is);
    is.close();

    serverData = new ESBServerData();
    serverData.setBrokerName(properties.getProperty("BrokerName"));
    serverData.setBrokerPort(properties.getProperty("BrokerPort"));
    serverData.setBrokerIP(properties.getProperty("BrokerIP"));
    serverData.setRegServicePort(properties.getProperty("RegServicePort"));
    serverData.setWebServerPort(properties.getProperty("WebServerPort"));
    serverData.setAsynchServletCorePoolSize(
        Integer.parseInt(properties.getProperty("AsynchServletCorePoolSize")));
    serverData.setAsynchServletMaxPoolSize(
        Integer.parseInt(properties.getProperty("AsynchServletMaxPoolSize")));
    serverData.setAsynchServletMaxWorkInQueue(
        Integer.parseInt(properties.getProperty("AsynchServletMaxWorkInQueue")));
    serverData.setAsynchCallDefaultTimeoutMS(
        Integer.parseInt(properties.getProperty("AsynchCallDefaultTimeoutMS")));
    serverData.setHeaderBufferSize(Integer.parseInt(properties.getProperty("HeaderBufferSize")));
    logger.info("Read properties file...");
    return true;
  }
Exemple #2
0
  public void runServletContainer() throws Exception {
    // setup the executor for the servlet
    logger.debug("Starting Servlet Container...");
    executor =
        new ThreadPoolExecutor(
            serverData.getAsynchServletCorePoolSize(),
            serverData.getAsynchServletMaxPoolSize(),
            50000L,
            TimeUnit.MILLISECONDS,
            new LinkedBlockingQueue<Runnable>(serverData.getAsynchServletMaxWorkInQueue()));
    Server server = new Server(Integer.parseInt(serverData.getWebServerPort()));
    server.getConnectors()[0].setRequestHeaderSize(serverData.getHeaderBufferSize());

    ServletHolder sh = new ServletHolder(ServletContainer.class);
    sh.setInitParameter(
        "com.sun.jersey.config.property.resourceConfigClass",
        "com.sun.jersey.api.core.PackagesResourceConfig");
    // sh.setInitParameter("com.sun.jersey.config.property.packages",
    // serverData.getJerseyPackage());
    sh.setAsyncSupported(true);
    // un-comment these to enable tracing of requests and responses
    // sh.setInitParameter("com.sun.jersey.config.feature.Debug", "true");
    // sh.setInitParameter("com.sun.jersey.config.feature.Trace", "true");//
    // sh.setInitParameter("com.sun.jersey.spi.container.ContainerRequestFilters",
    // "com.sun.jersey.api.container.filter.LoggingFilter");
    // sh.setInitParameter("com.sun.jersey.spi.container.ContainerResponseFilters",
    // "com.sun.jersey.api.container.filter.LoggingFilter");
    ServletContextHandler context = new ServletContextHandler(ServletContextHandler.SESSIONS);
    context.setContextPath("/");
    context.addServlet(sh, "/*");
    context.addServlet("semplest.server.ESB.AsyncServlet", "/*");
    server.setHandler(context);
    logger.debug("Servlet Container Start...");
    server.start();
    server.join();
  }
Exemple #3
0
 public boolean createRegistrationServer() {
   try {
     logger.debug("Starting NIO reg Server...");
     // create the NIO server to handle incoming registration
     ProcessRequestWorker worker = new ProcessRequestWorker();
     new Thread(worker).start();
     new Thread(
             new NIOServer(null, Integer.parseInt(serverData.getRegServicePort()), worker, this))
         .start();
     logger.debug("NIO Started...");
     return true;
   } catch (IOException e) {
     e.printStackTrace();
     return false;
   }
 }