Outra "correção" é, claro, usar
protected
em vez de
public
- o que faz sentido para os membros conectados de qualquer forma.
Avalados por :
Ao tentar executar um impex como um patch, recebo o seguinte erro ao abrir o HAC. O patch não é visível então. Quando adiciono o campo setupImpexService como um campo privado apenas com um setter, o HAC abre.
Alguém tem alguma ideia do que poderia estar causando este problema? Revisei outras classes de configuração que estão implementadas da mesma maneira, mas não vejo a diferença. Código publicado abaixo.
WARN [hybrisHTTP18] [DefaultHandlerExceptionResolver] Failed to write HTTP message: org.springframework.http.converter.HttpMessageNotWritableException: Could not write content: No serializer found for class de.hybris.platform.commerceservices.setup.impl.DefaultSetupImpexService and no properties discovered to create BeanSerializer (to avoid exception, disable SerializationFeature.FAIL_ON_EMPTY_BEANS) ) (through reference chain: java.util.HashMap["sfsunimarketpatches"]->java.util.ArrayList[0]->de.hybris.platform.core.initialization.SystemSetupCollectorResult["object"]->ch...PatchesR001["setupImpexService"]); nested exception is com.fasterxml.jackson.databind.JsonMappingException: No serializer found for class de.hybris.platform.commerceservices.setup.impl.DefaultSetupImpexService and no properties discovered to create BeanSerializer (to avoid exception, disable SerializationFeature.FAIL_ON_EMPTY_BEANS) ) (through reference chain: java.util.HashMap["patches"]->java.util.ArrayList[0]->de.hybris.platform.core.initialization.SystemSetupCollectorResult["object"]->ch...PatchesR001["setupImpexService"])
Classe Java SystemSetup:
@SystemSetup(extension = PatchesConstants.EXTENSIONNAME)
public class PatchesR001 extends AbstractSystemSetup
{
private static final Logger LOG (
Outra "correção" é, claro, usar
protected
em vez de
public
- o que faz sentido para os membros conectados de qualquer forma.
Olá Fabián,
Obrigado por apontar isso!
@Todos Alguém sabe se isso foi resolvido na versão 6.4? Encontrei o problema na versão 6.3.0.4.
Saudações, Norberto
O problema pode ser resolvido adicionando @JsonIgnore a todos os getters da classe atual e de sua superclasse.
import com.fasterxml.jackson.annotation.JsonIgnore;
@JsonIgnore
@Override
public SetupImpexService getSetupImpexService()
{
return super.getSetupImpexService();
}
@JsonIgnore
@Override
public SetupSyncJobService getSetupSyncJobService()
{
return super.getSetupSyncJobService();
}
@JsonIgnore
@Override
public SetupSolrIndexerService getSetupSolrIndexerService()
{
return super.getSetupSolrIndexerService();
}
@JsonIgnore
@Override
public List<SyncItemJobModel> getCatalogSyncJob(final String catalogId) throws UnknownIdentifierException
{
return super.getCatalogSyncJob(catalogId);
}
@JsonIgnore
@Override
public CatalogVersionService getCatalogVersionService()
{
return super.getCatalogVersionService();
}
@JsonIgnore
@Override
public EventService getEventService()
{
return super.getEventService();
}
contacto@primeinstitute.com
(+51) 1641 9379
(+57) 1489 6964
© 2024 Copyright. Todos los derechos reservados.
Desarrollado por Prime Institute