2012-02-21 2 views
0

Eclipse의 빌트인 웹 서비스 클라이언트 작성자 (Apache Axis를 사용하여 코드를 생성한다고 생각합니까?)를 사용하여 웹 서비스 클라이언트를 만들었습니까?), 나는 알아낼 수없는 오류가 발생했습니다.Java SOAP 클라이언트 예외 예외 "객체가 아닌 객체의 setValue() 호출"

Exception in thread "main" AxisFault 
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server 
faultSubcode: 
faultString: Call to a member function setValue() on a non-object 
faultActor: 
faultNode: 
faultDetail: 
    {http://xml.apache.org/axis/}stackTrace:Call to a member function setValue() on a non-object 
    at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:222) 
    at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:129) 
    at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087) 
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source) 
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source) 
    at javax.xml.parsers.SAXParser.parse(Unknown Source) 
    at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227) 
    at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696) 
at org.apache.axis.Message.getSOAPEnvelope(Message.java:435) 
    at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62) 
    at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206) 
    at org.apache.axis.client.Call.invokeEngine(Call.java:2784) 
    at org.apache.axis.client.Call.invoke(Call.java:2767) 
    at org.apache.axis.client.Call.invoke(Call.java:2443) 
    at org.apache.axis.client.Call.invoke(Call.java:2366) 
    at org.apache.axis.client.Call.invoke(Call.java:1812) 
    at com.symplicity.oppsplace_demo.ws.job_api_php.JobWebServiceBindingStub.processJob(JobWebServiceBindingStub.java:280) 
    at com.symplicity.oppsplace_demo.ws.job_api_php.JobWebServicePortProxy.processJob(JobWebServicePortProxy.java:56) 
    at main.OppsPlaceIntegration.main(OppsPlaceIntegration.java:37) 

내가 OppsPlace에서 제공하는 API (작업 게시 사이트)를 사용하고, 특히 나는 그들의 테스트 환경을위한 클라이언트 구축이 WSDL을 사용 다음은 예외의 말씀입니다.

기본적으로 고유 ID와 함께 서비스로 전달되는 Job 개체와 Contact 개체 (WSDL에서 생성 된 클래스)를 만듭니다. 내 코드를 변경하려고해도이 동일한 예외가 적용됩니다.

여기서 알 수 있듯이, 아파치 코드 내부에서는 예외가 꽤 깊게 발생하고 있으며, 내 인생에서 나는 그 이유를 알 수 없습니다. 어떤 생각/아이디어?

+0

자바가 공식적으로 기능이없고 메소드 만 가지고 있기 때문에 * 'member function'*이 재미 ​​있습니다. 오류 메시지는 PHP * '비 객체'의 멤버 함수 호출 *과 같습니다. –

답변

2

자바에는 공식적으로 기능이없고 메소드 만 '멤버 함수'가 언급됩니다. 오류 메시지는 PHP '비 객체의 멤버 함수 호출'과 유사합니다. PHP에서 OppsPlace API가 구현 된 것은 우연이 아닙니다.

축하합니다. 호출중인 API에서 버그가 발생했습니다.

+0

그건 완전히 이해가됩니다. 이 경우 해당 API에 대한 사이트를 따라 할 것입니다. 무리 감사! – nerdherd

+0

@nerdherd이 오류 유형을 정렬하기위한 진전이 있었습니까? 자바에서 호출 (안드로이드는 내 경우입니다.) –