2011-11-30 63 views
0

我已经使用SOAP API构建了与Rally的集成,以便当我在bugzilla中定位一个bug时,用户故事是在适当的版本中创建和安排的。它也在更新,所以如果我只是更新目标,美国将与Rally中的指定版本相关联。org.xml.sax.SAXException:com.rallydev.webservice.v1_28.domain.OperationResult中的元素无效 - 对象

它已经工作了一段时间,但现在它似乎不再工作了。

我得到以下错误:

org.xml.sax.SAXException: Invalid element in com.rallydev.webservice.v1_28.domain.OperationResult - Object 
    at org.apache.axis.encoding.ser.BeanDeserializer.onStartChild(BeanDeserializer.java:258) 
    at org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1035) 
    at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:165) 
    at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:1141) 
    at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:236) 
    at org.apache.axis.message.RPCElement.getParams(RPCElement.java:384) 
    at org.apache.axis.client.Call.invoke(Call.java:2467) 
    at org.apache.axis.client.Call.invoke(Call.java:2366) 
    at org.apache.axis.client.Call.invoke(Call.java:1812) 
    at com.rallydev.webservice.v1_28.service.RallyServiceSoapBindingStub.update(RallyServiceSoapBindingStub.java:1166) 

我更新到最新的API,而不是运气。

回答

1

斯特凡诺,

这是在拉力赛的一个已知问题,我们希望它会被纠正这个星期六(3Dec11)。如果您需要立即运行代码,可以通过编辑生成的代码来捕获抛出的异常。

只要SAX异常被捕获,它就不会阻止实际成功的更新。一对夫妇的客户能够通过包装更新代码和/或调用拉力服务的任务类似的例子这里try/catch块要解决不匹配的返回值:

try { 
    OperationResult operationResult = rallyService.update(myTask); 
} catch (Exception e) { 
    System.out.println("Rally SAX Exception encountered"); 
} 

对不起,不方便。

  • 马克
+0

感谢马克!我需要下载一个新的wsdl并重建吗? – Ste

+0

您将需要重建您的wsdl。 –

+0

它现在可以工作,不需要wsdl重建。谢谢! – Ste