저축에 대한 이해로 Java는 바이너리 안전 문자열을 지원하지 않는 유일한 언어이므로 절약형 바이너리 유형입니다. 내 문제는 그것이 작동하지 않는 것입니다.Java Thrift 클라이언트 및 이진 데이터
내 정의 파일은 다음과 같습니다
service myService {
int myMethod(1:binary input)
}
내 자바 클라이언트가 긍정적 인 길이를 가지고 관찰 바이너리 데이터, MyMethod라는를 호출하기 전에 인쇄 바이트에서의 ByteBuffer를 작성합니다. MyMethod라는의 C++ 구현 내부 즉시
은 (중고품 서버 골격을 생성에서) 입력을 인쇄하려고 내가 여기에 무엇을 그것은 항상 0
어떤 아이디어 크기의 비어있는 누락있어 보여? 바이너리를 문자열로 바꾸면 모든 것이 매력적으로 작동합니다. 나중에 안전하지 않은 Java 변환 문자열을 처리하지 않기를 바랍니다.
바이너리 유형은 특정 언어 사이의 Thrift에서 알려진 상호 운용성 문제입니다. 하지만 나는 Java에 대해 들어 보지 못했다. <-> C++에 문제가있다. 원시 와이어 데이터를 캡처 했습니까? –