我使用SOAP API构建了与Rally的集成,因此当我在bugzilla中定位bug时,会在正确的版本中创建并安排用户故事。它也可用于更新,因此如果我只更新目标,则美国将与Rally中的指定版本相关联。
它已经工作了一段时间,但现在它似乎不再起作用了。
我收到以下错误:
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,但没有运气。
答案 0 :(得分:1)
斯特凡诺,
这是拉力赛中的一个已知问题,我们预计会在本周六更正(3Dec11)。如果您需要立即运行代码,可以通过编辑生成的代码来捕获抛出的异常。
只要捕获到SAX异常,它就不会阻止更新实际成功。一些客户已经能够通过在try / catch块中包装更新代码和/或调用Rally服务来解决不匹配的返回值,类似于Task上的示例:
try {
OperationResult operationResult = rallyService.update(myTask);
} catch (Exception e) {
System.out.println("Rally SAX Exception encountered");
}
很抱歉给您带来不便。