lmdleon |
<Result> <Status> <Code>0</Code> <Descr /> <Stack /> </Status> <Data> <Analog> <ServiceID>0c3127a9-e881-4037-bdb5-87741771ec37</ServiceID> </Analog> </Data> </Result>
st:=sys.xmltype.extract(resp.doc,'//ServiceID/text()').getStringVal();
Выдает ошибку: Запрещен вызов метода для аргумента NULL SELF |
В sql тот же самый extract отрабатывает нормально.
declare
v_xml xmltype := xmltype('<Result>
<Status>
<Code>0</Code>
<Descr />
<Stack />
</Status>
<Data>
<Analog>
<ServiceID>0c3127a9-e881-4037-bdb5-87741771ec37</ServiceID>
</Analog>
</Data>
</Result>');
v_st varchar2(100);
begin
v_st := sys.xmltype.extract(v_xml,'//ServiceID/text()').getStringVal();
dbms_output.put_line(v_st);
end;
Этот код тоже отрабатывает нормально.
Все проверял на 9.2.0.1.0.
Где присваивается значение resp.doc и какая версия сервера?