[MOBY-dev] invoking document literal services

Edward Kawas edward.kawas at gmail.com
Mon Jul 13 15:02:17 UTC 2009


Hi Dmitry,

Could you send me a wsdl document for any 2 doc/lit services?

Thanks,

Eddie 

-----Original Message-----
From: moby-dev-bounces at lists.open-bio.org
[mailto:moby-dev-bounces at lists.open-bio.org] On Behalf Of Dmitry Repchevsky
Sent: July-03-09 11:16 AM
To: moby-dev at lists.open-bio.org
Subject: Re: [MOBY-dev] invoking document literal services

>
> Excuse me if I sound daft.. but what is the point of making a
> Document/literal service if you end up having to use xsd:any and a
> normal Moby message?  (Or do we have an XSD schema for Moby
> messages..?)
>   
I agree with you, it is not my fault that moby is incompatible with 
schema...
Moby message can be divided into two parts, auxiliary one and an 
ontology one.
First part is schema compatible, another one no.

> You might with doc/literal be able to support a more up-to-date
> clients like Axis2 and CXF for Java, but if it's just a wrapper for
> the 'real' Moby message inside that needs to be parsed manually or
> using moby libraries.. what is the big gain? :-)
>   
Not exactly.

The message like:
**************************************************

<?xml version="1.0" encoding="UTF-8"?>
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
    <S:Body>
        <ns1:MOBY xmlns:ns1="http://www.biomoby.org/moby">
            <ns1:mobyContent>
                <ns1:mobyData ns1:queryID="sip_1">
                    <ns1:Simple ns1:articleName="id">
                        <ns1:AminoAcidSequence ns1:id="" ns1:namespace="">
                            <ns1:String ns1:articleName="SequenceString"
                                ns1:id=""
ns1:namespace="">AGHFJHGDKHGJKADGHJGDJH</ns1:String>
                        </ns1:AminoAcidSequence>
                    </ns1:Simple>
                </ns1:mobyData>
            </ns1:mobyContent>
        </ns1:MOBY>
    </S:Body>
</S:Envelope>

**************************************************

CAN be parsed using JAX-WS standard methods.
I have an alternative BioMoby Java API based on JAX-WS/JAXB and using it 
I CAN provide STANDARD doc-lit BioMoby services:

**************************************************

@WebService()
@SOAPBinding(style=SOAPBinding.Style.DOCUMENT,
             use=SOAPBinding.Use.LITERAL,
             parameterStyle=SOAPBinding.ParameterStyle.BARE)

//@XmlSeeAlso({AminoAcidSequence.class, MobyString.class})
public class MobyDocWebService
{
    @WebResult(name="MOBY", targetNamespace="http://www.biomoby.org/moby")
    public MobyMessage runMyService(@WebParam(name="MOBY",
targetNamespace="http://www.biomoby.org/moby", mode = WebParam.Mode.IN)
MobyMessage msg)
    {
        return msg; // just to return back the message
    }
}

**************************************************
Another project I have done is to automagically generate a JAX-WS proxy 
application (*.war) for any (including asynchronous) biomoby services.
Such a proxy expose biomoby services as WSDL doc-lit ones (+WSA for 
asynchrony) with preserving all the moby ontology.

Cheers,

Dmitry
_______________________________________________
MOBY-dev mailing list
MOBY-dev at lists.open-bio.org
http://lists.open-bio.org/mailman/listinfo/moby-dev




More information about the MOBY-dev mailing list