java.io.objectStreamexception이 Enums의 WTK 스터브 생성기에 사용되는 이유는 무엇입니까?

StackOverflow https://stackoverflow.com/questions/933530

문제

인터페이스에 열거 된 WCF에서 구현 된 웹 서비스를 사용하고 있습니다. 나는 Java Blackberry 클라이언트에서 이것을 부르려고 노력하고 있습니다. Eclipse를 사용하여 BlackBerry의 Java 응용 프로그램을 개발하고 있습니다. 나는 그것을 사용하고있다 Sun Java 무선 툴킷 (wtk) 2.5.2 웹 서비스가 다소 크기 때문에 (Windows Mobile 클라이언트가 이미 사용하고 있음) 스터브 코드를 생성합니다.

WTK를 사용하여 스터브 코드를 생성하려고하면 열거에 대한 Eclipse에서 오류가 발생합니다. 다음 함수에서는 java.io.objectStreamException이 유형으로 해결 될 수 없다고 불평합니다.

private Object readResolve()
    throws java.io.ObjectStreamException {
    return fromValue(getValue());
}

스터브 생성기를 실행할 때 CLDC 1.0 또는 CLDC 1.1에 대한 스위치가 있습니다. 두 옵션 모두로 생성하면 동일한 문제가 발생합니다.

나는 a를 찾았다 포럼 게시물 응답없이 태양에서 이것에 대해. 이 포스트의 사람은 "이제 java.io.objectStreamexception은 CLDC에 있지 않지만 대신 CDC에 있습니다. J2ME를위한 웹 서비스를위한 스터브를 만들기위한 좋은 도구가 있습니까?"라고 말합니다. [Documentation을 보면 CLDC 1.1에는 존재하지 않는지 확인했습니다 3).

이 상황을 해결하기 위해 Eclipse에는 두 가지 빠른 수정 사항이 있습니다. 1) 'java.io'또는 2) Packet 'java.io'또는 2) 수정 프로젝트 설정 (참조를 추가하기를 원한다).

업데이트:

JSR-172 사양의 말은 다음과 같습니다.

5.2.5 열거 JAX-RPC 서브 세트는 XML 열거를 지원하지 않습니다.

5.2.6 제한에 의해 도출 된 간단한 유형 JAX-RPC 서브 세트는 제한에 의해 간단한 유형을 도출하는 것을 지원하지 않습니다.

WCF 열거를위한 WSDL은 a를 생성합니다 <xs:simpleType> ~와 함께 <xs:restriction> 포함 <xs:enumeration>. 그래서 나는이 필드가 대신 int라고 말하고 상수를 정의한다고 말합니까?

이것이 WTK의 버그입니까? 그렇다면, 나는 태양과 버그 보고서를 제출하고 그들이 응답하는지 알게 될 것입니다. 툴킷이 이것을 오류로 표시하지 않는 이유는 무엇입니까?

이제 인터페이스를 변경하여 JSR-172를 준수하는 인터페이스를 변경해야합니다. WSDL을 읽고 준수 문제를 지적 할 도구가 있습니까?

도움이 되었습니까?

해결책

CLDC와 무선 툴킷은 모두 Java Micro Edition을 사용합니다. Javame은 Java 언어의 버전 2를 기반으로하며, 이는 제네릭과 열거가 없음을 의미합니다.

BlackBerry 핸드셋의 웹 서비스를 조사하는 첫 번째 단계는 JSR-172 사양을 읽는 것입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top