1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/mywork-web/src/main/java/ru/indvdum/mywork/MyWork.java Wed Nov 23 17:52:25 2011 +0300
1.3 @@ -0,0 +1,78 @@
1.4 +package ru.indvdum.mywork;
1.5 +
1.6 +import java.util.Date;
1.7 +
1.8 +import javax.persistence.EntityManager;
1.9 +import javax.persistence.EntityManagerFactory;
1.10 +import javax.persistence.Persistence;
1.11 +
1.12 +import org.mortbay.component.LifeCycle;
1.13 +import org.mortbay.component.LifeCycle.Listener;
1.14 +import org.mortbay.jetty.Connector;
1.15 +import org.mortbay.jetty.Server;
1.16 +import org.mortbay.jetty.servlet.Context;
1.17 +import org.mortbay.jetty.servlet.ServletHolder;
1.18 +
1.19 +import com.vaadin.terminal.gwt.server.ApplicationServlet;
1.20 +
1.21 +/**
1.22 + * @author indvdum
1.23 + * 12.08.2011 17:31:37
1.24 + *
1.25 + */
1.26 +public class MyWork {
1.27 + public static EntityManagerFactory EMF = null;
1.28 + public static EntityManager EM = null;
1.29 +
1.30 + /**
1.31 + * @param args
1.32 + * @throws Exception
1.33 + */
1.34 + public static void main(String[] args) throws Exception {
1.35 + Server server = new Server();
1.36 + Connector connector = new org.mortbay.jetty.nio.SelectChannelConnector();
1.37 + connector.setPort(8080);
1.38 + connector.setMaxIdleTime(720000);
1.39 + server.addConnector(connector);
1.40 +
1.41 + Context root = new Context(server, "/", Context.SESSIONS);
1.42 + ServletHolder vaadinServlet = new ServletHolder(new ApplicationServlet());
1.43 + vaadinServlet.setInitParameter("application", "ru.indvdum.mywork.vaadin.MyWorkApplication");
1.44 + root.addServlet(vaadinServlet, "/*");
1.45 +
1.46 + server.addLifeCycleListener(new Listener(){
1.47 +
1.48 + @Override
1.49 + public void lifeCycleFailure(LifeCycle event, Throwable cause) {
1.50 +
1.51 + }
1.52 +
1.53 + @Override
1.54 + public void lifeCycleStarted(LifeCycle event) {
1.55 + EMF = Persistence.createEntityManagerFactory("mywork");
1.56 + EM = EMF.createEntityManager();
1.57 + }
1.58 +
1.59 + @Override
1.60 + public void lifeCycleStarting(LifeCycle event) {
1.61 +
1.62 + }
1.63 +
1.64 + @Override
1.65 + public void lifeCycleStopped(LifeCycle event) {
1.66 +
1.67 + }
1.68 +
1.69 + @Override
1.70 + public void lifeCycleStopping(LifeCycle event) {
1.71 + EM.close();
1.72 + EMF.close();
1.73 + }
1.74 +
1.75 + });
1.76 +
1.77 + server.start();
1.78 + System.out.println("Jetty server started at " + new Date());
1.79 + }
1.80 +
1.81 +}