Używam jetty6 w prostej aplikacji jako osadzonego kontenera serwletu. Postanowiłem zaktualizować go do Jetty 8. W molo 6 to dość proste do uruchomienia serwera:Migracja z Jetty 6 do Jetty 8
Server server = new Server(8080);
Context context = new Context(server, "/", Context.SESSIONS);
context.addServlet(MyServlet.class, "/communication-service");
server.start();
ale to nie działa w Jetty8. Niestety nie mogę znaleźć żadnego prostego przykładu dla tej wersji. Nie można utworzyć instancji kontekstu z błędem
an enclosing instance that contains
org.eclipse.jetty.server.handler.ContextHandler.Context is required
ponieważ obecnie jest to klasa wewnętrzna, a także nie ma takiego konstruktora.
Większość przykładów dotyczy pomostów 6 i 7. Czy mógłby Pan podać prosty przykład jak uruchomić serwlet na przystani 8?
Nie, to nie działa. – NullPointer
Twoje pytanie jest mało szczegółowe. Co nie działa? Która linia powoduje problem? Czy istnieje ślad stosu podczas próby uruchomienia? – SteveD
Mam ten sam problem w niektórych z mojego kodu Jetty 6. Miałem dwa "konteksty", które przyjmują serwer jako parametr. W Jetty 8 wzorzec wydaje się być odwrócony, ponieważ na serwerze istnieje metoda 'setHandler' (dla pojedynczego programu obsługi). Jednak żadna z dokumentacji nie wydaje się odpowiadać, w jaki sposób migrować kod z więcej niż jednym kontekstem dołączonym do tego samego serwera. Czy jest to sytuacja, w której zamierzasz używać kolekcji Handler kontekstu? – Ash