2011-03-12 1 views
4

Axis 1.1 클라이언트가 Axis2 웹 서비스 끝점과 대화 할 수 있습니까? 웹 서비스는 XML SOAP 메시지를 서비스의 WSDL에 지정된 스키마를 사용하여 앞뒤로 전달함으로써 작동하지만, Axis의 이러한 버전이이를 막을 수있는 다른 버전의 웹 서비스 스펙을 사용하는지 여부는 확실하지 않습니다. 말하기에서. 이견있는 사람?Axis 1.1 클라이언트가 Axis2 서비스와 대화 함

답변

4

좋아, Axis2 웹 서비스와 통신하기 위해 Axis 1.1을 사용하면 문제가 없다. Axis 1.1을 사용하여 스텁을 생성하고 Client 클래스를 만들고 테스트했습니다. Axis 1.1의 API는 이전 Axis 1.4에서 허용하는 것과 동일한 기능을 제공하지는 않지만 특히 웹 서비스 메서드 매개 변수가 nillable인지 minOccurs인지 지정할 수있는 ParameterDesc 클래스에서 제공되지만 내 호출은 정상적으로 작동하는 것처럼 보입니다 .

기본적으로 WSDL 정의를 사용하여 수행 할 수 있지만, Axis2는 Axis 1.1이 사용할 수없는 새로운 기능을 Axis 1.1이 수용 할 수 있는지 여부를 확신하지 못합니다. API ...

오, 그리고 마지막으로 한 메모, 내 요청에 SOAP 1.1 스텁을 사용해야했습니다. 나는 왜 내 응답이 SOAP 1.2로 돌아 왔는지를 100 % 확신 할 수는 없지만 거기에 당신이 가지고있다.

1

일반적으로 귀하의 이해가 정확합니다. 클라이언트가 WSDL 설명을 따르는 경우 웹 서비스에 접속할 수 있어야합니다.
그러나 Axis1과 Axis2는 기본적으로 호환되지 않는 다른 인코딩을 사용합니다.
Axis1은 RPC (더 이상 사용되지 않음)를 사용하고 Axis2는 doc/lit를 사용합니다.
Axis1 서버와 통신하는 Axis2 클라이언트는 작동하지 않습니다.
반대의 경우 (그리고 게시물에서 묻는 것) 나는 정말로 확신하지 못합니다.
WSDL을 사용하여 스텁을 생성하려고 했습니까?
오류를 찾으셨습니까? 스텁 생성시 ​​오류가 발생하지 않으면 시도해 볼 수 있다고 생각합니다.