Maison >Java >Comment migrer de la jetée intégrée 10 vers la jetée 12 ee8 ?

Comment migrer de la jetée intégrée 10 vers la jetée 12 ee8 ?

WBOY
WBOYavant
2024-02-05 11:56:49765parcourir
Contenu de la question

J'essaie de passer de la jetée 10.x à la jetée 12.x ee8. Après avoir modifié les dépendances selon cette liste https://download.eclipse.org/tools/orbit/simrel/maven-jetty/release/12.0.6/. Je reçois des erreurs de compilation lors de l'utilisation de la jetée intégrée.

Il semble qu'il n'y ait pas d'ee8 server类,我使用org.eclipse.jetty.server.server。该类扩展自 org.eclipse.jetty.server.handler.wrapper.

Mais jetty-ee8-nested 的处理程序从 org.eclipse.jetty.ee8.nested.handlerwrapper 扩展,这是不兼容的。例如org.eclipse.jetty.ee8.nested.inetaccesshandler。一个期望 org.eclipse.jetty.server.handler 另一个 org.eclipse.jetty.ee8.nested.handler

Y a-t-il un autre implémenteur du serveur que je supervise ? Où puis-je le trouver? Et les noms de classes ?

Ou dois-je modifier mon code ? Par exemple, comment modifier la ligne suivante ?

InetAccessHandler ipaccess = new InetAccessHandler();
ipaccess.setHandler( getHandler() );
setHandler( ipaccess );

Bonne réponse


Tout d'abord, il y a un guide de portage de la jetée 11 à la jetée 12 : https://eclipse.dev/jetty/documentation/jetty-12/programming-guide/index.html#pg-migration-11-to-12

Il montre bon nombre des choses que vous avez demandées.

Ignorez les classes du package org.eclipse.jetty.ee8.nested.*, ce sont des classes internes de la couche ee8.

Utilisez org.eclipse.jetty.server.handler.inetaccesshandler.

Vous pouvez l'enrouler autour de n'importe quel gestionnaire comme : org.eclipse.jetty.server.handler.sequenceorg.eclipse.jetty.ee8.webappwebappcontextetc...

InetAccessHandler inetAccessHandler = new InetAccessHandler();
// allow only http clients from localhost IPv4 or IPv6
inetAccessHandler.include("127.0.0.1", "::1");
server.setHandler(inetAccessHandler);

Handler.Sequence handlers = new Handler.Sequence();
inetAccessHandler.setHandler(handlers);

WebAppContext webapp = new WebAppContext();
webapp.setContextPath("/");
webapp.setWar(warPath.toUri().toASCIIString());

handlers.addHandler(webapp);

Cet extrait provient de https:// /github.com/jetty/jetty-examples/tree/12.0.x/embedded/ee8-webapp-context

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer
Article précédent:AucunArticle suivant:如何在Reactor Netty中实现CORS?