[Grimoires-users] Fwd: problem(potential bug) with getOperationByMessagePartReference()
Brought to you by:
stevecrouch
|
From: Weijian F. <wf...@ec...> - 2007-05-08 10:38:57
|
---------- Forwarded message ---------- From: Weijian Fang <wf...@ec...> Date: 08-May-2007 11:37 Subject: Re: [Grimoires-users] problem(potential bug) with getOperationByMessagePartReference() To: Yu Pan <yp...@bi...> Hi, Thanks a lot for identifying this bug. I have fixed the bug in Grimoires 1.5.0, which can be downloaded from http://users.ecs.soton.ac.uk/~wf/grimoires/Grimoires-1.5.0.zip. If there is any further questions, please let me know. Can you tell me more about your project which uses Grimoires? Thanks. Cheers, Weijian On 06/05/07, Yu Pan <yp...@bi...> wrote: > Hi, > > I encounters a problem while using Grimoires1.0.4. I published a set of > WSDL files, then try to query the operation by given the message part > references. As long as the operation names are difference for each > operation in each WSDL file, there is no problem. However, if you have two > operations (in different WSDL files, however) that have the same name, > then the wsdl.findOperationByMessagePart() get confused and could return any of > them. For example, I have the following two wsdl files (only fragments are > shown): > > <wsdl:definitions name="ClustalwService" > targetNamespace="http://www.cs.nmsu.edu/bsis/services/clustalw4" > ...> > > ... > > <wsdl:message name="ClustalwRequest"> > <wsdl:part name="sequences" element="types:sequences"/> > <wsdl:part name="proteinMatrix" element="types:proteinMatrix"/> > <wsdl:part name="dnaMatrix" element="types:dnaMatrix"/> > </wsdl:message> > > <wsdl:message name="ClustalwResponse"> > <wsdl:part name="alignedSequences" > element="types:alignedSequences"/> > <wsdl:part name="outTree" element="types:outTree"/> > </wsdl:message> > > <wsdl:portType name="ClustalwPortType"> > <wsdl:operation name="run"> > <wsdl:input name="ClustalwRequest" > message="tns:ClustalwRequest"/> > <wsdl:output name="ClustalwResponse" > message="tns:ClustalwResponse"/> > </wsdl:operation> > </wsdl:portType> > > <wsdl:binding name="ClustalwSoapBinding" type="tns:ClustalwPortType"> > <soap:binding style="document" > transport="http://schemas.xmlsoap.org/soap/http"/> > <wsdl:operation name="run"> > <soap:operation soapAction=""/> > <wsdl:input name="ClustalwRequest"> > <soap:body use="literal"/> > </wsdl:input> > <wsdl:output name="ClustalwResponse"> > <soap:body use="literal"/> > </wsdl:output> > </wsdl:operation> > </wsdl:binding> > ... > </wsdl:definitions> > > <wsdl:definitions name="ReadSeq" > targetNamespace="http://www.cs.nmsu.edu/bsis/services/readseq" > ...> > > ... > > <wsdl:message name="ReadSeqRequest"> > <wsdl:part name="sequences" element="types:sequences"/> > <wsdl:part name="format" element="types:format"/> > </wsdl:message> > > <wsdl:message name="ReadSeqResponse"> > <wsdl:part name="outSequences" element="types:outSequences"/> > </wsdl:message> > > <wsdl:portType name="ReadSeqPortType"> > <wsdl:operation name="run"> > <wsdl:input name="ReadSeqRequest" > message="tns:ReadSeqRequest"/> > <wsdl:output name="ReadSeqResponse" > message="tns:ReadSeqResponse"/> > </wsdl:operation> > </wsdl:portType> > > <wsdl:binding name="ReadSeqSoapBinding" type="tns:ReadSeqPortType"> > <soap:binding style="document" > transport="http://schemas.xmlsoap.org/soap/http"/> > <wsdl:operation name="run"> > <soap:operation soapAction=""/> > <wsdl:input name="ReadSeqRequest"> > <soap:body use="literal"/> > </wsdl:input> > <wsdl:output name="ReadSeqResponse"> > <soap:body use="literal"/> > </wsdl:output> > </wsdl:operation> > </wsdl:binding> > </wsdl:definitions> > > When I try to query the operation using the message part reference: > http://www.cs.nmsu.edu/bsis/services/readseq : ReadSeqRequest : sequences > It supposes to return me the operation detail as: > http://www.cs.nmsu.edu/bsis/services/readseq : ReadSeqPortType : run > However, it gives me the following one: > http://www.cs.nmsu.edu/bsis/services/clustalw4 : ClustalwPortType : run > > I was first doubting that it is the 1.0.4 version problem then I download > the 1.2.3 version but the problem still exists. I finally find out the > reason is because they share the same operation name "run". I tried > published the service with different operation names, then it is ok. I > do not know any of you have encountered the same problem before. But to > me, it looks like a potential bug in the function since it is > unavoidably people may use the same names for different operations. > > Further information needed, let me know. > > Thanks a lot. > > Yu > > > ----------------------------------------------------------------------- > Department of Computer Science | Email: yp...@cs... > New Mexico State University | Phone: (505)646-6224 > Las Cruces, NM 88001 | Homepage: http://www.cs.nmsu.edu/~ypan > ----------------------------------------------------------------------- > > ------------------------------------------------------------------------- > This SF.net email is sponsored by DB2 Express > Download DB2 Express C - the FREE version of DB2 express and take > control of your XML. No limits. Just data. Click to get it now. > http://sourceforge.net/powerbar/db2/ > _______________________________________________ > Grimoires-users mailing list > Gri...@li... > https://lists.sourceforge.net/lists/listinfo/grimoires-users > -- Cheers, Weijian -- Cheers, Weijian |