From 0a9511fbc8b476f196c881754a9625f45b013a93 Mon Sep 17 00:00:00 2001 From: inoussa Date: Sun, 21 Sep 2008 16:59:30 +0000 Subject: [PATCH] "schema" node finding for non qualified name git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@567 8e941d3f-bd1b-0410-a28a-d453659cc2b4 --- wst/trunk/ws_helper/ws_helper.lpi | 3 +-- wst/trunk/ws_helper/wsdl_parser.pas | 11 ++++++++++- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/wst/trunk/ws_helper/ws_helper.lpi b/wst/trunk/ws_helper/ws_helper.lpi index 1952dda32..00493f692 100644 --- a/wst/trunk/ws_helper/ws_helper.lpi +++ b/wst/trunk/ws_helper/ws_helper.lpi @@ -124,7 +124,7 @@ - + @@ -141,7 +141,6 @@ - diff --git a/wst/trunk/ws_helper/wsdl_parser.pas b/wst/trunk/ws_helper/wsdl_parser.pas index 90583f8c9..4a61abc11 100644 --- a/wst/trunk/ws_helper/wsdl_parser.pas +++ b/wst/trunk/ws_helper/wsdl_parser.pas @@ -1231,6 +1231,15 @@ begin ParseFilter(CreateQualifiedNameFilterStr(s_schema,FXSShortNames),TDOMNodeRttiExposer) ); FSchemaCursor.Reset(); + if FSchemaCursor.MoveNext() then begin + FSchemaCursor.Reset(); + end else begin + FSchemaCursor := CreateCursorOn( + CreateChildrenCursor(locObj.InnerObject,cetRttiNode), + ParseFilter(Format('%s=%s',[s_NODE_NAME,QuotedStr(s_schema)]),TDOMNodeRttiExposer) + ); + FSchemaCursor.Reset(); + end; end; end; @@ -1248,7 +1257,7 @@ var begin i := FXsdParsers.IndexOf(ANamespace); if ( i < 0 ) then - raise EXsdParserAssertException.CreateFmt('Unable to find the parser of the parser, namespace : "%s".',[ANamespace]); + raise EXsdParserAssertException.CreateFmt('Unable to find the parser, namespace : "%s".',[ANamespace]); Result := (FXsdParsers.Objects[i] as TIntfObjectRef).Intf as IXsdPaser; end;