Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Copyright (c) 2015 Leibniz Institute of Plant Genetics and Crop Plant Research (IPK), Gatersleben, Germany.
   * All rights reserved. This program and the accompanying materials
   * are made available under the terms of the Creative Commons Attribution-NoDerivatives 4.0 International (CC BY-ND 4.0)
   * which accompanies this distribution, and is available at http://creativecommons.org/licenses/by-nd/4.0/
   *
   * Contributors:
   *      Leibniz Institute of Plant Genetics and Crop Plant Research (IPK), Gatersleben, Germany - RMI Client, FileChooser and WebDAV
   */
 package de.ipk_gatersleben.bit.bi.edal.webdav.sample;
 
 
 
Main class to start a WebDAV server with an embedded jetty servlet.
Similar to "mvn jetty:run"

Author(s):
arendd
 
 
 @SuppressWarnings("unused")
 public class Main {
 
 	private static int EDAL_PORT = 0;
 	private static String EDAL_HOST = "";
 	private static int WEBDAV_SSLPORT = 8443;
 
 	public static void main(String[] args) {
 
 		final Properties prop = new Properties();
 
 		/* load default webDAV-Properties */
 		try {
 			prop.load(Main.class.getResourceAsStream("/eDALwebDAV.properties"));
 			 = prop.getProperty("server.host");
 			 = Integer.parseInt(prop.getProperty("server.port"));
 			 = Integer.parseInt(prop
 					.getProperty("browser.sslport"));
 		} catch (final IOException e) {
 					"error loading default WebDAV properties"e);
 			System.exit(-1);
 		}
 
 		Options options = new Options();
 
 				.println("e!DAL WebDAV server\nCopyright (c) 2012, IPK-Gatersleben.\nAll rights reserved.\n");
 
 		..println("WebDAV-Client ready and listening at port : "
 				+  + "\n");
 
 		options.addOption("h""help"false"print help");
 		options.addOption("p""server_port"true,
 				"set port for e!DAL server (default=" +  + ")");
 
 		options.addOption("d""webdav_port"true,
 				"set SSL port for WebDAV server (default=" + 
 						+ ")");
 
 		options.addOption("s""server_host"true,
 				"set host for e!DAL server (default=" +  + ")");
 
 		HelpFormatter form = new HelpFormatter();
 
 		final CommandLineParser parser = new PosixParser();
 		CommandLine cmd = null;
 		try {
 			cmd = parser.parse(optionsargs);
 		} catch (final ParseException e) {
 		}
		if (cmd.hasOption("h")) {
			form.printHelp("-h"options);
			System.exit(0);
		}
		if (cmd.hasOption("s")) {
			System.setProperty("edalhost"cmd.getOptionValue("s"));
		}
		if (cmd.hasOption("p")) {
			System.setProperty("edalport"cmd.getOptionValue("p"));
		}
		if (cmd.hasOption("d")) {
			 = Integer.parseInt(cmd.getOptionValue("d"));
		}
		Server server = new Server();
		WebAppContext context = new WebAppContext();
		SslContextFactory sslContextFactory = new SslContextFactory();
		KeyStore keystore = null;
		try {
			keystore = KeyStore.getInstance("JKS");
			// TODO Auto-generated catch block
		}
		sslContextFactory.setKeyStore(keystore);
		ServerConnector sslConnector = new ServerConnector(serversslContextFactory);
//		SslSocketConnector sslConnector = new SslSocketConnector(
//				sslContextFactory);
		sslConnector.setPort();
		/*
		 * To accept connection from 8080, otherwise the normal connection
		 * cannot be passed into 8080
		 */
		// SelectChannelConnector selectChannelConnector = new
		// SelectChannelConnector();
		// selectChannelConnector.setPort(WEBDAV_PORT);
		// server.setConnectors(new Connector[]
		// {sslConnector,selectChannelConnector});
		server.setConnectors(new Connector[] { sslConnector });
		/*
		 * default values :
		 * context.setDescriptor("src/main/webapp/WEB-INF/web.xml");
		 * context.setResourceBase("src/main/webapp");
		 */
		try {
			context.setDescriptor(URLDecoder.decode(
					Loader.getResource("WEB-INF/web.xml").toExternalForm(),
					"UTF-8"));
			context.setResourceBase(URLDecoder.decode(
					Loader.getResource("WEB-INF/web.xml").toExternalForm(),
					"UTF-8"));
		}
		context.setContextPath("/");
		server.setHandler(context);
		try {
			..info("Start WebDAV server");
			..info("e!DAL host : " + );
			..info("e!DAL port : " + );
			..info("WebDAV port : " + );
			server.start();
			FileSystemCache.init();
			server.join();
			..info("WebDAV server started");
catch (Exception e) {
			..fatal("error start jetty server"e);
		}
	}
New to GrepCode? Check out our FAQ X