У меня есть SOAP пользовательский интерфейс на localhost:1910/alerts
, и я пытаюсь сделать сообщение, используя его.
У меня есть следующий код, где «alert» - это объект, который я хочу отправить как Json:
Client client = (Client) ClientBuilder.newClient( new ClientConfig().register( LoggingFilter.class ) );
WebTarget webTarget = client.target("localhost:1910/alerts");
Alert alert = new Alert();
alert.setFailureDate("20200416090710");
alert.setApplicationName("application_name");
alert.setSeverity("high");
alert.setEmailMessageBody("The application_name service has stopped");
alert.addEmailToList("abc@gmail.com");
alert.addEmailToList("def@gmail.com");
Invocation.Builder invocationBuilder = webTarget.request(MediaType.APPLICATION_JSON);
Response response = invocationBuilder.post(Entity.entity(alert, MediaType.APPLICATION_JSON));
System.out.println(response.getStatus());
Когда я запускаю этот код, он врывается в Invocation.Builder с:
Exception in thread "main" java.lang.NoSuchMethodError: javax.ws.rs.core.MultivaluedMap.addAll(Ljava/lang/Object;[Ljava/lang/Object;)V
at org.glassfish.jersey.client.ClientRequest.accept(ClientRequest.java:336)
at org.glassfish.jersey.client.JerseyWebTarget.request(JerseyWebTarget.java:221)
at org.glassfish.jersey.client.JerseyWebTarget.request(JerseyWebTarget.java:59)
at br.com.main.Main.main(Main.java:29)
Я читал и обнаружил, что это может быть неправильная версия некоторая зависимость cie но я изо всех сил пытаюсь выяснить, какая из них. Это мои зависимости Maven:
<dependencies>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-bundle</artifactId>
<version>1.19.4</version>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.core</groupId>
<artifactId>jersey-client</artifactId>
<version>2.25.1</version>
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-core</artifactId>
<version>1.19.4</version>
</dependency>
<!-- https://mvnrepository.com/artifact/javax.ws.rs/javax.ws.rs-api -->
<dependency>
<groupId>javax.ws.rs</groupId>
<artifactId>javax.ws.rs-api</artifactId>
<version>2.0.1</version>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.containers</groupId>
<artifactId>jersey-container-servlet</artifactId>
<version>2.30.1</version>
</dependency>
</dependencies>
Ps: я бегу Java 8
Заранее спасибо!