这是我的代码:
path = wsdlPath;
SAXParserFactory saxfac = SAXParserFactory.newInstance();
saxfac.setNamespaceAware(true);
saxfac.setXIncludeAware(true);
saxfac.setValidating(false);
SAXParser saxParser = saxfac.newSAXParser();
saxParser.parse(wsdlPath, this);
设置后setNamespaceAware=true
,我无法获取方法xmlns:XXX
参数中的属性。attributes
public void startElement(String uri, String localName, String qName, Attributes attributes)
对于以下节点:
<definitions name="Service1"
targetNamespace="http://www.test.com/service"
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"
xmlns:tns="http://www.test.com/">
我只是得到name
和targetNamespace
属性。xmlns
, xmlns:wsdl
, xmlns:mime
,xmlns:http
和xmlns:tns
在attributes
参数中。但它们不可访问。
有没有办法使用setNamespaceAware=true
和获取节点的所有属性?