SetValidation for PL/SQL XmlParser
I am parsing a document which contains a DOCTYPE reference to a DTD file I do not have.
I want to parse the document without validation.
However when I make the calls:
xmlparser.setValidationMode(parser, FALSE);
xmlparser.parseCLOB(parser,xml);
I receive and error that the DTD cannot be found.
Why, if I am not trying to validate is the parser trying to retrieve the DTD.
Thanks for any pointers.
Rick Laird
iBASEt
FUNCTION parse(xml CLOB, baseDir VARCHAR2 :=NULL, Validate BOOLEAN := False) RETURN xmldom.DOMDocument IS
retDoc xmldom.DOMDocument;
parser xmlparser.Parser;
BEGIN
IF xml IS NULL THEN RETURN retdoc;
END IF;
setProxy;
parser := xmlparser.newParser;
IF Not(baseDir is NULL) THEN
xmlparser.setbasedir(parser, basedir);
end if;
xmlparser.setValidationMode(parser, Validate);
xmlparser.parseCLOB(parser,xml);
retDoc := xmlparser.getDocument(parser);
xmlparser.freeParser(parser);
RETURN retDoc;
EXCEPTION
WHEN parse_error THEN
xmlparser.freeParser(parser);
Raise;
RETURN retdoc;
END;
I found the posting from Steven Muench which might help.
Patti
Title : re:DOMParser opens dtd file even when validation mode is NONVALIDATING?
Author : Steven Muench Type : Question
Date : Nov 18, 2001 13:23 PT
An XML Parser must open the DTD even in non-validating mode
because the DTD might have default attribute values defined.
For example, if your DTD has an element named <doit> and this
<doit> element supports an attribute named "mode" that can have
values "immediate" and "deferred", you can specify in the DTD
that the "mode" attribute should default to "immediate".
So, if you try to parse an XML document like:
<?xml version="1.0"?>
<!DOCTYPE commandlist SYSTEM "your.dtd">
<commandlist>
<doit command="zipit"/> <!-- no 'mode' specified -->
</commandlist>
When you process the document in your program, you will see
a "mode" attribute with the default value of "immediate" (even
though it was not specified in the file).
If you do NOT have any default attributes, then you can put
the standalone="yes" in your XML declaration like this:
<?xml version="1.0" standalone="yes"?>
and this gives the parser the hint not to read the DTD.
I am parsing a document which contains a DOCTYPE reference to a DTD file I do not have.
I want to parse the document without validation.
However when I make the calls:
xmlparser.setValidationMode(parser, FALSE);
xmlparser.parseCLOB(parser,xml);
I receive and error that the DTD cannot be found.
Why, if I am not trying to validate is the parser trying to retrieve the DTD.
Thanks for any pointers.
Rick Laird
iBASEt
FUNCTION parse(xml CLOB, baseDir VARCHAR2 :=NULL, Validate BOOLEAN := False) RETURN xmldom.DOMDocument IS
retDoc xmldom.DOMDocument;
parser xmlparser.Parser;
BEGIN
IF xml IS NULL THEN RETURN retdoc;
END IF;
setProxy;
parser := xmlparser.newParser;
IF Not(baseDir is NULL) THEN
xmlparser.setbasedir(parser, basedir);
end if;
xmlparser.setValidationMode(parser, Validate);
xmlparser.parseCLOB(parser,xml);
retDoc := xmlparser.getDocument(parser);
xmlparser.freeParser(parser);
RETURN retDoc;
EXCEPTION
WHEN parse_error THEN
xmlparser.freeParser(parser);
Raise;
RETURN retdoc;
END;
Similar Messages
-
XMLParser for PL/SQL ORA-20100 Problem
I am using XML parser for PL/SQL in Oracle9i Enterprise Edition Release 9.0.1.1.1
When i run the sample xml program, i get error which is as follows. While compiling no errors. But while executing it reports error as given below.
SQL> execute domsample('c:\xml', 'family.xml', 'errors.txt');
begin domsample('c:\xml', 'family.xml', 'errors.txt'); end;
ORA-20100: Error occurred while parsing: No such file or directory
ORA-06512: at "COMMODITYBACKCONNECT.XMLPARSER", line 22
ORA-06512: at "COMMODITYBACKCONNECT.XMLPARSER", line 79
ORA-06512: at "COMMODITYBACKCONNECT.DOMSAMPLE", line 80
ORA-06512: at line 1
What need to be done to rectify the above problem.
when i do the following validation check
SQL>
SQL> select substr(dbms_java.longname(object_name),1,30) as class, status
2 from all_objects
3 where object_type = 'JAVA CLASS'
4 and object_name = dbms_java.shortname('oracle/xml/parser/v2/DOMParser')
5 ;
CLASS STATUS
oracle/xml/parser/v2/DOMParser VALID
oracle/xml/parser/v2/DOMParser VALID
Please advice to how remove the following error:
ORA-20100: Error occurred while parsing: No such file or directoryHi, I have run into the same problem. I think the parser is looking for c:\XML on your sever instead of your local drive. Try creating a dir on the server called \xml and rerunning the script. I don't know whether it will fix your problem, as i am sitting with the same thing, but it is a step in the right direction. Also check your separators. If you are running unix servers use / instead of \
-
I am using XML parser for PL/SQL in Oracle9i Enterprise Edition Release 9.0.1.1.1
When i run the sample xml program, i get error which is as follows. While compiling no errors. But while executing it reports error as given below.
SQL> execute domsample('c:\xml', 'family.xml', 'errors.txt');
begin domsample('c:\xml', 'family.xml', 'errors.txt'); end;
ORA-20100: Error occurred while parsing: No such file or directory
ORA-06512: at "COMMODITYBACKCONNECT.XMLPARSER", line 22
ORA-06512: at "COMMODITYBACKCONNECT.XMLPARSER", line 79
ORA-06512: at "COMMODITYBACKCONNECT.DOMSAMPLE", line 80
ORA-06512: at line 1
What need to be done to rectify the above problem.
when i do the following validation check
SQL>
SQL> select substr(dbms_java.longname(object_name),1,30) as class, status
2 from all_objects
3 where object_type = 'JAVA CLASS'
4 and object_name = dbms_java.shortname('oracle/xml/parser/v2/DOMParser')
5 ;
CLASS STATUS
oracle/xml/parser/v2/DOMParser VALID
oracle/xml/parser/v2/DOMParser VALID
Please advice to how remove the following error:
ORA-20100: Error occurred while parsing: No such file or directoryThis should be that you haven't load the xmlparserv2.jar into the DB schema. You can load the java libs using loadjava command
-
XMLParser for PL/SQL ORA-20100
I am using XML parser for PL/SQL in Oracle9i Enterprise Edition Release 9.0.1.1.1
When i run the sample xml program, i get error which is as follows. While compiling no errors. But while executing it reports error as given below.
SQL> execute domsample('c:\xml', 'family.xml', 'errors.txt');
begin domsample('c:\xml', 'family.xml', 'errors.txt'); end;
ORA-20100: Error occurred while parsing: No such file or directory
ORA-06512: at "COMMODITYBACKCONNECT.XMLPARSER", line 22
ORA-06512: at "COMMODITYBACKCONNECT.XMLPARSER", line 79
ORA-06512: at "COMMODITYBACKCONNECT.DOMSAMPLE", line 80
ORA-06512: at line 1
What need to be done to rectify the above problem.
when i do the following validation check
SQL>
SQL> select substr(dbms_java.longname(object_name),1,30) as class, status
2 from all_objects
3 where object_type = 'JAVA CLASS'
4 and object_name = dbms_java.shortname('oracle/xml/parser/v2/DOMParser')
5 ;
CLASS STATUS
oracle/xml/parser/v2/DOMParser VALID
oracle/xml/parser/v2/DOMParser VALID
Please advice to how remove the following error:
ORA-20100: Error occurred while parsing: No such file or directoryHi, I have run into the same problem. I think the parser is looking for c:\XML on your sever instead of your local drive. Try creating a dir on the server called \xml and rerunning the script. I don't know whether it will fix your problem, as i am sitting with the same thing, but it is a step in the right direction. Also check your separators. If you are running unix servers use / instead of \
-
Using XMLParser for PL/SQL
I am using DBMS_XMLParser in Oracle 10g to parse an XML. The code is as follows:
CREATE OR REPLACE procedure xml_main is
P DBMS_XMLPARSER.Parser;
DOC CLOB;
v_xmldoc DBMS_XMLDOM.DOMDocument;
v_out CLOB;
BEGIN
P := DBMS_XMLPARSER.newParser;
DBMS_XMLPARSER.setValidationMode(p, FALSE);
DOC := '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<com.welligent.Student.BasicStudent.Create>
<ControlAreaSync messageCategory="com.welligent.Student" messageObject="BasicStudent" messageAction="Create" messageRelease="1.0" messagePriority="1" messageType="Sync">
<Sender>
<MessageId>
<SenderAppId>com.openii.SyncRouter</SenderAppId>
<ProducerId>a72af712-90ea-43be-b958-077a87a29bfb</ProducerId>
<MessageSeq>53</MessageSeq>
</MessageId>
<Authentication>
<AuthUserId>Router</AuthUserId>
</Authentication>
</Sender>
<Datetime>
<Year>2001</Year>
<Month>3</Month>
<Day>23</Day>
<Hour>13</Hour>
<Minute>47</Minute>
<Second>30</Second>
<SubSecond>223</SubSecond>
<Timezone>6:00-GMT</Timezone>
</Datetime>
</ControlAreaSync>
<DataArea>
<NewData>
<BasicStudent mealCode="" usBorn="Yes" migrant="No" workAbility="No" ellStatus="">
<StudentNumber>052589F201</StudentNumber>
<ExternalIdNumber>1234567890</ExternalIdNumber>
<StateIdNumber>123456</StateIdNumber>
<Name>
<LastName>Lopez</LastName>
<FirstName>Maria</FirstName>
<MiddleName>S</MiddleName>
</Name>
<Gender>Female</Gender>
<BirthDate>
<Month>1</Month>
<Day>1</Day>
<Year>1995</Year>
</BirthDate>
<Race>Hispanic</Race>
<Ethnicity>Hispanic</Ethnicity>
<PrimaryLanguage>English</PrimaryLanguage>
<HouseholdLanguage>Spanish</HouseholdLanguage>
<Address>
<Street>123 Any Street</Street>
<ApartmentNumber>12-D</ApartmentNumber>
<City>Los Angeles</City>
<County>Los Angeles</County>
<State>CA</State>
<ZipCode>90071</ZipCode>
</Address>
</BasicStudent>
</NewData>
</DataArea>
</com.welligent.Student.BasicStudent.Create>';
DBMS_XMLPARSER.PARSECLOB ( P, DOC );
v_xmldoc := DBMS_XMLPARSER.getDocument(P);
printElementAttributes(v_xmldoc);
exception
when DBMS_XMLDOM.INDEX_SIZE_ERR then
raise_application_error(-20120, 'Index Size error');
when DBMS_XMLDOM.DOMSTRING_SIZE_ERR then
raise_application_error(-20120, 'String Size error');
when DBMS_XMLDOM.HIERARCHY_REQUEST_ERR then
raise_application_error(-20120, 'Hierarchy request error');
when DBMS_XMLDOM.WRONG_DOCUMENT_ERR then
raise_application_error(-20120, 'Wrong doc error');
when DBMS_XMLDOM.INVALID_CHARACTER_ERR then
raise_application_error(-20120, 'Invalid Char error');
when DBMS_XMLDOM.NO_DATA_ALLOWED_ERR then
raise_application_error(-20120, 'Nod data allowed error');
when DBMS_XMLDOM.NO_MODIFICATION_ALLOWED_ERR then
raise_application_error(-20120, 'No mod allowed error');
when DBMS_XMLDOM.NOT_FOUND_ERR then
raise_application_error(-20120, 'Not found error');
when DBMS_XMLDOM.NOT_SUPPORTED_ERR then
raise_application_error(-20120, 'Not supported error');
when DBMS_XMLDOM.INUSE_ATTRIBUTE_ERR then
raise_application_error(-20120, 'In use attr error');
END;
CREATE OR REPLACE procedure printElementAttributes(doc DBMS_XMLDOM.DOMDocument) is
nl DBMS_XMLDOM.DOMNODELIST;
len1 NUMBER;
len2 NUMBER;
n DBMS_XMLDOM.DOMNODE;
e DBMS_XMLDOM.DOMELEMENT;
nnm DBMS_XMLDOM.DOMNAMEDNODEMAP;
attrname VARCHAR2(100);
attrval VARCHAR2(100);
text_value VARCHAR2(100):=NULL;
n_child DBMS_XMLDOM.DOMNODE;
BEGIN
-- get all elements
nl := DBMS_XMLDOM.getElementsByTagName(doc, '*');
len1 := DBMS_XMLDOM.getLength(nl);
-- loop through elements
FOR j in 0..len1-1 LOOP
n := DBMS_XMLDOM.item(nl, j);
e := DBMS_XMLDOM.makeElement(n);
DBMS_OUTPUT.PUT_LINE(DBMS_XMLDOM.getTagName(e) || ':');
-- get all attributes of element
nnm := DBMS_XMLDOM.getAttributes(n);
n_child:=DBMS_XMLDOM.getFirstChild(n);
text_value:=DBMS_XMLDOM.getNodeValue(n_child);
dbms_output.put_line('val='||text_value);
IF (DBMS_XMLDOM.isNull(nnm) = FALSE) THEN
len2 := DBMS_XMLDOM.getLength(nnm);
dbms_output.put_line('length='||len2);
-- loop through attributes
FOR i IN 0..len2-1 LOOP
n := DBMS_XMLDOM.item(nnm, i);
attrname := DBMS_XMLDOM.getNodeName(n);
attrval := DBMS_XMLDOM.getNodeValue(n);
dbms_output.put(' ' || attrname || ' = ' || attrval);
END LOOP;
dbms_output.put_line('');
END IF;
END LOOP;
END printElementAttributes;
While executing the xml_main proc from an anonymous block, I am getting the following error:
ORA-04063: package body "XDB.DBMS_XMLPARSER" has errors
ORA-06508: PL/SQL: could not find program unit being called: "XDB.DBMS_XMLPARSER"
ORA-06512: at "BALB.XML_MAIN", line 9
ORA-06512: at line 2
I've checked that the XDB is installed in my database by running the below query and getting the output
select comp_name, version, status
from dba_registry
where comp_name like '%XML%';
COMP_NAME VERSION STATUS
Oracle XML Database 10.2.0.2.0 VALID
1 row selected.
Please let me know a way out to resolve it?Ramesh,
Have you referred to the samples provided in the 8.1.7 doc section at :
http://technet.oracle.com/docs/products/oracle8i/doc_library/817_doc/appdev.817/a86030/adx24pap.htm
In the above page, the link, "Using XML Parser for PL/SQL Examples in sample/" has sample code on using the
xmlparser, xmldom and xslprocessor packages. These samples are provided as demos with the XDK s/w that
normally gets installed in your ORACLE817_HOME/xdk directory.
Hope that helps.
-Srinivas -
NLS support in xmlparser for pl/sql??
Hi,
I am not able to create a DOMNode with NLS-Text between the tags of the node. I am using the Oracle xml parser for pl/sql. All I need to do is create the node - "<wish>Good Morning</wish>". The value - "Good Morning" needs to come from a variable of type nvarchar2. A call to the function xmldom.createTextNode gives the following compile time error - PLS-00561: character set mismatch on value for parameter 'DATA', which literally means that the "DATA" formal parameter takes in only a varchar2 and not an nvarchar2. I could not find any other function to create a text node, which accepts an nvarchar2 data. Does this mean that the xmlparser for pl/sql does not support NLS? Please help.
Thanks in advance,
Vincent Morris.
Procedure used for creating the node:
create or replace procedure create_mynode is
nls_text nvarchar2(50);
doc xmldom.DOMDocument;
node xmldom.DOMNode;
element xmldom.DOMElement;
text xmldom.DOMText;
text_node xmldom.DOMNode;
dummy xmldom.DOMNode;
begin
/* code for getting a DOMDocument into the variable doc
nls_text:=n'Good Morning';
element:=xmldom.createElement(doc, 'wish');
node:=xmldom.makeNode(element);
text:=xmldom.createTextNode(doc, nls_text); -- ERROR ON THIS LINE
text_node:=xmldom.makeNode(text);
dummy:=xmldom.appendChild(node,text_node);
/* code for printing the tagname and value of the node contained in the variable 'node'
end;declare
doc xmldom.DOMDocument;
nl xmldom.DOMNodeList;
n xmldom.DOMNode;
t xmldom.DOMNode;
val VARCHAR2(30);
begin
doc := xmlparser.getDocument(p);
nl := xmldom.getElementsByTagName(doc, '*');
n := xmldom.item(nl, 1);
t := xmldom.getFirstChild(n);
val := UPPER(xmldom.getNodeValue(t));
end; -
XMLParser for PL/SQL - Error
I am using XML parser for PL/SQL in oracle 8.1.7 DB.
When i run the sample xml program, i get error which is as follows. While compiling no errors. But while executing it reports error as given below.
SQL> exec domsample('/u01/usr/oracle/sso','family.xml','errors.txt');
BEGIN domsample('/u01/usr/oracle/sso','family.xml','errors.txt'); END;
ERROR at line 1:
ORA-29540: class oracle/xml/parser/plsql/XMLParserCover does not exist
ORA-06512: at "PACKMGR.XMLPARSERCOVER", line 0
ORA-06512: at "PACKMGR.XMLPARSER", line 57
ORA-06512: at "PACKMGR.DOMSAMPLE", line 72
ORA-06512: at line 1
What need to be done to rectify the above problem.
when i do the following validation check
SQL> select substr(dbms_java.longname(object_name),1,30) as class, status
2 from all_objects
3 where object_type = 'JAVA CLASS'
4 and object_name = dbms_java.shortname('oracle/xml/parser/v2/DOMParser');
from all_objects
ERROR at line 2:
ORA-29540: class oracle/aurora/rdbms/DbmsJava does not exist
I get the above error. Pls. AdviceThis should be that you haven't load the xmlparserv2.jar into the DB schema. You can load the java libs using loadjava command
-
Installing xmlparser for PL/SQL.
I am installing the newest version of the Oracle xmlparser for
PL/SQL, version 1.0.2.0.0, and I have a question. How can I
install this tool into the database so that all users have access
to the many objects it creates? In affect, I want to do a "public"
installation rather than install it under multiple users.
If this is not possible, then what commands to I need to
execute to give public access to objects like "JAVA CLASS",
etc.
Thanks,
- JaiI too would like to know. I just installed the XML Utilities and the only user who can see all of the code is SYSTEM.
-
XDK for PL/SQL vs XDK for Java
Hi ,
I am trying to find what version of XDK and whether it is for java or PL/SQL. I am confused after what I saw in our environment. Please clarify..
When I run the getReleaseVersion() and do a
select xmlversion from dual,
I get
Oracle XDK Java 9.0.1.1.0A Production
Does this mean we have XDK for Java? not for PL/SQL?
I also see PL/SQL packages for XMLDOM,XMLGEN.XMLPARSER,XSLPROCESSOR,DBMS_XMLQUERY,DBMS_XMLSAVE.
Does this mean I have/not XDK for PL/SQL??
Please clarify.XDK for PL/SQL is built based on XDK for Java. So that's why you got the result. It should also reflect the version you use.
-
XML parsing problems with Oracle XML parser for PL/SQL
I am using the Oracle XML parser for PL/SQL to transform XML into HTML usign XSL. The parser gives me sporadic errors trying to parse various XML documents. For the same XML source, the XMLPARSER will parse without errors one day and the next day will give me errors such as "invalid char in text", "Expected ';'.", or even Java null pointer exceptions.
I have verified that the XML sources are well formed, so I am pretty certain that the problems I am having are bugs in the XMLPARSER.
Is there going to be a XML parser for PL/SQL version 2 that will fix these bugs? If so, when??? If not, is there anything else I could do to fix these problems?
Thanks!You can use the latest version.
-
Hi,
I have to produce and manipulate XML documents in PL/SQL. I have downloaded the XML Parser for PL/SQL from Oracle's web site.
Can anyone please:
1. Point me to some examples illustrating XML DOM manipulation with PL/SQL.
2. Any information about PL/SQL packages used for XML manipulation.
I am using Oracle 8i version 8.1.6
Thanks,
Rossen<BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by Rossen Petkov ([email protected]):
Hi,
I have to produce and manipulate XML documents in PL/SQL. I have downloaded the XML Parser for PL/SQL from Oracle's web site.
Can anyone please:
1. Point me to some examples illustrating XML DOM manipulation with PL/SQL.
2. Any information about PL/SQL packages used for XML manipulation.
I am using Oracle 8i version 8.1.6
Thanks,
Rossen<HR></BLOCKQUOTE>
Hope this will do something
set serveroutput on
create or replace procedure domsample(dir varchar2, inpfile varchar2, errfile varchar2) is
p xmlparser.parser;
doc xmldom.DOMDocument;
-- Print elements
procedure printElements( doc xmldom.DOMDocument) is
nl xmldom.DOMNodeList;
len number;
n xmldom.DOMNode;
t xmldom.DOMNode;
begin
-- get all elements.
nl := xmldom.getElementsByTagName(doc,'*');
len := xmldom.getLength(nl);
-- loop through elements.
for i in 0..len-1 loop
if xmldom.isnull(nl) = FALSE then
n := xmldom.item(nl,i);
IF xmldom.hasChildNodes(n) then
t := xmldom.getFirstChild(n);
dbms_output.put(xmldom.getNodeName(n) | |':');
dbms_output.put_line(xmldom.getNodeValue(t));
end if;
end if;
end loop;
dbms_output.put_line(' ');
end printElements;
-- print the attributes of each element in a document.
procedure printElementAttributes(doc xmldom.DOMDocument) is
nl xmldom.DOMNodelist;
len1 number;
len2 number;
n xmldom.DOMNode;
e xmldom.DOMElement;
nnm xmldom.DOMNamedNodeMap;
attrname varchar2(100);
attrval varchar2(100);
begin
-- get all Elements
nl := xmldom.getElementsByTagName(doc,'*');
len1 := xmldom.getLength(nl);
-- loop through elements.
for j in 0 .. len1 - 1 loop
n := xmldom.item(nl,j);
e := xmldom.makeElement(n);
dbms_output.put_line(xmldom.getTagName(e) | | ':');
-- get all attributes of element
nnm := xmldom.getAttributes(n);
if (xmldom.isNull(nnm) = FALSE) then
len2 := xmldom.getLength(nnm);
-- loop through attributes
for i in 0..len2 -1 loop
n := xmldom.item(nnm,i);
attrname := xmldom.getNodeName(n);
attrval := xmldom.getNodeValue(n);
dbms_output.put(' '| |attrname| |' = '| |attrval);
end loop;
dbms_output.put_line(' ');
end if;
end loop;
end printElementAttributes;
begin
-- new parser.
p := xmlparser.newParser;
-- set some charecterstics.
xmlparser.setValidationMode(p,FALSE);
xmlparser.setErrorLog(p, dir| |'/'| |errfile);
xmlparser.setBaseDir(p,dir);
-- parse input file
xmlparser.parse(p,dir| |'/'| |inpfile);
-- get document
doc := xmlparser.getDocument(p);
-- print document elements.
dbms_output.put_line('The elements are: ');
printElements(doc);
-- print document element attributes
dbms_output.put_line('The attributes of each element are: ');
printElementAttributes(doc);
-- deal with exception
exception
when xmldom.INDEX_SIZE_ERR then
raise_application_error(-20120,'Index Size Error');
when xmldom.DOMSTRING_SIZE_ERR then
raise_application_error(-20120,'String Size Error');
when xmldom.HIERARCHY_REQUEST_ERR then
raise_application_error(-20120,'Hierarchy Request Error');
when xmldom.WRONG_DOCUMENT_ERR then
raise_application_error(-20120,'Worng Document Error');
when xmldom.INVALID_CHARACTER_ERR then
raise_application_error(-20120,'Invalid Character Error');
when xmldom.NO_DATA_ALLOWED_ERR then
raise_application_error(-20120,'No Data Allowed Error ');
when xmldom.NO_MODIFICATION_ALLOWED_ERR then
raise_application_error(-20120,'No Modification Allowed Error');
when xmldom.NOT_FOUND_ERR then
raise_application_error(-20120,'Not Found Error');
when xmldom.NOT_SUPPORTED_ERR then
raise_application_error(-20120,'Not Supported Error');
when xmldom.INUSE_ATTRIBUTE_ERR then
raise_application_error(-20120,'In Use Attribute Error');
end domsample;
show errors;
Cheers
Srianth -
Using XML Parser for PL/SQL in 8.1.7
The XML Parser for PL/SQL is part of 8.1.7,
which is a good thing.
Now my question: What steps do I need to
perfom after installation of 8.1.7 to make
the parser available for my PL/SQL packages,
which call
xmldom.makeNode()
xmldom.appendChild()
xmlparser.newParser()
and other procedures from these packages ?
The schema SYS does not contain the
required packages XMLDOM, XMLPARSER, ...
after installation of 8.1.7.
Do I have to call loadjava and
sqlplus @load.sql extra as in 8.1.5 and
8.1.6 before ?
Of course I'd like to use the natively
compiled XML parser
libjox8_oraclexml_parser_v2.so.
Doesn't the above loadjava override the
installation of this fast parser ?
How can I be safe, that I am using the fast
parser under the PL/SQL cover ?
Tnx for your help
Richard
nullRichard,
That's weird? The packages were installed when I installed 8.1.7. You can just download the latest version of the XDK and reinstall using loadjava and then running the load.sql file to get the packages in. You should use the -f parameter for loadjava to force the new classes to be loaded over the old ones. For code examples and lots of other good tips on using the XDK, check out my new website for everything Oracle and XML at: www.webspedite.com/oracle. -
XDK10g supports XML parsing for PL/SQL?
Hi,
I have a couple of questions here:
1) Does XDK10g support XML parsing for PL/SQL? (More specifically, I need to use xmlDom and xmlParser)
2) Does Oracle 10g come installed with XDK 10g? If not, does it even need to install XDK 10g to use xmlDom and xmlParser?
Thank you all and have a nice day.
Kelvin
Edited by: user9518458 on Oct 30, 2008 1:31 AMWell, if you are talking 10.2, then
"The (Java-based) Oracle XDK PL/SQL packages XMLDOM, XMLPARSER, and XSL_PROCESSOR have been deprecated in favor of the (C-based) Oracle XML DB packages DBMS_XMLDOM, DBMS_XMLPARSER, and DBMX_XSLPROCESSOR. Synonyms have been provided to smooth the migration of legacy applications" (http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14259/whatsnew.htm#CHDCAICE)
Whether that is a default install option or one that requires selecting I can't say, but it is available without needing to additionally use the XDK. So odds are you can do whatever you need in PL/SQL using those DBMS_ packages (or XMLTYPE based variables if the need arises). -
Oracle 8i XML Parser for PL/SQL
Hi,
Using "Building Oracle XML Applications" by O'reilly, I am
trying to get XML working on an Oracle 8i database. I have done the following steps:
1) verify oracle.xml.parser.v2.DOMParser class is running;
select substr(dbms_java.longname(object_name),1,30) as class, status
from all_objects
where object_type = 'JAVA CLASS'
and object_name = dbms_java.shortname('oracle/xml/parser/v2/DOMParser');
CLASS STATUS
oracle/xml/parser/v2/DOMParser VALID
OK
2) Check for Oracle XML Parser for PL/SQL is installed:
DESCRIBE xmlparser
ERROR:
ORA-04043: object xmlparser does not exist
So apparently i need to download the Oracle XML Parser for PL/SQL.
I cannot locate this download on the oracle site for version 8i (8.1.7.4 specifically).
Any helpers out there?You can use the latest version.
-
Errors installing XML Parser for PL/SQL
I tried to install the parser and get the following errors :
D:\xml\lib\java>loadjava -user user/pwd -r -v xmlparserv2.jar
initialization complete
loading : oracle/xml/parser/v2/XSLResultElement
creating : oracle/xml/parser/v2/XSLResultElement
Error while retrieving errors for oracle/xml/parser/v2/XSLResultElement
ORA-00904: invalid column name
loading : oracle/xml/parser/v2/XSLCopy
creating : oracle/xml/parser/v2/XSLCopy
Error while retrieving errors for oracle/xml/parser/v2/XSLCopy
ORA-00904: invalid column name
loading : oracle/xml/parser/v2/XMLByteReader
creating : oracle/xml/parser/v2/XMLByteReader
Error while retrieving errors for oracle/xml/parser/v2/XMLByteReader
ORA-00904: invalid column name
We have Oracle 8.1.5.0.0 running with JRE 1.1.8 installed.
I updated loadjava.bat to call JRE 1.1.8 instead of JRE 1.1.7.
Can't afford an upgrade to 8.1.6
Any help appreciatedGeoff Hicks (guest) wrote:
: Problems being experienced trying to install the XML parser for
: PL/SQL (zip file plxmlparser_v1_0_0_1_tar.gz).
: We are on Oracle8i (8.1.5.0.0) (with JServer).
: On installing the Oracle XML parser for PL/SQL the following
: errors appear having run the loadjava command line tool for
: xmlparser.jar:-
: loading : META-INF/MANIFEST.MF
: creating : META-INF/MANIFEST.MF
: Error while creating resource META-INF/MANIFEST.MF
: ORA-29547: Java system class not available:
: oracle/aurora/rdbms/Compiler
: loading : xmlparser_1.0.1.4_production
: creating : xmlparser_1.0.1.4_production
: Error while creating resource xmlparser_1.0.1.4_production
: ORA-29547: Java system class not available:
: oracle/aurora/rdbms/Compiler
: Lots of the following resolver errors are returned:-
: resolver :
: Error while resolving class org/w3c/dom/html/HTMLDivElement
: ORA-00904: invalid column name
It looks like you have not initialized JServer in your 8.1.5
database. This needs to be done first.
Oracle XML Team
http://technet.oracle.com
Oracle Technology Network
null
Maybe you are looking for
-
Error while Invoking SQLPLUS from Command Prompt
Hi All, I am trying to Connect to Oracle through sqlplus from command prompt of windows and getting this Error: C:\Documents and Settings>sqlplus SQL*Plus: Release 10.2.0.1.0 - Production on Thu Dec 28 10:08:43 2006 Copyright (c) 1982, 2005, Oracle.
-
Can no longer connect to internet via airport
My roommate and I have wireless internet. I used it all last semester with no problems. Sometime in December, I was unable to access the internet (Firefox, Safari, tried both..) here in my apartment, even though Internet Connection shows a full signa
-
JBO-30019: An unavailable cookie state is detected while attempting to use
Dear All, We are using WLS-10.3.2 and one of the application module is deployed in "psMS6" managed server which is in seperate machine and started remotely. This configuration is in Production environment. We are getting Stuck threads in psMS6 manage
-
Hi, I installed TREX7.0 newly into Netweavwer Portals. Can any one provide me any good link to know How To use TREX in Netweaver Portals. Regds Phanikumar
-
Multiple SAP R3 Source System in BI
Dear Gurus, Here's my scenario, I've SAP ECC Development Source System connected to my SAP BI Development Server system. Now my Question is , 1.We also have SAP ECC IDES system client 800 and therefore would like to connect this SAP ECC IDES system