2014-05-21 2 views
0

이전 웹 서비스에 연결하려고하는데 wsimport 및 기타 도구를 사용하여 클래스를 자동 생성 할 때 오류가 발생합니다.wsimport에서 WSDL 오류가 발생했습니다.

computer-name:tmp me$ wsimport -keep -verbose https://www.entech.us/sigmaaldrich/CarbonFootprintStats.asmx?WSDL 
parsing WSDL... 

[WARNING] src-resolve.4.2: Error resolving component 's:schema'. It was detected that 's:schema' is in namespace 'http://www.w3.org/2001/XMLSchema', but components from this namespace are not referenceable from schema document 'https://www.entech.us/sigmaaldrich/CarbonFootprintStats.asmx?WSDL#types?schema1'. If this is the incorrect namespace, perhaps the prefix of 's:schema' needs to be changed. If this is the correct namespace, then an appropriate 'import' tag should be added to 'https://www.entech.us/sigmaaldrich/CarbonFootprintStats.asmx?WSDL#types?schema1'. 
    line 30 of https://www.entech.us/sigmaaldrich/CarbonFootprintStats.asmx?WSDL#types?schema1 

[ERROR] undefined element declaration 's:schema' 
    line 30 of https://www.entech.us/sigmaaldrich/CarbonFootprintStats.asmx?WSDL 

s : schema를 제거하기 위해 WSDL을 편집해야하는 문제가 있습니까? WSDL은 더 이상한 유효성 검사를 통과합니다.

나는 아직도 많은 온라인 SOAP 클라이언트 테스트 도구로 데이터를 가져올 수 있음을 알고 있으며 심지어 Eclipse를 사용하여 메소드를 탐색하고 실행할 수 있습니다.

미리 안내해 주셔서 감사합니다.

<s:element ref="s:schema"/> 

enter image description here

이 요소는 s:schema라는 간단한 또는 복잡한 형태를 참조한다 : 당신이 라인 (30)에 XSD 볼 때

답변

1

당신은 다음 줄을 참조하십시오. 해당 줄의 버그처럼 보입니다. 나머지 WSDL 및 XSD는 잘 보이지만 잘 정의되어 있지 않습니다. 예를 들어 응답은 단지 빈 <s:any/> 태그입니다.

그들은 존재하지 않는 것을 참조하도록 요소를 선언하려고 한 이유를 분명히해야합니다. 정말 버그처럼 보입니다.

WSDL은 WSI와 호환되지 않습니다.

+0

어떤 검증 도구를 사용하고 있습니까? 나는 그것이 체크 아웃하는 것을 보았습니다. 그러나 그것을 분석하려고 시도 할 때 잘못 정의되고 오류가 발생하기 쉽습니다. – JohnMathews

+0

@JohnMathews는 테스트를 위해 SOAP UI를 WSDL에서 살펴 보았습니다. Altova XMLSpy 또는 리퀴드 XML for 디자인. – Namphibian

+0

WSDL에 대한 작업을 다시하지 않기를 바랍니다.이 작업은 오래 걸리지 않아야합니다 .- ( – JohnMathews