Search code examples
javawsdlapache-axis

AXIS2 and WSDL parsing: exclude schemas


According to the process of creation AXISService we should parse WSDL file and all imported schemas. But in case of big WebServices it takes a lot of memory(aproximately 200-300 Mb) Is there any abilities to exclude processing of schemas?

I parse WSDL by ibm implementation of javax.wsdl.*

Sample of code:

public static Definition read(FileObject wsdlFile)
        throws Exception
{
    try {
        WSDLReader reader = WSDLFactory.newInstance().newWSDLReader();
        reader.setFeature("javax.wsdl.verbose", false);
        reader.setFeature("javax.wsdl.importDocuments", true);
        return reader.readWSDL(new UnifiedURIResolver(wsdlFile));
    } finally {
        VfsUtils.close(wsdlFile);
    }
}

Solution

  • solution is process xsd into UnifiedURIResolver class (implemenation of URIResolver) and if we get import of xsd we should return null