Olá,
Estou tentando me familiarizar com o Data Hub (seguindo esta página:
https://help.hybris.com/6.3.0/hcd/8155bc6d95d4419793dcf54e0e9a5841.html).
Tudo antes disso funciona conforme o esperado, mas quando se trata de publicar dados, sempre recebo um erro:
2017-05-22 13:44:14,050 [INFO] [c.h.d.r.r.PoolActionResource] Recebeu solicitação POST /publications com argumentos [GLOBAL,org.glassfish.jersey.server.internal.routing.UriRoutingContext@31033815,PublicationActionData{targetSystemPublications=[TargetSystemPublicationData{publicationId=null, startTime=null, endTime=null, status='null', targetSystemName='FileAdapterTargetSystem', actionId=null, poolName='null', canonicalItemCount=0, internalErrorCount=0, externalErrorCount=0, numberOfErrors=0, ignoredCount=0}]PoolActionData{actionId=null, type='PUBLICATION', startTime=null, endTime=null, status='null', poolName='GLOBAL'}}]
2017-05-22 13:44:14,077 [DEBUG] [c.h.d.s.i.DefaultEventPublicationService] Publicando evento do Data Hub: PerformPublicationEvent{actionId=1, systemUrl='
http://localhost:8080/datahub-webapp/v1',
targetPublicationIds=[1]}
2017-05-22 13:44:14,110 [DEBUG] [c.h.d.p.i.DefaultProcessMonitor] Registro da Publicação #1: 1 processos em execução
2017-05-22 13:44:14,114 [DEBUG] [c.h.d.s.i.DefaultEventPublicationService] Publicando evento do Data Hub: PublicationStartedEvent{actionId=1}
2017-05-22 13:44:14,138 [DEBUG] [c.h.d.s.i.DefaultPublicationActionService] Pingando o sistema de destino FileAdapterTargetSystem para o id de publicação do sistema de destino 1 e pool GLOBAL.
2017-05-22 13:44:14,220 [WARN] [c.h.d.p.TargetSystemAvailabilityRetryListener] O sistema de destino FileAdapterTargetSystem não está disponível para o id de publicação do sistema de destino 1 e pool GLOBAL: O URI não é absoluto
. A conexão será tentada novamente em 0 segundos para a tentativa 1 de 4.
...
2017-05-22 13:44:21,744 [ERROR] [c.h.d.p.TargetSystemAvailabilityRetryListener] O sistema de destino FileAdapterTargetSystem não está disponível para o id de publicação do sistema de destino 1 e pool GLOBAL: O URI não é absoluto.
java.lang.IllegalStateException: O sistema de destino FileAdapterTargetSystem não está disponível para o id de publicação do sistema de destino 1 e pool GLOBAL: O URI não é absoluto.
...
2017-05-22 13:44:21,760 [DEBUG] [c.h.d.s.i.DefaultEventPublicationService] Publicando evento do Data Hub: TargetSystemPublicationCompletedEvent{publicationId=1}
2017-05-22 13:44:21,764 [DEBUG] [c.h.d.s.p.i.DefaultDataHubPublicationService] definindo o status da publicação como FALHA
2017-05-22 13:44:21,766 [DEBUG] [c.h.d.p.i.DefaultProcessMonitor] Publicação não registrada #1, 0 processos em execução
2017-05-22 13:44:21,767 [DEBUG] [c.h.d.s.i.DefaultEventPublicationService] Publicando evento do Data Hub: PublicationCompletedEvent{actionId=1}
Mai 22, 2017 1:45:57 PM org.apache.coyote.http11.AbstractHttp11Processor process
INFORMAÇÃO: Erro ao analisar cabeçalho da solicitação HTTP
Nota: mais ocorrências de erros de análise de cabeçalho HTTP serão registradas no nível DEBUG.
java.lang.IllegalArgumentException: Caractere inválido encontrado no nome do método. Os nomes dos métodos HTTP devem ser tokens
...
Destaquei os erros em negrito. Especialmente o segundo me confunde... Instalei um Tomcat completo em branco e o Hybris sem nenhuma extensão adicional ou algo do tipo. Tudo o que estou tentando fazer é executar este comando:
curl -u admin:nimda --data-binary @datafile2 -H "Content-Type:application/json" --request POST
http://localhost:8080/datahub-webapp/v1/pools/GLOBAL/publications
O conteúdo de
datafile2
é o seguinte:
{
{
}
]
}
Alguém tem ideia do que pode ser o problema e o que posso fazer a respeito?
Atualização (29 de maio de 2017, copiado e colado do meu comentário abaixo):
A solução para o meu problema é que parece que deve haver outra extensão adicional (que não é mencionada nas páginas de ajuda) dentro do diretório
opt/datahub/extensions
- pelo menos se você quiser executar o Data Hub localmente como um ambiente de teste. Esta extensão poderia ser (por exemplo)
datahub-file-adapter-target-6.0.0.0-RC