-1
XMLデータの一部としてUnicodeとLatin文字を含むXMLデータの解析に問題があります。 入力XMLデータを解析できないというエラーがスローされます。 添付のコードスニペットを見つけて、問題を解決するために必要な作業を行ってください。XMLReader.parse()を使用してラテン文字とユニコード文字を解析できません
これは、我々が
String url = "<?xml version='1.0' encoding='UTF-8'?><candidate-registrations customer-id='197'>
<registration-details method=' '>
<candidate-demographics>
<candidate-details>
<candidate-id-type value='SSN'/>
<candidate-id value='567876456'/>
<first-name value='ยง'/>
<last-name value='mohan'/>
<date-of-birth value='03/03/1980'/>
<email-address value='[email protected]'/>
<school-code>0129</school-code>
</candidate-details>
</candidate-demographics>
</registration-details></candidate-registrations>";
我々のアプリケーションでそれを渡している。これは、我々が
private XMLReader xr;
public SaxMapper()
{
try
{
// Create the XML reader...
xr = XMLReaderFactory.createXMLReader();
}
catch(Exception e)
{
LoggerManager.Log(LogLevelConstants.INFO, className, "SaxMapper", e.getMessage(),e);
}
}
public Object fromXML(String url)
{
try
{
return fromXML(new InputSource(url));
}
catch (Exception e)
{
LoggerManager.Log(LogLevelConstants.INFO, className, "fromXML", e.getMessage(),e);
return null;
}
}
private synchronized Object fromXML(InputSource in) throws Exception
{
// Set the ContentHandler...
xr.setContentHandler(this);
// Parse the file...
xr.parse(in );
return getMappedObject();
}
これは誤りであるを使用しているコードで入力され、私が得ているのは、
Error : <?xml version="1.0" encoding="UTF-8"?><import-results><result>BAD</result><reason-code>100</reason-code><reason-desc>Unable to parse the input XML</reason-desc><error>Unable to parse the input XML</error></import-results>
このエラーは含まれていません。コードでは、書式の改善が必要です。さらに、Javaでは複数行の文字列を使用できないため、XML文字列コードはコンパイルされません。 *そして*あなたのコードでは、非常に必要なクラスの宣言とスコープが省略されています。 – jpmc26
私はjavaの文字列を読みやすくするために複数行をサポートしていないことを知っています。私は文字列をフォーマットしてここに投稿しました – GaneshBhagavath
私はエラーを追加しました。 – GaneshBhagavath