J'ai cette exception. J'essayais de faire le serveur de jetée. Selon l'idée, il doit s'agir de l'argument Handler [], et c'est le cas, mais cette exception. Je n'ai aucune idée de ce que j'ai besoin de changer. Quelqu'un peut-il aider?Pourquoi existe-t-il IllegalArgumentException: Port incorrect: 0?
public static void main(String[] args) {
Server server = new Server();
ServerConnector connector = new ServerConnector(server);
connector.setPort(8080);
server.addConnector(connector);
ResourceHandler resourceHandler = new ResourceHandler();
resourceHandler.setDirectoriesListed(true);
resourceHandler.setWelcomeFiles(new String[]{ "index.html" });
resourceHandler.setResourceBase(".");
HandlerList handlers = new HandlerList();
handlers.setHandlers(new Handler[]{new SocketHandler(), resourceHandler}); //#27
server.setHandler(handlers);
try {
server.start();
server.join();
}
catch (Throwable t){
t.printStackTrace(System.err);
}
}
Je reçois cette exception
java.lang.reflect.InvocationTargetException à sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method) à sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java : 62) à sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) à java.lang.reflect.Method.invoke (Method.java:498) à org.codehaus.mojo.exec.ExecJavaMojo $ 1. exécuter (ExecJavaMojo.java:293) at java.lang.Thread.run (Thread.java:745) Causé par: java.lang.IllegalArgumentException: Bad port: 0 à java.util.logging.SocketHandler.connect (SocketHandler.java:160) à java.util.logging.SocketHandler. (SocketHandler.java:125) à our.arti.JettyServerArti.JettyStarter.main (JettyStarter.java:27) ... 6 plus
Si vous avez besoin plus spécifique détails faites le moi savoir.
si vous lisez attentivement votre exception Verront: _Caused par: java.lang.IllegalArgumentException: port Bad: 0_, cela signifie que 'connector.setPort (8080),' ne fonctionne pas correctement .. Avez-vous débogué, existe-t-il des instances 'server' et' connector' valides? –
@JordiCastilla alors que dans ce programme il y avait un Handler à la place des Handlers, il travaillait avec le port 8080 – Artemon
@JordiCastilla - close, mais ce n'est pas ce que cela signifie. Voir ma réponse ci-dessous; l'exception provient de l'initialiseur invoqué par 'new SocketHandler()' qui ne connaît rien du 'ServerConnector' sur lequel l'appel que vous mentionnez est fait. –