unknown socket que protocol not net found java android malformedurlexception

java - socket - malformedurlexception que es



Excepción de URL con formato incorrecto de Java (1)

Estoy tratando de hacer una solicitud HTTP POST en una aplicación de Android que estoy creando, pero no importa qué URL utilice para la solicitud, Eclipse sigue generando una excepción de URL mal formada. He intentado una línea de código de uno de los tutoriales de Android:

URL url = new URL("https://wikipedia.org");

E incluso eso desencadena el error. ¿Hay alguna razón por la que Eclipse siga provocando este error en cualquier URL que intento crear?


No está generando la excepción, se queja de que no ha manejado la posibilidad de que lo haga, aunque no lo haga, porque la URL en este caso no está mal formada. (Los diseñadores de Java pensaron que este concepto, "excepciones verificadas", era una buena idea, aunque en la práctica no ha funcionado bien ) .

Para cerrarlo, agregue la throws IOException throws MalformedURLException , o su superclase throws IOException , a la declaración de método. Por ejemplo:

public void myMethod() throws IOException { URL url = new URL("https://wikipedia.org/"); ... }

Alternativamente, captura y vuelve a emitir la excepción molesta como una excepción no verificada:

public void myMethod() { try { URL url = new URL("https://wikipedia.org/"); ... } catch (IOException e) { throw new RuntimeException(e); } }

Java 8 agregó la clase UncheckedIOException para volver a enviar IOException s cuando de otra manera no pueda manejarlas. En versiones anteriores de Java, use RuntimeException .