- From: Tom Preston <tpreston@amadeusboston.com>
- Date: Wed, 6 Feb 2002 09:53:38 -0500
- To: Sanjaya Kasthuri Arachchi <sanjayakas@hotmail.com>, xmlschema-dev@w3.org
The first time you call parser.parse(aString); where aString is an instance of type String. This String is a LOCATION of an xml file to be parsed. THis works. In the second case you AGAIN call parser.parse(aString); where aString is also an instance of type String. BUT this String is an XML document represented as a String not the LOCATION of the file. The parser.parse(String) method String parameter is supposed to be an xml file LOCATION. It appears that it attempts to resolve the String into a Location by making it a java.net.URL instance. When it tries to construct a java.net.URL with "The above mentioned xml" it will fail with a MalformedURLException. The first way was correct. TOm -----Original Message----- From: Sanjaya Kasthuri Arachchi [mailto:sanjayakas@hotmail.com] Sent: Wednesday, February 06, 2002 8:11 AM To: xmlschema-dev@w3.org Subject: Error in xsd validation.... Hi All, I am trying to validate a xml file against a xsd file. My code is this : DOMParser parser = new DOMParser(); parser.setFeature("http://xml.org/sax/features/validation", true); parser.setFeature("http://apache.org/xml/features/validation/schema", true); ErrorChecker errors = new ErrorChecker(); parser.setErrorHandler(errors); parser.parse("Token.xml"); Document doc = parser.getDocument(); This works fine and it validates the Token.xml file, which is this : <ValidateIdentificationTokenRequest xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="Token.xsd"> <InputATBFlightCoupon> <UnparsedData>BOARDCPN#D8303</UnparsedData> </InputATBFlightCoupon> </ValidateIdentificationTokenRequest> But my problem is, when I input the same xml as a String ; String str = "The above mentioned xml"; parser.parse(str); it throws an exception. java.net.MalformedURLException: no protocol: <ValidateIdentificationTokenRequest xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="/Token.xsd"> <InputATBFlightCoupon><UnparsedData>BOARDCPN#D8303</UnparsedData> </InputATBFlightCoupon></ValidateIdentificationTokenRequest> at java.net.URL.<init>(URL.java:473) at java.net.URL.<init>(URL.java:376) at java.net.URL.<init>(URL.java:330) at org.apache.xerces.impl.XMLEntityManager.startEntity(XMLEntityManager.java:71 9) at org.apache.xerces.impl.XMLEntityManager.startDocumentEntity (XMLEntityManager.java:666) atorg.apache.xerces.impl.XMLDocumentScannerImpl.setInputSource (XMLDocumentScannerImpl.java:251) at org.apache.xerces.parsers.StandardParserConfiguration .setInputSource(StandardParserConfiguration.java:440) at org.apache.xerces.parsers.StandardParserConfiguration.parse (StandardParserConfiguration.java:520) at org.apache.xerces.parsers.XMLParser.parse(XMLParser.java:148) at org.apache.xerces.parsers.DOMParser.parse(DOMParser.java:152) at ssd.XMLTest.main(XMLTest.java:37) Please be kind enough to help me to solve this problem. Thanks in advance. _________________________________________________________________ Send and receive Hotmail on your mobile device: http://mobile.msn.com
Received on Wednesday, 6 February 2002 09:53:33 UTC