Hey Sukma,

thanks for the response - I oringally went with the second option but I was getting an exception on the StringReader. I think I know what the problem is - at least you verified for me that I am on
the right path. I appreciate it.

Many regards once again

Sukma Agung Verdianto wrote:
Hi Demetris,

To read a local file you could simply use "file:///path/to/wsdl/file.wsdl" as readWSDL argument -> reader.readWSDL("file:///path/to/your/wsdl");, Or if you have a WSDL serialized in String, you could use reader.readWSDL(null, new InputSource(new StringReader(wsdlString)));

Regards,
Sukma

On Fri, Feb 22, 2008 at 1:22 PM, Demetris G <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>> wrote:


    Hi all,

       does anyone know of a piece of code similar to the one below that
    can read/parse  a local WSDL file
    serialized in a string rather than a remote WSDL given by a URI?

    Thanks

    Sukma Agung Verdianto wrote:
    > Hi Demetris,
    >
    > You can try to use wsdl4j
    (http://sourceforge.net/projects/wsdl4j) to
    > get the operations of specified wsdl file. (AFAIK, Axis2 uses
    this in
    > their wsdl2java code)
    >
    > public static void main(String[] args) throws Exception {
    >
    > WSDLFactory fac = WSDLFactoryImpl.newInstance();
    >
    > WSDLReader reader = fac.newWSDLReader();
    >
    > Definition def =
    > reader.readWSDL("http://api.google.com/GoogleSearch.wsdl";);
    >
    > Map services = def.getServices();
    >
    > for(Object serviceKey : services.keySet()) {
    >
    > QName serviceQName = (QName) serviceKey;
    >
    > Service service = (Service) services.get(serviceQName);
    >
    > System.out.println("Namespace: " +
    > service.getQName().getNamespaceURI() + ", Service Name: " +
    > service.getQName().getLocalPart());
    >
    > Map ports = service.getPorts();
    >
    > for(Object portKey : ports.keySet()) {
    >
    > String portName = (String) portKey;
    >
    > Port port = (Port) ports.get(portName);
    >
    > System.out.println("  Namespace: " +
    > port.getBinding().getQName().getNamespaceURI() + ", Binding
    Name: " +
    > port.getBinding().getQName().getLocalPart());
    >
    > List operations = port.getBinding().getBindingOperations();
    >
    > for(Object operation : operations) {
    >
    > BindingOperation op = (BindingOperation) operation;
    >
    > System.out.print("    Operation Name: " + op.getName());
    >
    > List ll = op.getExtensibilityElements();
    >
    > for(Object soap : ll) {
    >
    > if(SOAPOperation.class.isInstance(soap)) {
    >
    > System.out.print(" (" + ((SOAPOperation)soap).getSoapActionURI()
    + ")");
    >
    > }
    >
    > }
    >
    > System.out.println();
    >
    > }
    >
    > }
    >
    > }
    >
    > }
    >
    >
    > Above code read remote wsdl, and extract its information.
    >
    > Regards,
    > Sukma
    >
    > On Feb 17, 2008 2:09 PM, Demetris G <[EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>
    > <mailto:[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>> wrote:
    >
    >
    >     Hi all,
    >
    >        I am trying to use the wsdlParser from the Axis API to parse
    >     the methods
    >     out of an incoming WSDL file - does anyone who has used this
    >     before have
    >     any info on how to use this tool? OR any other way I could
    get the
    >     operations
    >     of the remote service out of the WSDL file? I would
    appreciate it.
    >
    >     Thanks
    >
    >
> ---------------------------------------------------------------------
    >     To unsubscribe, e-mail: [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>
    >     <mailto:[EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>>
    >     For additional commands, e-mail:
    [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
    >     <mailto:[EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>>
    >
    >

    ---------------------------------------------------------------------
    To unsubscribe, e-mail: [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>
    For additional commands, e-mail: [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to