私はこの例外を持っています。私は桟橋サーバーを作りようとしていました。アイデアによると、それはHandler []引数でなければなりません。それはそうですが、この例外です。私は何を変える必要があるのか分からない。誰も助けることができますか?なぜですか?IllegalArgumentException:ポートが不正です: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);
}
}
私はNativeMethodAccessorImpl.java(sun.reflect.NativeMethodAccessorImpl.invokeでsun.reflect.NativeMethodAccessorImpl.invoke0で
にjava.lang.reflect.InvocationTargetException (ネイティブメソッド) この例外を取得:java.lang.reflect.Method.invokeでsun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) (Method.java:498)の62) org.codehaus.mojo.exec.ExecJavaMojo $ 1での。実行する(ExecJavaMojo.java:293) のjava.lang.Thread.run(Thread.java:745) 原因:java.lang.IllegalArgumentException:不正なポート:0 at java.util.logging.SocketHandler.connect(SocketHandler.java:160) at java.util.logging.SocketHandler。our.arti.JettyServerArti.JettyStarter.mainで(SocketHandler.java:125) (JettyStarter.java:27) ... 6もっと
あなたはより具体的な必要がある場合詳細は私に知らせる。
を注意深く読めば、あなたの例外が表示されます。java.lang.IllegalArgumentExceptionが:によって_Caused悪いポート:0_、 'connector.setPort(8080)を意味し;'正常に動作していません。..あなたはデバッグしましたか、有効な 'server'と' connector'インスタンスがありますか? –
@JordiCastillaこのプログラムではハンドラが代わりにハンドラが8080ポートで動作していた – Artemon
@JordiCastilla - 閉じるが、それは意味しない。下の私の答えを見てください。例外は 'new SocketHandler()'によって呼び出されるイニシャライザからのものであり、あなたが言及した呼び出しが行われる 'ServerConnector'の何も知らない。 –