Ich bin neu bei JAX-RS und versuche herauszufinden, was hier passiert: Ich habe einen einfachen Hello World Jersey REST-Service auf Glassfish (Eclipse-Plugin). Ich kann von einem Browser aus erfolgreich darauf zugreifen.Jersey client - Ungültiger Signaturdateiauszug für Manifest Hauptattribute
Nun, ich möchte es nennen von einer Java-Klasse (so kann ich JUnit-Tests um ihn bauen), aber ich bekomme diese Fehlermeldung auf buildGet() -Methode:
java.lang.SecurityException: Invalid signature file digest for Manifest main attributes
Es sei denn, etwas Magie Ich Ich bin mir nicht bewusst, passiert, ich packe nicht meine Service und/oder Client in einem Glas, so dass es nicht mit meiner Anwendung Jar Unterschrift verbunden ist.
- Jeder könnte erklären, was ich falsch mache?
- Warum wird die Ausnahme bei buildGet() metod und nicht bei einer zuvor aufgerufenen Methode ausgelöst?
Mein Haupt:
package com.test;
import javax.ws.rs.client.Client;
import javax.ws.rs.client.ClientBuilder;
import javax.ws.rs.client.Invocation;
import javax.ws.rs.client.WebTarget;
import javax.ws.rs.core.Response;
public class HelloTest {
public static void main(String[] args)
{
Client client = ClientBuilder.newClient();
Response response = null;
try {
WebTarget webTarget = client.target("http://localhost:9595/Hello/api/ping");
Invocation helloInvocation = webTarget.request().buildGet();
response = helloInvocation.invoke();
}
catch (Throwable ex) {
System.out.println(ex.getMessage());
}
finally {
response.close();
}
}
}
Mein Service:
package com.api;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
@Path("ping")
public class Hello
{
@GET
@Produces(MediaType.TEXT_HTML)
public String sayHtmlHello()
{
return "<html>" + "<title>" + "Hello" + "</title>"
+ "<body><h1>" + "Hello!!!" + "</body></h1>" + "</html>";
}
}