[MOBY-dev] jMoby: Asynchronous service invocation problems

Luke McCarthy mccarthy at elmonline.ca
Mon Oct 6 21:08:57 UTC 2008


Hi,

I'm trying to invoke an asynchronous service in jMoby and the call to  
invokeService never returns.  I know that the service in question (the  
"runEmbossPatmatmotifsFromID" service at the authority  
"www.cnb.uam.es") works, because I can execute exactly the query I'm  
testing from dashboard and it works (I'm using UniProt:P15923 if  
anyone would like to play along at home...)

The first problem seems to be that AnalysisEvent.createFromXML is  
returning an empty array of AnalysisEvent objects and all of the error  
detection assumes that a failure to parse will result in a null pointer.

That said, even if the error were properly detected, I'd still have a  
problem because the parser would just die with an exception.  So the  
second problem is the failure to parse the XML returned by the  
service.  Here's the offending XML:

<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd 
" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd 
" xmlns:wsrl="http://docs.oasis-open.org/wsrf/rl-2" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/ 
" xmlns:mobyws="http://biomoby.org/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance 
" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema 
" xmlns:wsrp="http://docs.oasis-open.org/wsrf/rp-2" xmlns:wsa="http://www.w3.org/2005/08/addressing 
">
<soap:Header>
   <wsa:To wsu:Id="To">http://www.w3.org/2005/08/addressing/anonymous</ 
wsa:To>
   <wsa:MessageID wsu:Id="MessageID">urn:www.sve.man.ac.uk-84286358931187206910812790 
</wsa:MessageID>
   <wsa:Action wsu:Id="Action">http://docs.oasis-open.org/wsrf/fault</ 
wsa:Action>
</soap:Header>
<soap:Body wsu:Id="myBody">
   <soap:Fault>
     <faultcode>soap:Server</faultcode>
     <faultstring>Application error</faultstring>
     <detail>
       <wsbf:InvalidResourcePropertyQNameFault xmlns:wsbf="http://docs.oasis-open.org/wsrf/bf-2 
">
       <wsbf:Timestamp>2008-10-06T20:07:18Z</wsbf:Timestamp>
       <wsbf:Description>Property status_1 does not exist</ 
wsbf:Description>
       </wsbf:InvalidResourcePropertyQNameFault>
     </detail>
   </soap:Fault>
</soap:Body>
</soap:Envelope>

Now, even if this XML were parsed successfully, I'd still have a  
problem because it seems the service is trying to return an error  
complaining about the polling request.  So the third problem is  
actually sending the service data it can use.

I tried to find another asynchronous service to test, but the only  
other asynchronous services that take simple Moby objects (just  
namespace and id) are by the same authority and produce the same  
problems.

So, is there something I can do to fix these problems I'm  
experiencing?  Any insight at all would be welcome.  Thanks,

Luke



More information about the MOBY-dev mailing list