2017-11-30 8 views
1

3D 모델 요청의 응답을 다시 Manifest 및 Metadata 객체로 매핑하는 데 문제가 있으므로 Model Derivative API에서 응답 객체에 대한 업데이트가있었습니다.Model Derivative API 응답이 Jackson을 통해 매핑되지 않았습니다.

두 가지 모두 Jackson 오류입니다.

  1. GetManifest는
  2. GetMetadataForGuid가 던지고 처리되지 않은 역할 열거 반환 - 불법 문자 ((CTRL-CHAR, 코드 31))

감사

+1

JAVA를 사용하는 다른 몇몇 고객이 비슷한 문제를보고했습니다. 나는 조사 중이며 곧 다시 연락 할 것입니다. –

답변

1

을 나는 문제 뭐가 잘못있어 . Get Manifest 엔드 포인트의 응답이 최근에 조금 변경되었습니다. Revit에서 생성 한 매니페스트의 형상 노드를 제외하고 속성 데이터베이스 노드가 있습니다. 따라서 새로운 역할 중 하나는 'Autodesk.CloudPlatform.PropertyDatabase'입니다. 이전 자바 객체 인 ManifestChildren.JAVA은 역할을 선언하지 않습니다. 실패의 원인이되었습니다. enter image description here

수정하려면 ManifestChildren.JAVA에 새 역할을 추가하기 만하면됩니다. 예 :

enter image description here

나는이 JAVA SDK에 대한 커밋 요청했습니다. SDK 소스 코드를 프로젝트에 병합하면 직접 수정할 수 있습니다.

희망이 도움이됩니다.

+0

개체가 모양을 변경하는 시점을 어떻게 추적합니까? 변경 사항을 자세히 설명하는 곳에서 릴리스 노트를 찾을 수 없었습니다. 감사합니다 –

+1

@Neil_M 이것은 발표하기 위해 놓친 변경 사항을 소리. 엔지니어 팀과 함께 미래에 이러한 객체 변경에 대한 공개 알림을 요청하는 요청을 제기했습니다. 프로젝트에 발생한 모든 문제에 대해 사과하십시오. –

0

두 번째 질문은 모두를위한 참고 자료입니다.

GET : urn/metadata/: guid를 호출 할 때 헤더가 "gzip"형식으로 설정되어 있기 때문에 문제가 발생합니다. "gzip"이 아닌 경우 모두 잘 작동합니다. Postman과 같은 다른 방법을 사용하는 동안 gzip으로 헤더를 사용할 수도 있습니다.

이전에는 클라이언트가 gzip 헤더를 사용했을 때 실제로 gzip 인코딩을 트리거하지 않습니다. 그래서 모든 것이 좋습니다. 최근에 출시 된 후 gzip이 지정된 경우 콘텐츠가 gzip에 콘텐츠를 반환하지만 SDK가 올바르게 처리하지 못합니다. 우편 배달부는 gzip을 자동으로 json에 압축 풀기 때문에 제대로 작동합니다.

따라서 수정 사항은 ApiClient.java의 115 행에 한 줄을 추가 할 수 있습니다. client.addFilter (new GZIPContentEncodingFilter (false));

나는 또한이 문제점에 대한 수정 사항으로 내 공간에서 소스 github 저장소를 포크했다. pull 요청은 주 repo에 대한 커밋입니다. API 호출의 응답을 허용하여 gzip 내용을 처리하고 압축을 풀 수 있습니다. https://github.com/xiaodongliang/forge-api-java-client

SDK를 사용하는 일부 프로젝트에 영향을 미친 두 가지 문제에 사과드립니다.