Я использую поставщик Jackson JSON для сериализации/десериализации запросов JAXRS.Как проверить jackson-jaxrs-json-provider (Arquillian + Wildfly)
Для того, чтобы установить его Я jboss-deployment-structure.xml
файл под WEB-INF
папку с:
<jboss-deployment-structure>
<deployment>
<exclusions>
<module name="org.jboss.resteasy.resteasy-jackson-provider"/>
<module name="org.jboss.resteasy.resteasy-jettison-provider"/>
</exclusions>
<dependencies>
<module name="org.jboss.resteasy.resteasy-jackson2-provider" services="import"/>
</dependencies>
</deployment>
</jboss-deployment-structure>
Итак, я построил тест для того, чтобы получить его:
@RunWith(Arquillian.class)
public class FollowUpActivityDTOSerializationTest
{
@Inject private ObjectMapper mapper;
@Deployment
public static WebArchive createDeployment()
{
System.getProperties().remove("javax.xml.parsers.SAXParserFactory");
EmbeddedGradleImporter importer = ShrinkWrap.create(EmbeddedGradleImporter.class);
WebArchive war = importer.forThisProjectDirectory().importBuildOutput().as(WebArchive.class);
war.addClass(ArquillianAlternative.class);
war.addClass(MockFactory.class);
war.addAsWebInfResource(
new StringAsset("<alternatives><stereotype>com.living.mock.ArquillianAlternative</stereotype></alternatives>"),
"beans.xml"
);
JavaArchive[] libs = Maven.resolver().resolve("org.mockito:mockito-core:2.0.31-beta").withTransitivity().as(JavaArchive.class);
war.addAsLibraries(libs);
return war;
}
@Test
public void emptyJSON()
{
String emptyJSON = "{\"id\": \"id\"}";
try {
FollowUpActivityDTO dto = this.mapper.readValue(emptyJSON, FollowUpActivityDTO.class);
assertNotNull(dto);
assertEquals(dto.getId(), "id");
} catch (IOException e) {
fail(e.getMessage());
}
}
}
Проблема Weld говорит мне, что:
Неудовлетворительные зависимости для типа ObjectMapper с квалификаторами @Default
Вопрос, как я могу получить провайдер jackson?
Я не могу сказать, если банки Джексоновских на самом деле в войне, пожалуйста, добавьте этот вывод, а также. – LightGuard