2011-03-10 4 views
1

임베디드 장치 인 SmartServer와 SOAP을 사용하여 통신해야하는 응용 프로그램이 있습니다. 수락하는 SOAP 메시지는 네임 스페이스가 없지만 gSAOP은 네임 스페이스와 함께 보냅니다. 그래서 그들은 다음과 같이 대신이의soapcpp2 버전 2.8.1 파일이 누락되었습니다.

<ns3:List> 
<ns3:iLonItem> 
    <ns3:xSelect></ns3:xSelect> 
</ns3:iLonItem> 
</ns3:List> 

을 : 내가 먼저 비정규로 WSDL 및 XSD 파일에 자격을 변경 한 다음 파일을 재생하고, 자격에 대한 자격이 변경 시도

<List> 
<iLonItem> 
    <xSelect></xSelect> 
</iLonItem> 
</List> 

. 그러나 내가 무엇을 가지고 최선을 좋아 보이는

<ns3:List> 
<iLonItem> 
    <xSelect></xSelect> 
</iLonItem> 
</ns3:List> 

입니다 만, 여전히 목록은 네임 스페이스입니다.

그런 다음 this 사이트에서 SOAP_XML_DEFAULTNS 옵션을 사용해야한다는 것을 알았습니다. 그래서 시도했습니다. 이것은 처음에는 작동하지 않았지만 2.7.9l-0.2 (데비안의 표준 버전) 대신 2.8.1 버전을 사용해야한다는 것을 알게되었습니다. 그래서 데비안 버전을 제거하고 2.8.1을 다운로드하고 파일을 복사했습니다. 하지만 이제 soapcpp2로 파일을 생성하려고하면 soapClient.cpp, soapClientLib.cpp, soapProxy.h 및 많은 * .req.xml 및 * .res.xml 파일이 누락됩니다. 내 프로젝트를 컴파일하려면 특히 soapClient.cpp 파일이 필요합니다.

gsoap/bin 디렉토리에서 표준 바이너리를 시도하고 INSTALL.txt에 설명 된대로 gsoap 디렉토리에서 src 및 wsdl 파일을 재구성했지만 원하는대로 작동하지 않습니다.

아무도 나를 조금 더 도와 줄 수 있습니까?

내가 중요한 데비안 리눅스 버전 5.0.8 (Lenny, old-stable) 32 비트를 사용하고 있습니다.

... 다음 파일이 누락 : soapClient.cpp, soapClientLib.cpp, soapProxy.h 및 * .req.xml와 * .res.xml 파일의 많은 질문에 대해서는

답변

0

. 내 프로젝트를 컴파일하려면 특히 soapClient.cpp 파일이 필요합니다.

http://www.cs.fsu.edu/~engelen/soapdoc2.html#tth_sEc8 (9.1 절 참조) 에 따르면 soapcpp2를 호출 할 때 잘못된 옵션 집합을 사용했을 수 있습니다. -S 스위치를 사용하여 "서버 측 코드 만 생성"을 지정하지 않았습니까? 클라이언트 측에 대해서만 -C를 사용합니다. 서버 및 클라이언트 측 파일 모두에 대해 스위치가 필요하지 않습니다. 또한 프록시 파일을 생성하려면 -i를 사용해야합니다.

희망 하시겠습니까? Ryyker

관련 문제