Java/J2EE/Jetty

Материал из Java эксперт
Перейти к: навигация, поиск

Launch Jetty embedded.

   <source lang="java">

/*

* Copyright 2005 Joe Walker
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
*     http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

import org.mortbay.jetty.Server; import org.mortbay.jetty.nio.SelectChannelConnector; import org.mortbay.jetty.webapp.WebAppContext; /**

* Launch Jetty embedded.
*/

public class JettyLauncher {

   /**
    * Sets up and runs server.
    * @param args The command line arguments
    * @throws Exception Don"t care because top level
    */
   public static void main(String[] args) throws Exception
   {
       Server server = new Server();
       SelectChannelConnector connector = new SelectChannelConnector();
       connector.setPort(8080);
       server.addConnector(connector);
       server.setStopAtShutdown(true);
       server.addHandler(new WebAppContext("web","/dwr"));
       server.start();
       server.join();
   }

}

 </source>
   
  
 
  



Load Jetty Server

   <source lang="java">
  

/* ------------------------------------------------------------------------

* $Id: JettyServer.java,v 1.1 2005/12/26 12:59:25 tpv Exp $
* Copyright 2005 Tim Vernum
* ------------------------------------------------------------------------
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
*      http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* ------------------------------------------------------------------------
*/

//Revised from adjective wild import java.io.File; import org.apache.log4j.ConsoleAppender; import org.apache.log4j.Level; import org.apache.log4j.Logger; import org.apache.log4j.PatternLayout; import org.mortbay.http.SocketListener; import org.mortbay.jetty.Server; /**

* @version $Revision: 1.1 $
*/

public class JettyServer {

   private static final int PORT_NUMBER = 8080;
   public static void main(String[] args)
   {
       new JettyServer().run();
   }
   public void run()
   {
       try
       {
           configureLog4J();
           Server jetty = new Server();
           String appDir = getWebAppDirectory("source/webapp/demo").getAbsolutePath();
           jetty.addWebApplication("/demo", appDir);
           SocketListener httpPort = new SocketListener();
           httpPort.setPort(PORT_NUMBER);
           jetty.addListener(httpPort);
           jetty.start();
       }
       catch (Exception e)
       {
           throw new RuntimeException(e);
       }
   }
   private void configureLog4J()
   {
       ConsoleAppender console = new ConsoleAppender(new PatternLayout(PatternLayout.TTCC_CONVERSION_PATTERN));
       Logger root = Logger.getRootLogger();
       root.setLevel(Level.INFO);
       root.addAppender(console);
   }
   private File getWebAppDirectory(String relativeDir)
   {
       File directory = getDirectory(relativeDir);
       File webxml = new File(directory, "WEB-INF/web.xml");
       if (!webxml.exists())
       {
           throw new RuntimeException("Cannot find web.xml at " + webxml);
       }
       return directory;
   }
   private File getDirectory(String relativeDir)
   {
       File directory = getFile(relativeDir);
       if (!directory.isDirectory())
       {
           throw new RuntimeException("Not a directory: " + directory);
       }
       return directory;
   }
   private File getFile(String relativeName)
   {
       File file = new File(relativeName);
       if (!file.exists())
       {
           throw new RuntimeException("File not found: " + file);
       }
       return file;
   }

}


 </source>